{"id":3311,"name":"huggingface-hub","ecosystem":"pip","repository_url":"https://github.com/huggingface/huggingface_hub","issues_count":1369,"created_at":"2025-06-06T16:30:10.548Z","updated_at":"2025-06-06T16:30:10.548Z","purl":"pkg:pypi/huggingface-hub","metadata":{"id":334160,"name":"huggingface-hub","ecosystem":"pypi","description":"Client library to download and publish models, datasets and other repos on the huggingface.co hub","homepage":"https://github.com/huggingface/huggingface_hub","licenses":"Apache","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/huggingface/huggingface_hub","keywords_array":["model-hub","machine-learning","models","natural-language-processing","deep-learning","pytorch","pretrained-models"],"namespace":null,"versions_count":180,"first_release_published_at":"2020-12-23T09:22:13.000Z","latest_release_published_at":"2025-06-03T09:59:44.000Z","latest_release_number":"0.32.4","last_synced_at":"2025-06-05T22:01:28.860Z","created_at":"2022-04-06T12:39:35.476Z","updated_at":"2025-06-05T22:01:28.860Z","registry_url":"https://pypi.org/project/huggingface-hub/","install_command":"pip install huggingface-hub --index-url https://pypi.org/simple","documentation_url":"https://huggingface-hub.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":["Intended Audience :: Developers","Intended Audience :: Education","Intended Audience :: Science/Research","License :: OSI Approved :: Apache Software License","Operating System :: OS Independent","Programming Language :: Python :: 3","Programming Language :: Python :: 3 :: Only","Programming Language :: Python :: 3.10","Programming Language :: Python :: 3.11","Programming Language :: Python :: 3.12","Programming Language :: Python :: 3.13","Programming Language :: Python :: 3.8","Programming Language :: Python :: 3.9","Topic :: Scientific/Engineering :: Artificial Intelligence"],"normalized_name":"huggingface-hub"},"repo_metadata":{"id":37080640,"uuid":"323591830","full_name":"huggingface/huggingface_hub","owner":"huggingface","description":"The official Python client for the Huggingface Hub.","archived":false,"fork":false,"pushed_at":"2024-04-11T12:00:41.000Z","size":17913,"stargazers_count":1641,"open_issues_count":164,"forks_count":420,"subscribers_count":58,"default_branch":"main","last_synced_at":"2024-04-11T12:10:46.294Z","etag":null,"topics":["deep-learning","hacktoberfest","machine-learning","model-hub","models","natural-language-processing","pretrained-models","pytorch"],"latest_commit_sha":null,"homepage":"https://huggingface.co/docs/huggingface_hub","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/huggingface.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2020-12-22T10:20:28.000Z","updated_at":"2024-07-29T13:40:13.959Z","dependencies_parsed_at":"2023-09-23T14:31:06.309Z","dependency_job_id":"c38d1b19-c81d-4cfd-859c-64c9e2fee157","html_url":"https://github.com/huggingface/huggingface_hub","commit_stats":{"total_commits":959,"total_committers":101,"mean_commits":9.495049504950495,"dds":0.7977059436913452,"last_synced_commit":"66c3ff14e763f08912f739892da96546a75e77d9"},"previous_names":[],"tags_count":122,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/huggingface","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":215225138,"owners_count":15847299,"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":"huggingface","name":"Hugging Face","uuid":"25720743","kind":"organization","description":"The AI community building the future.","email":null,"website":"https://huggingface.co/","location":"NYC + Paris","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/25720743?v=4","repositories_count":123,"last_synced_at":"2023-04-09T14:51:31.532Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/huggingface","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-02T16:28:23.192Z","updated_at":"2023-04-09T14:51:32.411Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/huggingface","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/huggingface/repositories"},"tags":[{"name":"v0.24.3","sha":"071503f3d2144f91d07c80596d24eb9f63e90698","kind":"tag","published_at":"2024-07-29T12:21:51.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.24.3","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.24.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.24.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.24.3/manifests"},{"name":"v0.24.2","sha":"09fc1d404c60a62c5bb549f061d322958502d025","kind":"tag","published_at":"2024-07-24T14:22:07.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.24.2","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.24.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.24.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.24.2/manifests"},{"name":"v0.24.1","sha":"1dd68a967a642f37782be0efe247297f469347e2","kind":"tag","published_at":"2024-07-23T14:40:18.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.24.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.24.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.24.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.24.1/manifests"},{"name":"v0.24.0","sha":"44b6e0f12a243f9be98f3d419b17a2542d0707cc","kind":"tag","published_at":"2024-07-18T12:20:08.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.24.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.24.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.24.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.24.0/manifests"},{"name":"v0.24.0.rc0","sha":"d8e92aaafa7f0a45692403893a584cd2a2709fed","kind":"tag","published_at":"2024-07-17T12:05:55.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.24.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.24.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.24.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.24.0.rc0/manifests"},{"name":"v0.23.5","sha":"ac90bd432107f5582b22b17dd4a3caf546cdf944","kind":"tag","published_at":"2024-07-16T12:11:54.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.23.5","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.23.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.23.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.23.5/manifests"},{"name":"v0.23.4","sha":"4c7aa33bac0b4fb59796e76fcc9cd7f5ff0fd426","kind":"tag","published_at":"2024-06-14T14:16:33.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.23.4","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.23.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.23.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.23.4/manifests"},{"name":"v0.23.3","sha":"83efe51bae6b5c9bdb4c236de68e078bbc226180","kind":"tag","published_at":"2024-06-05T12:45:40.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.23.3","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.23.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.23.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.23.3/manifests"},{"name":"v0.23.2","sha":"f3b9c67a683974ca62a8aed1e6499811d51a010a","kind":"tag","published_at":"2024-05-27T08:29:51.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.23.2","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.23.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.23.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.23.2/manifests"},{"name":"v0.23.1","sha":"12b34d7a218421ed68f0c75ae749e6db655b55e1","kind":"tag","published_at":"2024-05-21T16:18:01.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.23.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.23.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.23.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.23.1/manifests"},{"name":"v0.23.0","sha":"5737175baae77138b09d16f5bcfeff3558c00549","kind":"tag","published_at":"2024-05-02T12:46:11.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.23.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.23.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.23.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.23.0/manifests"},{"name":"v0.23.0.rc1","sha":"4455c05f3656b59313dfc50a01c161571f1bad21","kind":"tag","published_at":"2024-04-30T15:31:30.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.23.0.rc1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.23.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.23.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.23.0.rc1/manifests"},{"name":"v0.23.0.rc0","sha":"1e8e640bf46dca5a284eac92ed802a9cf26f9c9d","kind":"tag","published_at":"2024-04-30T13:08:21.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.23.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.23.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.23.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.23.0.rc0/manifests"},{"name":"v0.22.2","sha":"06f48e6aa95c30167928be586dc0472ad50ae2bb","kind":"tag","published_at":"2024-03-29T11:57:57.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.22.2","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.22.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.22.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.22.2/manifests"},{"name":"v0.22.1","sha":"4ecdbee0433e65e8ae66996b88bccbfe1ffa6f3d","kind":"tag","published_at":"2024-03-26T13:40:04.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.22.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.22.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.22.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.22.1/manifests"},{"name":"v0.22.0","sha":"31261dbd07ffacb84809fa60157292ef9353fb89","kind":"tag","published_at":"2024-03-25T13:59:22.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.22.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.22.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.22.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.22.0/manifests"},{"name":"v0.22.0.rc1","sha":"20d84915c35a541462dd416a25062bc2b2ad683d","kind":"tag","published_at":"2024-03-25T13:38:21.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.22.0.rc1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.22.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.22.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.22.0.rc1/manifests"},{"name":"v0.22.0.rc0","sha":"bffdaac5e7bb60c8a84ff194b8ef8cff4253d078","kind":"tag","published_at":"2024-03-21T14:39:56.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.22.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.22.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.22.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.22.0.rc0/manifests"},{"name":"v0.21.4","sha":"8a3cd10490a2ed366eb53764214345afe2b7a360","kind":"tag","published_at":"2024-03-06T12:11:40.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.21.4","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.21.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.21.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.21.4/manifests"},{"name":"v0.21.3","sha":"0859b411c39f89635fc7fd4c48d8409b72519ca0","kind":"tag","published_at":"2024-02-29T08:21:20.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.21.3","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.21.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.21.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.21.3/manifests"},{"name":"v0.21.2","sha":"fd19b32f28217e2cee8d11b358f70dfda7ae3fa8","kind":"tag","published_at":"2024-02-28T15:44:46.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.21.2","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.21.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.21.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.21.2/manifests"},{"name":"v0.21.1","sha":"a2fd8611e73dbf47003a7e00faa692e2efe4b302","kind":"tag","published_at":"2024-02-27T14:12:52.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.21.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.21.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.21.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.21.1/manifests"},{"name":"v0.21.0","sha":"5dcd4a3fe861e5e56611dea436f78c8581796874","kind":"tag","published_at":"2024-02-27T10:50:24.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.21.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.21.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.21.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.21.0/manifests"},{"name":"v0.21.0.rc0","sha":"590c0ac14e39c695b332ad0d6d1b3aadd8c976e5","kind":"tag","published_at":"2024-02-27T09:58:15.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.21.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.21.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.21.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.21.0.rc0/manifests"},{"name":"v0.20.3","sha":"2cff405655a58e91e68d2486a3d699e25fadc65b","kind":"tag","published_at":"2024-01-22T08:52:57.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.20.3","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.20.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.20.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.20.3/manifests"},{"name":"v0.20.2","sha":"0ed5a26dde1aced253cb68a2f8d573adcbdfb1b6","kind":"tag","published_at":"2024-01-05T10:47:32.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.20.2","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.20.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.20.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.20.2/manifests"},{"name":"v0.20.1","sha":"9c90f477150e55d5d12f993708404e9bf8e47521","kind":"tag","published_at":"2023-12-20T11:44:21.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.20.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.20.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.20.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.20.1/manifests"},{"name":"v0.20.0","sha":"584b5c9c76a9366a15cc7c6afdd39d5a7d78c3ce","kind":"tag","published_at":"2023-12-20T09:37:09.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.20.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.20.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.20.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.20.0/manifests"},{"name":"v0.20.0.rc1.1","sha":"1199f1734141b0400d50ae1e3e13da637ae49b62","kind":"tag","published_at":"2023-12-19T14:26:30.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.20.0.rc1.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.20.0.rc1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.20.0.rc1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.20.0.rc1.1/manifests"},{"name":"v0.20.0.rc1","sha":"6e369c0f3a02d29ccae57b6376292ab4fa63296e","kind":"tag","published_at":"2023-12-19T14:10:58.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.20.0.rc1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.20.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.20.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.20.0.rc1/manifests"},{"name":"v0.20.0.rc0","sha":"d3b146bba952a5e5d5f675672fdbc8a6f291f1e1","kind":"tag","published_at":"2023-12-19T13:46:17.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.20.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.20.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.20.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.20.0.rc0/manifests"},{"name":"v0.19.4","sha":"a0ca2baf1b1346018b85cc151a04063ec20fc2aa","kind":"tag","published_at":"2023-11-16T16:16:18.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.19.4","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.19.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.19.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.19.4/manifests"},{"name":"v0.19.3","sha":"8840a8ead172cd78b54a0f63727c15b4d5fed247","kind":"tag","published_at":"2023-11-15T14:53:34.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.19.3","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.19.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.19.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.19.3/manifests"},{"name":"v0.19.2","sha":"fa814949f48f4464f82f236b1068af390365c129","kind":"tag","published_at":"2023-11-15T09:01:52.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.19.2","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.19.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.19.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.19.2/manifests"},{"name":"v0.19.1","sha":"29bdc65fa08858f3e968585d5453c80b50f5d3ab","kind":"tag","published_at":"2023-11-13T16:01:56.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.19.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.19.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.19.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.19.1/manifests"},{"name":"v0.19.0","sha":"64c6dc900ebd7c5f88b44f41fb8b86acf10aa259","kind":"tag","published_at":"2023-11-08T13:25:12.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.19.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.19.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.19.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.19.0/manifests"},{"name":"v0.19.0.rc0","sha":"a89d2b6c279305abb1bfcf898bad08ef9557a3fe","kind":"tag","published_at":"2023-11-06T17:19:36.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.19.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.19.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.19.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.19.0.rc0/manifests"},{"name":"v0.18.0","sha":"f60fdbded0409c33c64c2b76bbefcb8642966719","kind":"tag","published_at":"2023-10-10T11:51:04.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.18.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.18.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.18.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.18.0/manifests"},{"name":"v0.18.0.rc0","sha":"3ae8d53cd0bd2be11ba531674e01186ed5eee2ef","kind":"tag","published_at":"2023-10-06T11:51:13.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.18.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.18.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.18.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.18.0.rc0/manifests"},{"name":"v0.17.3","sha":"3680414f0285903ba12eaed68c1d62931559017f","kind":"tag","published_at":"2023-09-26T08:22:22.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.17.3","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.17.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.17.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.17.3/manifests"},{"name":"v0.17.2","sha":"2d1212b26bb149cf786fbed10df3e48b12707954","kind":"tag","published_at":"2023-09-18T13:56:15.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.17.2","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.17.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.17.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.17.2/manifests"},{"name":"v0.17.1","sha":"2d200847dba0adf2a3a1345fc971bba716e215d5","kind":"tag","published_at":"2023-09-11T15:59:57.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.17.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.17.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.17.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.17.1/manifests"},{"name":"v0.17.0","sha":"7d82cd946b29a8e677d39c650c3bffadba3af925","kind":"tag","published_at":"2023-09-11T12:56:56.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.17.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.17.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.17.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.17.0/manifests"},{"name":"v0.17.0.rc0","sha":"7bdec812a5d8a94c5a2b64b013a5dd75ffbaba76","kind":"tag","published_at":"2023-09-08T14:10:33.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.17.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.17.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.17.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.17.0.rc0/manifests"},{"name":"v0.16.4","sha":"11cf5cc775405b93d17ef367e9199777af2c306b","kind":"tag","published_at":"2023-07-07T14:33:24.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.16.4","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.16.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.16.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.16.4/manifests"},{"name":"v0.16.3","sha":"7981f7b2535238efdb68d3ef002c11ec9b67241b","kind":"tag","published_at":"2023-07-07T07:31:39.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.16.3","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.16.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.16.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.16.3/manifests"},{"name":"v0.16.2","sha":"95dcdd5ea1813d64cb10de1d05563874dc0fabdd","kind":"tag","published_at":"2023-07-05T10:39:40.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.16.2","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.16.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.16.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.16.2/manifests"},{"name":"v0.16.1","sha":"792ff68f5659139bf8d08264b20a3160267a5a8a","kind":"tag","published_at":"2023-07-05T09:52:13.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.16.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.16.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.16.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.16.1/manifests"},{"name":"v0.16.0","sha":"8613733d01f5413b3e3f9e20d2bb989465c564d4","kind":"tag","published_at":"2023-07-05T09:50:10.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.16.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.16.0/manifests"},{"name":"v0.16.0.rc0","sha":"8613733d01f5413b3e3f9e20d2bb989465c564d4","kind":"tag","published_at":"2023-07-04T14:25:58.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.16.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.16.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.16.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.16.0.rc0/manifests"},{"name":"v0.15.1","sha":"2c598c484687d586a0ad358301364974912e0262","kind":"tag","published_at":"2023-06-01T15:00:34.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.15.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.15.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.15.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.15.1/manifests"},{"name":"v0.15.0","sha":"e8c3d2c3b2cb4becf81ee9a77e8cde0bf42163cb","kind":"tag","published_at":"2023-06-01T13:58:18.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.15.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.15.0/manifests"},{"name":"v0.15.0.rc0","sha":"a9380480f420d27c586b323dfa4451b316fc8ace","kind":"tag","published_at":"2023-06-01T09:48:48.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.15.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.15.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.15.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.15.0.rc0/manifests"},{"name":"v0.14.1","sha":"bf2b9ca92074cfd1252095dba5391b13be733e5d","kind":"tag","published_at":"2023-04-25T14:35:13.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.14.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.14.1/manifests"},{"name":"v0.14.0","sha":"e35bb80cc634b66b2f3ab8715b462bfc7f3ab678","kind":"tag","published_at":"2023-04-24T12:38:42.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.14.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.14.0/manifests"},{"name":"v0.14.0.rc1","sha":"be7192b0192f9c5df0c19a88363f3a9d5d642af9","kind":"tag","published_at":"2023-04-20T12:20:53.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.14.0.rc1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.14.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.14.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.14.0.rc1/manifests"},{"name":"v0.14.0.rc0","sha":"d4ea3efa316c8d40b5ce6aa31dea849abe5ba084","kind":"tag","published_at":"2023-04-18T19:26:54.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.14.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.14.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.14.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.14.0.rc0/manifests"},{"name":"v0.13.4","sha":"b33e7a360b4acd47f63088a89d0ca9fc6582d941","kind":"tag","published_at":"2023-04-06T14:49:03.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.13.4","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.13.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.13.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.13.4/manifests"},{"name":"v0.13.3","sha":"58d8242b847b63a0f493137e0f0331aa8b1835f9","kind":"tag","published_at":"2023-03-20T12:18:59.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.13.3","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.13.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.13.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.13.3/manifests"},{"name":"v0.13.2","sha":"4bd3dddd2b4293cf1e65d3de001f137629852a3e","kind":"tag","published_at":"2023-03-13T17:43:33.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.13.2","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.13.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.13.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.13.2/manifests"},{"name":"v0.13.1","sha":"fbc4ccf4dc8ae8850eed5f67fa7bc12e231b7acd","kind":"tag","published_at":"2023-03-09T14:20:22.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.13.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.13.1/manifests"},{"name":"v0.13.0","sha":"60df27b94101eda70a68b1c8c8fa7d5909608cbc","kind":"tag","published_at":"2023-03-08T14:37:44.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.13.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.13.0/manifests"},{"name":"v0.13.0.rc1","sha":"7ba478c18b2237fd814350701a57ad8926eaac6b","kind":"tag","published_at":"2023-03-08T11:39:17.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.13.0.rc1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.13.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.13.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.13.0.rc1/manifests"},{"name":"v0.13.0.rc0","sha":"eb9e79e85c041ae950365f1b6e51049dcc8fcba5","kind":"tag","published_at":"2023-03-08T08:49:14.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.13.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.13.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.13.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.13.0.rc0/manifests"},{"name":"v0.12.1","sha":"39b8a49448a3416705bf2e0be9eb28eb16fca69a","kind":"tag","published_at":"2023-02-17T08:48:00.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.12.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.12.1/manifests"},{"name":"v0.12.0","sha":"e8f067642f2f9a0f03fdc1ebf349ab37956b7f2f","kind":"tag","published_at":"2023-01-25T12:23:22.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.12.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.12.0/manifests"},{"name":"v0.12.0.rc0","sha":"1f0f925599372b5228626a6ef0b1affee9ebaa51","kind":"commit","published_at":"2023-01-20T09:15:04.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.12.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.12.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.12.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.12.0.rc0/manifests"},{"name":"v0.11.1","sha":"cc1b54763e4d958d5a25cbf2b4ad05622a98e35d","kind":"commit","published_at":"2022-11-28T10:36:51.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.11.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.11.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.11.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.11.1/manifests"},{"name":"v0.11.0","sha":"fb9f63793d69316d0957772e962ac6346da7f167","kind":"commit","published_at":"2022-11-16T14:06:03.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.11.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.11.0/manifests"},{"name":"v0.11.0.rc1","sha":"20b4bfb92e418dc783e5c912dffb4d9a11cb072c","kind":"commit","published_at":"2022-11-15T10:49:06.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.11.0.rc1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.11.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.11.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.11.0.rc1/manifests"},{"name":"v0.11.0.rc0","sha":"348394b3f7c5759a5c8992f67c0f51e0bd88b29c","kind":"tag","published_at":"2022-11-14T11:50:51.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.11.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.11.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.11.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.11.0.rc0/manifests"},{"name":"v0.10.1","sha":"c87d402de876aa3abf7413bc18b42fab1694ab39","kind":"tag","published_at":"2022-10-11T07:44:37.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.10.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.10.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.10.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.10.1/manifests"},{"name":"v0.10.0","sha":"583d9f7d070f5cd04c19c350a0a902eaa4a43cee","kind":"tag","published_at":"2022-09-28T07:11:50.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.10.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.10.0/manifests"},{"name":"v0.10.0.rc3","sha":"b66a29bfdd8f3fc8bb9d4bbcdf3a1f11d7201ff5","kind":"tag","published_at":"2022-09-27T14:15:22.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.10.0.rc3","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.10.0.rc3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.10.0.rc3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.10.0.rc3/manifests"},{"name":"v0.10.0.rc2","sha":"dbc6413eade6f8358ef988a2a41468f039aa62fa","kind":"tag","published_at":"2022-09-27T14:12:05.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.10.0.rc2","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.10.0.rc2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.10.0.rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.10.0.rc2/manifests"},{"name":"v0.10.0.rc1","sha":"e01c2a9565ae64913870037bb53add3c224f6d34","kind":"tag","published_at":"2022-09-27T07:09:50.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.10.0.rc1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.10.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.10.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.10.0.rc1/manifests"},{"name":"v0.10.0.rc0","sha":"6e6333f214f938b1f3abf7ad8582b70e1def41a5","kind":"tag","published_at":"2022-09-26T10:09:03.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.10.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.10.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.10.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.10.0.rc0/manifests"},{"name":"v0.9.1","sha":"7aadc3243d9478a48e17f568d8d4950cafd11ca2","kind":"commit","published_at":"2022-08-25T15:36:05.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.9.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.9.1/manifests"},{"name":"v0.9.0","sha":"13da627e3961fe02b9dcbfaa8d8ff33221488dff","kind":"commit","published_at":"2022-08-23T12:14:58.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.9.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.9.0/manifests"},{"name":"v0.9.0.rc3","sha":"4ce54ecad854e6ee817a6dd1d3b8cd04c27b9422","kind":"tag","published_at":"2022-08-23T07:14:31.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.9.0.rc3","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.9.0.rc3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.9.0.rc3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.9.0.rc3/manifests"},{"name":"v0.9.0.rc2","sha":"0d0a766b84061bffc11fcd46e37f1bae2402a4ae","kind":"tag","published_at":"2022-08-18T12:16:38.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.9.0.rc2","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.9.0.rc2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.9.0.rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.9.0.rc2/manifests"},{"name":"v0.9.0.rc1","sha":"7d7cce85db16f5fc6cac3aedb46f7831e885da28","kind":"tag","published_at":"2022-08-18T12:12:37.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.9.0.rc1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.9.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.9.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.9.0.rc1/manifests"},{"name":"v0.9.0.rc0","sha":"16f8c7ba048804ac6f2ecc1452ccd5916fae6764","kind":"tag","published_at":"2022-08-18T10:13:44.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.9.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.9.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.9.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.9.0.rc0/manifests"},{"name":"v0.8.1","sha":"1da01612fee317033461fd4067d379a8e49bb250","kind":"tag","published_at":"2022-06-21T15:20:31.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.8.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.8.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.8.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.8.1/manifests"},{"name":"v0.8.04.rc4","sha":"6530173d8004e2a2f7adbc7c1d9e91f1ccf312ad","kind":"tag","published_at":"2022-06-20T10:06:39.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.8.04.rc4","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.8.04.rc4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.8.04.rc4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.8.04.rc4/manifests"},{"name":"v0.8.0.rc3","sha":"8e0566b32904c4adde1fefb028f9b920de723074","kind":"tag","published_at":"2022-06-17T15:26:08.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.8.0.rc3","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.8.0.rc3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.8.0.rc3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.8.0.rc3/manifests"},{"name":"v0.8.0.rc2","sha":"3ef413abf99a25a32676d83ea7ca2217f156e6d5","kind":"tag","published_at":"2022-06-16T18:11:41.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.8.0.rc2","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.8.0.rc2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.8.0.rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.8.0.rc2/manifests"},{"name":"v0.8.0.rc1","sha":"1544ef52f2556e430a36aff67a8fb049870be7a2","kind":"tag","published_at":"2022-06-16T15:15:01.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.8.0.rc1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.8.0.rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.8.0.rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.8.0.rc1/manifests"},{"name":"v0.8.0.rc0","sha":"f21aa5a02f0181e1e050ac50b0ae25d89d64297a","kind":"tag","published_at":"2022-06-15T14:40:20.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.8.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.8.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.8.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.8.0.rc0/manifests"},{"name":"v0.7.0","sha":"3491bf4a8de6c282da8f0c5652f7ed4dc9ec1b7e","kind":"tag","published_at":"2022-05-24T23:42:18.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.7.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.7.0/manifests"},{"name":"v0.7.0.rc0","sha":"ff749a8365fc3325150f5976689be5f952204dc5","kind":"tag","published_at":"2022-05-24T14:03:17.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.7.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.7.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.7.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.7.0.rc0/manifests"},{"name":"v0.6.0","sha":"a8b6f14cd21cf3da223788cbe6751c82df482197","kind":"tag","published_at":"2022-05-11T18:10:46.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.6.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.6.0/manifests"},{"name":"v0.6.0.rc0","sha":"26e55c0cb1d9bf76a297da5c13257769319f0cd6","kind":"tag","published_at":"2022-05-09T18:43:04.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.6.0.rc0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.6.0.rc0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.6.0.rc0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.6.0.rc0/manifests"},{"name":"v0.5.1","sha":"f81a0e9a0c927eac8d658f289b543794cef5c3b5","kind":"tag","published_at":"2022-04-06T12:18:37.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.5.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.5.1/manifests"},{"name":"v0.5.0","sha":"2f65b7015bd2f7c38ff4f365c67fb27cd8258dcb","kind":"tag","published_at":"2022-04-05T17:30:31.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.5.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.5.0/manifests"},{"name":"v0.4.0","sha":"735b82e29e60cd43ccef42b1177646b51a9ca049","kind":"tag","published_at":"2022-01-11T10:49:37.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.4.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.4.0/manifests"},{"name":"v0.2.1","sha":"d4b2da8d20c5792de20ff674335712efd33df989","kind":"tag","published_at":"2021-12-03T08:02:06.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.2.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"c1ccbeeed6542f9ae7656293a248507807e671f7","kind":"tag","published_at":"2021-12-01T17:37:33.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.2.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.2.0/manifests"},{"name":"v0.1.2","sha":"f31030e55ed6be66b3ce069aa6ce7e94790af053","kind":"tag","published_at":"2021-11-08T19:01:24.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.1.2","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.1.2/manifests"},{"name":"v0.1.1","sha":"5eb5bfc8ae0cdabb63f798eae6c15c5c425c08bd","kind":"tag","published_at":"2021-11-05T18:36:25.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.1.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.1.1/manifests"},{"name":"v0.1.0","sha":"162eeca1bcc7a1ef65f616af7d7600bd801c34ab","kind":"commit","published_at":"2021-11-02T16:03:30.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.1.0","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.1.0/manifests"},{"name":"v0.0.19","sha":"c7373dec8774d4066071a9ad217939b06c90f75c","kind":"commit","published_at":"2021-10-06T15:59:41.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.19","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.19","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.19","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.19/manifests"},{"name":"v0.0.18","sha":"30dbd3110ded6cd2932eab47e0ea6bfaeba91a0a","kind":"tag","published_at":"2021-10-04T20:51:07.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.18","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.18","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.18","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.18/manifests"},{"name":"v0.0.17","sha":"259a4cede1525d320a8d7cc6e759fc176b4a98f3","kind":"commit","published_at":"2021-09-14T00:06:55.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.17","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.17","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.17","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.17/manifests"},{"name":"v0.0.16","sha":"6402d1005795163bb157463f4d41d63e584afa34","kind":"commit","published_at":"2021-08-27T12:58:39.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.16","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.16","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.16/manifests"},{"name":"v0.0.15","sha":"aa5a0c3b1dd06b6a851b79f4797388fc0ac7f8e7","kind":"tag","published_at":"2021-07-28T12:26:02.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.15","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.15","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.15","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.15/manifests"},{"name":"v0.0.14","sha":"93b136f755c327e33c1e5e299521b704d8e388d8","kind":"commit","published_at":"2021-07-16T17:27:53.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.14","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.14","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.14","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.14/manifests"},{"name":"v0.0.13","sha":"7f12f290a3244bd8afe5d8c3a3fe5b60619fdd22","kind":"tag","published_at":"2021-06-28T12:49:27.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.13","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.13","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.13","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.13/manifests"},{"name":"v0.0.12","sha":"31e8d5e84fc0c48db82afc97c2cd64a2229c9a31","kind":"tag","published_at":"2021-06-23T16:23:22.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.12","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.12","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.12","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.12/manifests"},{"name":"v0.0.11","sha":"442207315a32818c28c14ee6c590a69a458b93a9","kind":"tag","published_at":"2021-06-23T10:34:17.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.11","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.11","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.11","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.11/manifests"},{"name":"v0.0.10","sha":"59ea9998ee2331acf1c50a9fe2f93e5606c5fefb","kind":"tag","published_at":"2021-06-08T13:20:05.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.10","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.10","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.10/manifests"},{"name":"v0.0.9","sha":"2e81c2f72a91ba3d36913e5a0958322464b48122","kind":"tag","published_at":"2021-05-20T15:17:54.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.9","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.9/manifests"},{"name":"v0.0.8","sha":"54d4bf92e072a73606315de934ddeb4de71594be","kind":"commit","published_at":"2021-04-07T23:56:45.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.8","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.8/manifests"},{"name":"v0.0.7","sha":"e0e5ba1559a8de8104fdbf11218515fb039bd255","kind":"commit","published_at":"2021-03-18T17:46:42.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.7","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.7/manifests"},{"name":"v0.0.6","sha":"446ea449eabcbbfce388dd562e23afbd5fa2f9ae","kind":"commit","published_at":"2021-03-02T15:02:34.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.6","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.6/manifests"},{"name":"v0.0.5","sha":"a0fb3dd3f2725a3786ea049bdd18eb59086e7085","kind":"commit","published_at":"2021-03-02T14:38:48.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.5","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.5/manifests"},{"name":"v0.0.4","sha":"35418de9dfd7b0d4f68e5868c94e3f6c6d58191f","kind":"commit","published_at":"2021-03-02T14:26:02.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.4","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.4/manifests"},{"name":"v0.0.3","sha":"35418de9dfd7b0d4f68e5868c94e3f6c6d58191f","kind":"commit","published_at":"2021-03-02T14:26:02.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.3","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.3/manifests"},{"name":"v0.0.3rc2","sha":"b21b7c1119acb489d8239c8e6982b526cc1edb58","kind":"commit","published_at":"2021-02-23T19:38:52.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.3rc2","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.3rc2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.3rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.3rc2/manifests"},{"name":"v0.0.3rc1","sha":"8fa55ecc73c0b219792e12f3c83ad68fa8524239","kind":"commit","published_at":"2021-02-20T19:31:25.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.3rc1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.3rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.3rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.3rc1/manifests"},{"name":"v0.0.2","sha":"b83b078123ffafa8da1e70381dd58bf2e64e9c64","kind":"commit","published_at":"2021-02-12T18:58:33.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.2","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.2/manifests"},{"name":"v0.0.1","sha":"9cd113b1435065767c757b0b4703bfa138b4d8c9","kind":"commit","published_at":"2020-12-23T09:13:31.000Z","download_url":"https://codeload.github.com/huggingface/huggingface_hub/tar.gz/v0.0.1","html_url":"https://github.com/huggingface/huggingface_hub/releases/tag/v0.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/huggingface%2Fhuggingface_hub/tags/v0.0.1/manifests"}]},"repo_metadata_updated_at":"2024-09-07T22:58:46.039Z","dependent_packages_count":665,"downloads":90034903,"downloads_period":"last-month","dependent_repos_count":15445,"rankings":{"downloads":0.043102894863785685,"dependent_repos_count":0.06511288373039965,"dependent_packages_count":0.04713805948933157,"stargazers_count":2.3941365389659337,"forks_count":3.6402687419640616,"docker_downloads_count":0.599955613189119,"average":1.131619122033772},"purl":"pkg:pypi/huggingface-hub","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/huggingface-hub","docker_dependents_count":2209,"docker_downloads_count":42811092,"usage_url":"https://repos.ecosyste.ms/usage/pypi/huggingface-hub","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/huggingface-hub/dependencies","status":null,"funding_links":[],"critical":true,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/huggingface-hub/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/huggingface-hub/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/huggingface-hub/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/huggingface-hub/related_packages","maintainers":[{"uuid":"chaumond","login":"chaumond","name":null,"email":null,"url":null,"packages_count":5,"html_url":"https://pypi.org/user/chaumond/","role":null,"created_at":"2022-11-14T17:24:51.921Z","updated_at":"2022-11-14T17:24:51.921Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/chaumond/packages"},{"uuid":"lysandre","login":"lysandre","name":null,"email":null,"url":null,"packages_count":10,"html_url":"https://pypi.org/user/lysandre/","role":null,"created_at":"2022-11-14T17:24:51.930Z","updated_at":"2022-11-14T17:24:51.930Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/lysandre/packages"},{"uuid":"Thomwolf","login":"Thomwolf","name":null,"email":null,"url":null,"packages_count":16,"html_url":"https://pypi.org/user/Thomwolf/","role":null,"created_at":"2022-11-14T17:24:51.955Z","updated_at":"2022-11-14T17:24:51.955Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/Thomwolf/packages"},{"uuid":"Wauplin","login":"Wauplin","name":null,"email":null,"url":null,"packages_count":5,"html_url":"https://pypi.org/user/Wauplin/","role":null,"created_at":"2022-11-14T17:24:51.970Z","updated_at":"2022-11-14T17:24:51.970Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/Wauplin/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":690055,"maintainers_count":292646,"namespaces_count":0,"keywords_count":228482,"github":"pypi","metadata":{"funded_packages_count":48953},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-06-05T05:19:27.498Z","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":286,"unique_repositories_count_past_30_days":55,"recent_issues":[{"uuid":"5367383715","node_id":"PR_kwDORF79hc8AAAABCbhgig","number":1160,"state":"open","title":"chore(deps): bump the dependencies group with 6 updates","user":"dependabot[bot]","labels":["dependencies","python:uv"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-06T20:11:44.000Z","updated_at":"2026-09-06T20:16:31.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"dependencies","update_count":6,"packages":[{"name":"claude-agent-sdk","old_version":"0.2.147","new_version":"0.2.152","repository_url":"https://github.com/anthropics/claude-agent-sdk-python"},{"name":"anyio","old_version":"4.14.2","new_version":"4.15.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"pydantic","old_version":"2.13.4","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"tree-sitter","old_version":"0.25.2","new_version":"0.26.0","repository_url":"https://github.com/tree-sitter/py-tree-sitter"},{"name":"huggingface-hub","old_version":"1.29.0","new_version":"1.30.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"ruff","old_version":"0.16.5","new_version":"0.16.6","repository_url":"https://github.com/astral-sh/ruff"}],"path":null,"ecosystem":"pip"},"body":"Bumps the dependencies group with 6 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [claude-agent-sdk](https://github.com/anthropics/claude-agent-sdk-python) | `0.2.147` | `0.2.152` |\n| [anyio](https://github.com/agronholm/anyio) | `4.14.2` | `4.15.0` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.13.4` | `2.13.5` |\n| [tree-sitter](https://github.com/tree-sitter/py-tree-sitter) | `0.25.2` | `0.26.0` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.29.0` | `1.30.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.16.5` | `0.16.6` |\n\nUpdates `claude-agent-sdk` from 0.2.147 to 0.2.152\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/releases\"\u003eclaude-agent-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.2.152\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.259\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e\u003cstrong\u003ePyPI:\u003c/strong\u003e \u003ca href=\"https://pypi.org/project/claude-agent-sdk/0.2.152/\"\u003ehttps://pypi.org/project/claude-agent-sdk/0.2.152/\u003c/a\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003epip install claude-agent-sdk==0.2.152\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003ev0.2.151\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.258\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e\u003cstrong\u003ePyPI:\u003c/strong\u003e \u003ca href=\"https://pypi.org/project/claude-agent-sdk/0.2.151/\"\u003ehttps://pypi.org/project/claude-agent-sdk/0.2.151/\u003c/a\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003epip install claude-agent-sdk==0.2.151\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003ev0.2.150\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.257\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e\u003cstrong\u003ePyPI:\u003c/strong\u003e \u003ca href=\"https://pypi.org/project/claude-agent-sdk/0.2.150/\"\u003ehttps://pypi.org/project/claude-agent-sdk/0.2.150/\u003c/a\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003epip install claude-agent-sdk==0.2.150\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003ev0.2.149\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.252\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/claude-agent-sdk-python/blob/main/CHANGELOG.md\"\u003eclaude-agent-sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.2.152\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.259\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.151\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.258\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.150\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.257\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.149\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.252\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.148\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.251\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/anthropics/claude-agent-sdk-python/commit/a8b1e285f97f8dbcb7b10226d74ba0d551b493f4\"\u003e\u003ccode\u003ea8b1e28\u003c/code\u003e\u003c/a\u003e docs: update changelog for v0.2.152\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/0b41fb4af7ac8765a842772c1e9e779e5e1765ac\"\u003e\u003ccode\u003e0b41fb4\u003c/code\u003e\u003c/a\u003e chore: release v0.2.152\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/ed1718fcc3731834f3da31721f523ee0da9ad995\"\u003e\u003ccode\u003eed1718f\u003c/code\u003e\u003c/a\u003e chore: bump bundled CLI version to 2.1.259\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/16606a32d26409de70abe424787a88bdb97a9324\"\u003e\u003ccode\u003e16606a3\u003c/code\u003e\u003c/a\u003e docs: update changelog for v0.2.151\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/dbe39981d3655c969a9fbdb3078b678875287b69\"\u003e\u003ccode\u003edbe3998\u003c/code\u003e\u003c/a\u003e chore: release v0.2.151\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/637906ece007b29a932822b7510555aca207f2ea\"\u003e\u003ccode\u003e637906e\u003c/code\u003e\u003c/a\u003e chore: bump bundled CLI version to 2.1.258\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/1539d2ab616e68615e1acd4f72981351919b0a85\"\u003e\u003ccode\u003e1539d2a\u003c/code\u003e\u003c/a\u003e docs: update changelog for v0.2.150\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/23ca647b5808727b80b4565b12490a96135e3849\"\u003e\u003ccode\u003e23ca647\u003c/code\u003e\u003c/a\u003e chore: release v0.2.150\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/036a35ac2cbd5d482655998ddc584624b32514c7\"\u003e\u003ccode\u003e036a35a\u003c/code\u003e\u003c/a\u003e chore: bump bundled CLI version to 2.1.257\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/9597fc956a2a18ff8a6dc5675d9823b457e8264f\"\u003e\u003ccode\u003e9597fc9\u003c/code\u003e\u003c/a\u003e docs: update changelog for v0.2.149\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/compare/v0.2.147...v0.2.152\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `anyio` from 4.14.2 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/agronholm/anyio/releases\"\u003eanyio's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.15.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded support for the newer keyword-only arguments on \u003ccode\u003eanyio.Path\u003c/code\u003e methods to match the standard library \u003ccode\u003epathlib.Path\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efollow_symlinks\u003c/code\u003e on \u003ccode\u003eexists()\u003c/code\u003e (Python 3.12+)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efollow_symlinks\u003c/code\u003e on \u003ccode\u003eis_dir()\u003c/code\u003e (Python 3.13+)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efollow_symlinks\u003c/code\u003e on \u003ccode\u003eis_file()\u003c/code\u003e (Python 3.13+)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efollow_symlinks\u003c/code\u003e on \u003ccode\u003eowner()\u003c/code\u003e (Python 3.13+)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efollow_symlinks\u003c/code\u003e on \u003ccode\u003egroup()\u003c/code\u003e (Python 3.13+)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enewline\u003c/code\u003e on \u003ccode\u003eread_text()\u003c/code\u003e (Python 3.13+)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e(\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1286\"\u003e#1286\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1293\"\u003e#1293\u003c/a\u003e; PR by \u003ca href=\"https://github.com/jaideeppyne\"\u003e\u003ccode\u003e@​jaideeppyne\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003eamap\u003c/code\u003e, \u003ccode\u003egather\u003c/code\u003e, and \u003ccode\u003eas_completed\u003c/code\u003e utility functions to simplify common patterns (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1173\"\u003e#1173\u003c/a\u003e; PR by \u003ca href=\"https://github.com/Graeme22\"\u003e\u003ccode\u003e@​Graeme22\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003e--anyio-mode\u003c/code\u003e command-line option as an alternative to the \u003ccode\u003eanyio_mode\u003c/code\u003e ini setting, and fix the pytest plugin's auto mode detection to recognize the mode when set via either mechanism(e.g: \u003ccode\u003epytest_asyncio\u003c/code\u003e). (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1242\"\u003e#1242\u003c/a\u003e; PR by \u003ca href=\"https://github.com/EmmanuelNiyonshuti\"\u003e\u003ccode\u003e@​EmmanuelNiyonshuti\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded the \u003ccode\u003eanyio.Future\u003c/code\u003e synchronization primitive which behaves similar to \u003ccode\u003easyncio.Future\u003c/code\u003e, allowing tasks to wait for a value (or exception) from another task (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1146\"\u003e#1146\u003c/a\u003e; PR by \u003ca href=\"https://github.com/Vizonex\"\u003e\u003ccode\u003e@​Vizonex\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded guidance for managing multiple memory object stream producers and consumers with cloned streams (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/330\"\u003e#330\u003c/a\u003e; PR by \u003ca href=\"https://github.com/nightcityblade\"\u003e\u003ccode\u003e@​nightcityblade\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003eStapledObjectStream.send_nowait()\u003c/code\u003e that delegates to the underlying \u003ccode\u003eObjectSendStream\u003c/code\u003e, if it implements it (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1241\"\u003e#1241\u003c/a\u003e; PR by \u003ca href=\"https://github.com/davidbrochart\"\u003e\u003ccode\u003e@​davidbrochart\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded the \u003ccode\u003emove_on_at()\u003c/code\u003e and \u003ccode\u003efail_at()\u003c/code\u003e functions to complement \u003ccode\u003emove_on_after()\u003c/code\u003e and \u003ccode\u003efail_after()\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eChanged the default name for a task spawned with \u003ccode\u003eTaskGroup.create_task(func())\u003c/code\u003e to match the default task name for the analogous task spawned with \u003ccode\u003eTaskGroup.start_soon(func)\u003c/code\u003e or \u003ccode\u003eTaskGroup.start(func)\u003c/code\u003e in more situations. Previously, the default name of a \u003ccode\u003eTaskGroup.create_task\u003c/code\u003e task never included the module name. (The default name for a task spawned with \u003ccode\u003eTaskGroup.start_soon\u003c/code\u003e or \u003ccode\u003eTaskGroup.start\u003c/code\u003e typically includes the module name.) (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1234\"\u003e#1234\u003c/a\u003e; PR by \u003ca href=\"https://github.com/gschaffner\"\u003e\u003ccode\u003e@​gschaffner\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eChanged the \u003ccode\u003eanyio\u003c/code\u003e and \u003ccode\u003eanyio.abc\u003c/code\u003e modules to lazily (much like \u003ccode\u003e810\u003c/code\u003e) import the necessary submodules. This is done by parsing the AST of the module and building a lookup table from the \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block. A fallback mode has been provided for installations where the source code is unavailable (e.g. PyInstaller). (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1169\"\u003e#1169\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed free-threading compatibility issues arising from the fact that on Python 3.14 free-threading builds, newly created threads inherit the current context by default, causing AnyIO to behave erroneously in relation to \u003ccode\u003estart_blocking_portal()\u003c/code\u003e and \u003ccode\u003eanyio.to_thread.run_sync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1224\"\u003e#1224\u003c/a\u003e; PR by \u003ca href=\"https://github.com/EmmanuelNiyonshuti\"\u003e\u003ccode\u003e@​EmmanuelNiyonshuti\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003eSpooledTemporaryFile.readinto()\u003c/code\u003e and \u003ccode\u003ereadinto1()\u003c/code\u003e reading twice before rollover, so the destination buffer was overwritten by the second read and the file position advanced twice, silently losing data (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1215\"\u003e#1215\u003c/a\u003e; PR by \u003ca href=\"https://github.com/c-tonneslan\"\u003e\u003ccode\u003e@​c-tonneslan\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded a \u003ccode\u003ereason\u003c/code\u003e parameter to \u003ccode\u003efail_after\u003c/code\u003e (and the new \u003ccode\u003efail_at\u003c/code\u003e) allowing for added exception context when raising \u003ccode\u003eTimeoutError\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1227\"\u003e#1227\u003c/a\u003e; PR by \u003ca href=\"https://github.com/Graeme22\"\u003e\u003ccode\u003e@​Graeme22\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed the default \u003ccode\u003eTaskHandle.name\u003c/code\u003e missing part of the task name for tasks started with \u003ccode\u003eTaskGroup.start\u003c/code\u003e on Trio (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1231\"\u003e#1231\u003c/a\u003e; PR by \u003ca href=\"https://github.com/gschaffner\"\u003e\u003ccode\u003e@​gschaffner\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003eanyio.run\u003c/code\u003e leaking, or at least, delaying collection of loop and root_task due to the root task being cached in a \u003ccode\u003eRunVar\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1203\"\u003e#1203\u003c/a\u003e; PR by \u003ca href=\"https://github.com/tapetersen\"\u003e\u003ccode\u003e@​tapetersen\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003eanyio.Path.with_stem()\u003c/code\u003e silently producing a wrong path (e.g. \u003ccode\u003ePath(\u0026quot;.txt\u0026quot;)\u003c/code\u003e) instead of raising \u003ccode\u003eValueError\u003c/code\u003e when given an empty stem on a path with a non-empty suffix, unlike \u003ccode\u003epathlib.PurePath.with_stem\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1200\"\u003e#1200\u003c/a\u003e; PR by \u003ca href=\"https://github.com/Sanjays2402\"\u003e\u003ccode\u003e@​Sanjays2402\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003eUNIXSocketStream.aclose()\u003c/code\u003e raising \u003ccode\u003easyncio.InvalidStateError\u003c/code\u003e when a concurrent receive or send operation had just been cancelled on the asyncio backend (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1267\"\u003e#1267\u003c/a\u003e; PR by \u003ca href=\"https://github.com/alloutflo\"\u003e\u003ccode\u003e@​alloutflo\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed the pytest plugin importing the deprecated \u003ccode\u003e_pytest.python.CallSpec2\u003c/code\u003e alias, which triggers \u003ccode\u003ePytestRemovedIn10Warning\u003c/code\u003e on \u003ccode\u003epytest\u0026gt;=9.2\u003c/code\u003e and crashes pytest at startup when \u003ccode\u003efilterwarnings = error\u003c/code\u003e is configured (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1271\"\u003e#1271\u003c/a\u003e; PR by \u003ca href=\"https://github.com/matthewfeickert\"\u003e\u003ccode\u003e@​matthewfeickert\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed an asyncio worker thread race that could raise \u003ccode\u003eRuntimeError\u003c/code\u003e when the event loop closed between checking its state and scheduling the worker result (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1265\"\u003e#1265\u003c/a\u003e; PR by \u003ca href=\"https://github.com/hansu650\"\u003e\u003ccode\u003e@​hansu650\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003eCapacityLimiter\u003c/code\u003e on the asyncio backend over-granting tokens when \u003ccode\u003etotal_tokens\u003c/code\u003e was raised while the limiter was over-subscribed (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1223\"\u003e#1223\u003c/a\u003e; PR by \u003ca href=\"https://github.com/zelinewang\"\u003e\u003ccode\u003e@​zelinewang\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed asyncio task groups leaking unawaited coroutines when a custom task constructor fails; default task creation is unaffected (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1274\"\u003e#1274\u003c/a\u003e; PR by \u003ca href=\"https://github.com/dsfaccini\"\u003e\u003ccode\u003e@​dsfaccini\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/928366259543412a2deb1e2ba09ea45ffa92ef4f\"\u003e\u003ccode\u003e9283662\u003c/code\u003e\u003c/a\u003e Bumped up the version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/d137692a90f76e4f71605e32ea5ca94cab3a539d\"\u003e\u003ccode\u003ed137692\u003c/code\u003e\u003c/a\u003e Improved the instructions for AI agents\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/033fc52b8fa8e90c5d0ef24b10b3860e974a6265\"\u003e\u003ccode\u003e033fc52\u003c/code\u003e\u003c/a\u003e Shield TemporaryDirectory cleanup from cancellation (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1304\"\u003e#1304\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/942e9a6552cc10b5aaa779d84bfc8e2c3d5fcffc\"\u003e\u003ccode\u003e942e9a6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1305\"\u003e#1305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/b825c3be7cb4ca1a8000b8065d4e147843deb704\"\u003e\u003ccode\u003eb825c3b\u003c/code\u003e\u003c/a\u003e Fixed pyproject.toml changes not triggering the test suite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/9727dc504681e2986b5bc285de9571fb467539af\"\u003e\u003ccode\u003e9727dc5\u003c/code\u003e\u003c/a\u003e Fixed start inconsistencies between trio and asyncio (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1198\"\u003e#1198\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/b05fe6d160a640355c201363cab286a7d2581da8\"\u003e\u003ccode\u003eb05fe6d\u003c/code\u003e\u003c/a\u003e Fixed wrong type in move_on_after (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1297\"\u003e#1297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/44d0c93cc20079acbf38ba4dbed5ab9df323f153\"\u003e\u003ccode\u003e44d0c93\u003c/code\u003e\u003c/a\u003e Fixed asyncio task group coroutine cleanup (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1275\"\u003e#1275\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/ae250440c90020b030ba4e83cccc37e9a84512c5\"\u003e\u003ccode\u003eae25044\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1290\"\u003e#1290\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/6d3a30d264637374b1b642d2e97217c816151cfe\"\u003e\u003ccode\u003e6d3a30d\u003c/code\u003e\u003c/a\u003e Add follow_symlinks argument to anyio.Path.owner() and group() (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1293\"\u003e#1293\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/agronholm/anyio/compare/4.14.2...4.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.13.4 to 2.13.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pydantic/pydantic/releases\"\u003epydantic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.5 (2026-08-28)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow reuse of validators when plugins are set by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13535\"\u003e#13535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal on some \u003ccode\u003epydantic-core\u003c/code\u003e struct fields by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13624\"\u003e#13624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13629\"\u003e#13629\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCount validated model fields once in smart unions by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13731\"\u003e#13731\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/pydantic/pydantic/blob/v2.13.5/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.5 (2026-08-28)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.13.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow reuse of validators when plugins are set by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13535\"\u003e#13535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal on some \u003ccode\u003epydantic-core\u003c/code\u003e struct fields by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13624\"\u003e#13624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13629\"\u003e#13629\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCount validated model fields once in smart unions by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13731\"\u003e#13731\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/001dea020e0809844e5b17666432c9135a976f46\"\u003e\u003ccode\u003e001dea0\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003epypa/gh-action-pypi-publish\u003c/code\u003e action to v1.14.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/558379fee957fad25858e33596146c72d5674843\"\u003e\u003ccode\u003e558379f\u003c/code\u003e\u003c/a\u003e Bump twine to v7.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/2cfd5d3d2ae721ea882c045f83b7f7a4003aab01\"\u003e\u003ccode\u003e2cfd5d3\u003c/code\u003e\u003c/a\u003e Do not check for docs build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a735bee5c64e1fe50785c376adaf1275e752b8ac\"\u003e\u003ccode\u003ea735bee\u003c/code\u003e\u003c/a\u003e Fix more Clippy lints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7eed4a16b87afaced4d0eafae230453de3410d64\"\u003e\u003ccode\u003e7eed4a1\u003c/code\u003e\u003c/a\u003e Fix Clippy 0.1.95 warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/b353bbb20a4989b4c033e2be2b4a40d36178b16a\"\u003e\u003ccode\u003eb353bbb\u003c/code\u003e\u003c/a\u003e Prepare release v2.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/63d2cccd6e760da6bbc7fe81a53cb2bde3768f5e\"\u003e\u003ccode\u003e63d2ccc\u003c/code\u003e\u003c/a\u003e Count validated model fields once in smart unions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a53ec2ed342fda4e6aa3684399d04ea57be9a6e4\"\u003e\u003ccode\u003ea53ec2e\u003c/code\u003e\u003c/a\u003e Speed up PyPy CI tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/d65e0f96e890ca82f4b66a15d5b3bd65af2c661c\"\u003e\u003ccode\u003ed65e0f9\u003c/code\u003e\u003c/a\u003e Workaround circular import error in Mypy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/47a6dbf8ad6216211bd0df6ec5c2c6c6ed905b72\"\u003e\u003ccode\u003e47a6dbf\u003c/code\u003e\u003c/a\u003e Fix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.13.4...v2.13.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tree-sitter` from 0.25.2 to 0.26.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/releases\"\u003etree-sitter's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.26.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003eBreaking changes are marked with \u003cstrong\u003e!\u003c/strong\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eAdditions:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ePoint.edit()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ePoint.__repr__()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eQueryCursor.set_containing_byte_range()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eQueryCursor.set_containing_point_range()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eRange.edit()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etree_sitter.__version__\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemovals:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eLanguage.version\u003c/code\u003e: use \u003ccode\u003eLanguage.abi_version\u003c/code\u003e \u003cstrong\u003e!\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eLanguage.query(source)\u003c/code\u003e: use \u003ccode\u003eQuery(language, source)\u003c/code\u003e \u003cstrong\u003e!\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eParser.timeout_micros\u003c/code\u003e: use the \u003ccode\u003eprogress_callback\u003c/code\u003e in \u003ccode\u003eparse()\u003c/code\u003e \u003cstrong\u003e!\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eQueryCursor.timeout_micros\u003c/code\u003e: use the \u003ccode\u003eprogress_callback\u003c/code\u003e in \u003ccode\u003ematches()\u003c/code\u003e or \u003ccode\u003ecaptures()\u003c/code\u003e \u003cstrong\u003e!\u003c/strong\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanges:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ePoint\u003c/code\u003e is a tuple subclass rather than a namedtuple object\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/tree-sitter/py-tree-sitter/commit/a9e753ef67875c55267ebe02e786eac193a53bc1\"\u003e\u003ccode\u003ea9e753e\u003c/code\u003e\u003c/a\u003e ci(pypi): skip riscv64 tests properly\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/eeababc529a44d2d3ef09486f2f71711ca50de25\"\u003e\u003ccode\u003eeeababc\u003c/code\u003e\u003c/a\u003e chore: release 0.26.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/dac834eca3523201a6890d647e0ee3fae6cec892\"\u003e\u003ccode\u003edac834e\u003c/code\u003e\u003c/a\u003e fix(node): fix reference leak\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/bdddb6180da9a6100bd670416963d6d47e96c70d\"\u003e\u003ccode\u003ebdddb61\u003c/code\u003e\u003c/a\u003e build: bump tree-sitter-rust from 0.24.1 to 0.24.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/baa5fd8e277e10d68632bc4ed832e317f8070553\"\u003e\u003ccode\u003ebaa5fd8\u003c/code\u003e\u003c/a\u003e ci: bump the actions group across 1 directory with 2 updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/c680e3b51353d8e22b41414a74b538672ea7f59b\"\u003e\u003ccode\u003ec680e3b\u003c/code\u003e\u003c/a\u003e build: bump tree_sitter/core from \u003ccode\u003ecd5b087\u003c/code\u003e to \u003ccode\u003e7f53486\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/2d3fb3a2a7a23995791f2f7b621e933cf300ec7d\"\u003e\u003ccode\u003e2d3fb3a\u003c/code\u003e\u003c/a\u003e ci: bump actions/upload-pages-artifact from 4 to 5 in the actions group\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/bae0829cea6b44f072c00e1385f459b16a281ed9\"\u003e\u003ccode\u003ebae0829\u003c/code\u003e\u003c/a\u003e build: bump tree-sitter-rust from 0.24.0 to 0.24.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/d99f79601f25c74edd10823cb3fceb95d65ae3f3\"\u003e\u003ccode\u003ed99f796\u003c/code\u003e\u003c/a\u003e build: bump tree_sitter/core from \u003ccode\u003e6f2e8a6\u003c/code\u003e to \u003ccode\u003ecd5b087\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/a9282df03584eb98e8d67df3b151cf8df0b38f14\"\u003e\u003ccode\u003ea9282df\u003c/code\u003e\u003c/a\u003e build: bump tree_sitter/core from \u003ccode\u003ecd4b6e2\u003c/code\u003e to \u003ccode\u003e6f2e8a6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/compare/v0.25.2...v0.26.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.29.0 to 1.30.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.30.0] Scheduled job filters, repo-aware revision pinning and more\u003c/h2\u003e\n\u003ch2\u003e🖥️ \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e can now filter by status, label and name\u003c/h2\u003e\n\u003cp\u003eYou can now filter scheduled jobs with \u003ccode\u003e--status\u003c/code\u003e (\u003ccode\u003eactive\u003c/code\u003e/\u003ccode\u003esuspended\u003c/code\u003e), repeatable \u003ccode\u003e-l\u003c/code\u003e/\u003ccode\u003e--label key=value\u003c/code\u003e and \u003ccode\u003e--name\u003c/code\u003e (a shortcut for \u003ccode\u003e--label name=NAME\u003c/code\u003e), matching the flags \u003ccode\u003ehf jobs ls\u003c/code\u003e already had. On the Python side, \u003ccode\u003eHfApi.list_scheduled_jobs\u003c/code\u003e gains a \u003ccode\u003elabels\u003c/code\u003e argument.\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\n\u003ccode\u003e-f\u003c/code\u003e/\u003ccode\u003e--filter\u003c/code\u003e on \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e is deprecated and no longer applied: it is accepted but ignored, with a warning pointing to the new flags. Migrate as shown below. The option itself will be removed in a future release.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003ehf jobs scheduled ls --all\r\nhf jobs scheduled ls --status suspended\r\nhf jobs scheduled ls --name hourly-task --label env=prod\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebefore\u003c/th\u003e\n\u003cth\u003eafter\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f name=daily-report\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--name daily-report\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f env=prod\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--label env=prod\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f suspend!=true\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e(default, or \u003ccode\u003e--status active\u003c/code\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f suspend=true\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--status suspended\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/jobs\"\u003eJobs guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAlign \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e filtering with \u003ccode\u003ehf jobs ls\u003c/code\u003e (\u003ccode\u003e--status\u003c/code\u003e/\u003ccode\u003e--label\u003c/code\u003e/\u003ccode\u003e--name\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4773\"\u003e#4773\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔖 \u003ccode\u003eResolvedRevision\u003c/code\u003e now pins the repo it was resolved for\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003eResolvedRevision\u003c/code\u003e didn't record which repo a commit hash was resolved against, so resolving \u003ccode\u003e\u0026quot;main\u0026quot;\u003c/code\u003e on two different repos returned the same commit oid. It now remembers its \u003ccode\u003erepo_id\u003c/code\u003e and \u003ccode\u003erepo_type\u003c/code\u003e: passed back for the same repo it is returned as is, for a different repo the requested revision is resolved again.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import resolve_revision\r\n\u0026gt;\u0026gt;\u0026gt; revision = resolve_revision(\u0026quot;openai-community/gpt2\u0026quot;)\r\n\u003ch1\u003eSame repo =\u0026gt; returned as is\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; resolve_revision(\u0026quot;openai-community/gpt2\u0026quot;, revision=revision) is revision\nTrue\u003c/p\u003e\n\u003ch1\u003eAnother repo =\u0026gt; \u0026quot;main\u0026quot; is resolved again for that repo\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; resolve_revision(\u0026quot;openai-community/gpt2-medium\u0026quot;, revision=revision).resolved\n'6dcaa7a952f72f9298047fd5137cd6e4f05f41da'\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/manage-cache#pin-a-revision-advanced\"\u003eManage cache — Pin a revision\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Download] A \u003ccode\u003eResolvedRevision\u003c/code\u003e only pins the repo it was resolved for by \u003ca href=\"https://github.com/Wauplin\"\u003e\u003ccode\u003e@​Wauplin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4767\"\u003e#4767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDo not require the \u003ccode\u003econversational\u003c/code\u003e tag for chat-completion on hf-inference: any model with pipeline tag \u003ccode\u003etext-generation\u003c/code\u003e or \u003ccode\u003eimage-text-to-text\u003c/code\u003e can now be served, mirroring the updated provider-side rules by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4784\"\u003e#4784\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/huggingface/huggingface_hub/commit/48ef2781c2c4c2247431c97efcd5487e89d42732\"\u003e\u003ccode\u003e48ef278\u003c/code\u003e\u003c/a\u003e Release: v1.30.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/a073ecb91bfdb5966d1fcf22623e4f83faf0c853\"\u003e\u003ccode\u003ea073ecb\u003c/code\u003e\u003c/a\u003e Release: v1.30.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b84090bcbcd96eeaf4c78b6280b2ce2cea528288\"\u003e\u003ccode\u003eb84090b\u003c/code\u003e\u003c/a\u003e [Release] Consolidate the HF CLI skill sync into the release workflow (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4765\"\u003e#4765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/176d4f378d49e699c811b18e21765ef5a1763c91\"\u003e\u003ccode\u003e176d4f3\u003c/code\u003e\u003c/a\u003e [CI] Disable auto close (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4800\"\u003e#4800\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/f0a5c6d08298760b2a030c4c5df608369632b7e1\"\u003e\u003ccode\u003ef0a5c6d\u003c/code\u003e\u003c/a\u003e [Inference Providers] Do not require the conversational tag for chat-completi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/6a2eb09daf1f9258e7f69c1d50a870fdb7235742\"\u003e\u003ccode\u003e6a2eb09\u003c/code\u003e\u003c/a\u003e [Sandbox] Document experimental status (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4783\"\u003e#4783\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/94cb25dada381d14e54b16dcfe92436be244fca9\"\u003e\u003ccode\u003e94cb25d\u003c/code\u003e\u003c/a\u003e [CI] Fix torch_1.11 case-arm label to match renamed matrix entry (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4776\"\u003e#4776\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4cc16bc22402e2a540f60d05beb406921072a032\"\u003e\u003ccode\u003e4cc16bc\u003c/code\u003e\u003c/a\u003e [Download] A \u003ccode\u003eResolvedRevision\u003c/code\u003e only pins the repo it was resolved for (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4767\"\u003e#4767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/1de481786c0440d6de2cea38bab4faa88612e821\"\u003e\u003ccode\u003e1de4817\u003c/code\u003e\u003c/a\u003e [Download] Follow redirects between Hub hosts when resolving files (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4739\"\u003e#4739\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/97655e88b1c1374b0576659c6a7ffe8c59cedfcb\"\u003e\u003ccode\u003e97655e8\u003c/code\u003e\u003c/a\u003e Align \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e filtering with \u003ccode\u003ehf jobs ls\u003c/code\u003e (\u003ccode\u003e--status\u003c/code\u003e/`--label...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.29.0...v1.30.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.16.5 to 0.16.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.16.6\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-09-03.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove \u003ccode\u003epytest-fixture-autouse\u003c/code\u003e to the \u003ccode\u003erestriction\u003c/code\u003e category (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28219\"\u003e#28219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Add an autofix for \u003ccode\u003ePT020\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27993\"\u003e#27993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-tidy-imports\u003c/code\u003e] Prevent fix loop between \u003ccode\u003eTID254\u003c/code\u003e and \u003ccode\u003eTID255\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28262\"\u003e#28262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eisort\u003c/code\u003e] Exclude pragma comments from line length calculation (\u003ccode\u003eI001\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27313\"\u003e#27313\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eValidate unary expressions when parsing (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28233\"\u003e#28233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e, \u003ccode\u003epylint\u003c/code\u003e] Recognize \u003ccode\u003ebuiltins.open\u003c/code\u003e (\u003ccode\u003eASYNC230\u003c/code\u003e, \u003ccode\u003ePLW1514\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28021\"\u003e#28021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Fix panic on \u003ccode\u003ematch\u003c/code\u003e subjects (\u003ccode\u003eB031\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27781\"\u003e#27781\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-datetimez\u003c/code\u003e] Reject \u003ccode\u003etzinfo=None\u003c/code\u003e for \u003ccode\u003edatetime\u003c/code\u003e bounds (\u003ccode\u003eDTZ901\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28022\"\u003e#28022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Avoid duplicate \u003ccode\u003ePT017\u003c/code\u003e diagnostics (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27918\"\u003e#27918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Remove \u003ccode\u003elint.external\u003c/code\u003e hint for Ruff-specific suppressions (\u003ccode\u003eRUF102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27923\"\u003e#27923\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add display-only fix for \u003ccode\u003eos.listdir\u003c/code\u003e (\u003ccode\u003ePTH208\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28027\"\u003e#28027\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd another example and glob reference for \u003ccode\u003elint.per-file-ignores\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28106\"\u003e#28106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd duplicate work guidance (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28229\"\u003e#28229\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Document thread offloading (\u003ccode\u003eASYNC240\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28008\"\u003e#28008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Clarify default \u003ccode\u003eencoding\u003c/code\u003e argument handling (\u003ccode\u003eUP012\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27315\"\u003e#27315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow unary plus in match patterns on Python 3.15 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28231\"\u003e#28231\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/flying-sheep\"\u003e\u003ccode\u003e@​flying-sheep\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pikammmmm\"\u003e\u003ccode\u003e@​pikammmmm\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fly1d\"\u003e\u003ccode\u003e@​fly1d\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/waterWang\"\u003e\u003ccode\u003e@​waterWang\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Pierre-Sassoulas\"\u003e\u003ccode\u003e@​Pierre-Sassoulas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ntBre\"\u003e\u003ccode\u003e@​ntBre\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jelle-openai\"\u003e\u003ccode\u003e@​jelle-openai\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ericbuehl\"\u003e\u003ccode\u003e@​ericbuehl\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tjkuson\"\u003e\u003ccode\u003e@​tjkuson\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AbhinavMir\"\u003e\u003ccode\u003e@​AbhinavMir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Whning0513\"\u003e\u003ccode\u003e@​Whning0513\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.16.6\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-09-03.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove \u003ccode\u003epytest-fixture-autouse\u003c/code\u003e to the \u003ccode\u003erestriction\u003c/code\u003e category (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28219\"\u003e#28219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Add an autofix for \u003ccode\u003ePT020\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27993\"\u003e#27993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-tidy-imports\u003c/code\u003e] Prevent fix loop between \u003ccode\u003eTID254\u003c/code\u003e and \u003ccode\u003eTID255\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28262\"\u003e#28262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eisort\u003c/code\u003e] Exclude pragma comments from line length calculation (\u003ccode\u003eI001\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27313\"\u003e#27313\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eValidate unary expressions when parsing (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28233\"\u003e#28233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e, \u003ccode\u003epylint\u003c/code\u003e] Recognize \u003ccode\u003ebuiltins.open\u003c/code\u003e (\u003ccode\u003eASYNC230\u003c/code\u003e, \u003ccode\u003ePLW1514\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28021\"\u003e#28021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Fix panic on \u003ccode\u003ematch\u003c/code\u003e subjects (\u003ccode\u003eB031\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27781\"\u003e#27781\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-datetimez\u003c/code\u003e] Reject \u003ccode\u003etzinfo=None\u003c/code\u003e for \u003ccode\u003edatetime\u003c/code\u003e bounds (\u003ccode\u003eDTZ901\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28022\"\u003e#28022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Avoid duplicate \u003ccode\u003ePT017\u003c/code\u003e diagnostics (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27918\"\u003e#27918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Remove \u003ccode\u003elint.external\u003c/code\u003e hint for Ruff-specific suppressions (\u003ccode\u003eRUF102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27923\"\u003e#27923\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add display-only fix for \u003ccode\u003eos.listdir\u003c/code\u003e (\u003ccode\u003ePTH208\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28027\"\u003e#28027\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd another example and glob reference for \u003ccode\u003elint.per-file-ignores\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28106\"\u003e#28106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd duplicate work guidance (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28229\"\u003e#28229\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Document thread offloading (\u003ccode\u003eASYNC240\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28008\"\u003e#28008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Clarify default \u003ccode\u003eencoding\u003c/code\u003e argument handling (\u003ccode\u003eUP012\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27315\"\u003e#27315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow unary plus in match patterns on Python 3.15 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28231\"\u003e#28231\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/flying-sheep\"\u003e\u003ccode\u003e@​flying-sheep\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pikammmmm\"\u003e\u003ccode\u003e@​pikammmmm\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fly1d\"\u003e\u003ccode\u003e@​fly1d\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/waterWang\"\u003e\u003ccode\u003e@​waterWang\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Pierre-Sassoulas\"\u003e\u003ccode\u003e@​Pierre-Sassoulas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ntBre\"\u003e\u003ccode\u003e@​ntBre\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jelle-openai\"\u003e\u003ccode\u003e@​jelle-openai\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ericbuehl\"\u003e\u003ccode\u003e@​ericbuehl\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tjkuson\"\u003e\u003ccode\u003e@​tjkuson\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AbhinavMir\"\u003e\u003ccode\u003e@​AbhinavMir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Whning0513\"\u003e\u003ccode\u003e@​Whning0513\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/22f65a2ab5052990503985c7c794de37598d531e\"\u003e\u003ccode\u003e22f65a2\u003c/code\u003e\u003c/a\u003e Bump 0.16.6 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28280\"\u003e#28280\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/7cc9f1ed53e5ce175f17fde3a75fe792ac41e8cd\"\u003e\u003ccode\u003e7cc9f1e\u003c/code\u003e\u003c/a\u003e [ty] Document \u003ccode\u003eCallableTypeKind\u003c/code\u003e variants (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28277\"\u003e#28277\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/056ce07a895c217dab7929a616540c246cf8a078\"\u003e\u003ccode\u003e056ce07\u003c/code\u003e\u003c/a\u003e Add UV_LOCKED to all workflows (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28261\"\u003e#28261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/6d6e35d03a72d23d3b0f23fb348692b03c9b81b6\"\u003e\u003ccode\u003e6d6e35d\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Avoid duplicate \u003ccode\u003ePT017\u003c/code\u003e diagnostics (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/27918\"\u003e#27918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/80b4891b64cb916dce080e8fa15af5c2179d776a\"\u003e\u003ccode\u003e80b4891\u003c/code\u003e\u003c/a\u003e [ty] Temporarily disable tuple types in property tests (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28275\"\u003e#28275\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/3f7a54d1d7b9480a18d86a8211bf676354a2f8a0\"\u003e\u003ccode\u003e3f7a54d\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-tidy-imports\u003c/code\u003e] Prevent fix loop between \u003ccode\u003eTID254\u003c/code\u003e and \u003ccode\u003eTID255\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28262\"\u003e#28262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/35656cf37d34f30116d4f4a9cb13853a6ad9fd0d\"\u003e\u003ccode\u003e35656cf\u003c/code\u003e\u003c/a\u003e [ty] Preserve deprecations on decorated callables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28256\"\u003e#28256\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d2626c866ee08495cfa0da5236e130030d37e0cf\"\u003e\u003ccode\u003ed2626c8\u003c/code\u003e\u003c/a\u003e [ty] Reject missing attributes on \u003ccode\u003etype[]\u003c/code\u003e aliases (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28267\"\u003e#28267\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/ee6a6d19aa0707df942febe9768488d39f383c8c\"\u003e\u003ccode\u003eee6a6d1\u003c/code\u003e\u003c/a\u003e [ty] Support ParamSpecs in \u003ccode\u003eConstraintSet\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28028\"\u003e#28028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/7f6a170080dab08f754ef086369a2623c70f753d\"\u003e\u003ccode\u003e7f6a170\u003c/code\u003e\u003c/a\u003e [ty] Move bound APIs to constraint owners (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28094\"\u003e#28094\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.16.5...0.16.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/existential-birds/daydream/pull/1160","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/existential-birds%2Fdaydream/issues/1160","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1160/packages"},{"uuid":"5366743888","node_id":"PR_kwDOT6TBN88AAAABCbCwCw","number":13,"state":"open","title":"Bump the minor-update group across 1 directory with 186 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-06T18:08:31.000Z","updated_at":"2026-09-06T18:08:41.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-update","update_count":186,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"transformers","old_version":"5.15.0","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"huggingface-hub","old_version":"1.27.0","new_version":"1.30.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.2","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"fastapi","old_version":"0.136.3","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"starlette","old_version":"1.3.1","new_version":"1.6.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"prometheus-fastapi-instrumentator","old_version":"8.0.2","new_version":"8.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"pyzmq","old_version":"27.1.0","new_version":"27.2.0","repository_url":"https://github.com/zeromq/pyzmq"},{"name":"python-json-logger","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"pybase64","old_version":"1.4.3","new_version":"1.5.0","repository_url":"https://github.com/mayeut/pybase64"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions-ai","old_version":"0.4.13","new_version":"0.5.1"},{"name":"triton","old_version":"3.7.1","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"torchcodec","old_version":"0.14.0+cu130","new_version":"0.16.0","repository_url":"https://github.com/pytorch/torchcodec"},{"name":"auto-round-lib","old_version":"0.14.2","new_version":"0.15.0","repository_url":"https://github.com/intel/auto-round"},{"name":"tpu-inference","old_version":"0.26.0","new_version":"0.28.0","repository_url":"https://github.com/vllm-project/tpu-inference"},{"name":"pynvvideocodec","old_version":"2.0.4","new_version":"2.2.2"},{"name":"nvidia-cutlass-dsl","old_version":"4.6.2","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.8","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"anyio","old_version":"4.14.1","new_version":"4.15.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.87","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.87","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"cohere","old_version":"7.0.8","new_version":"7.1.1","repository_url":"https://github.com/cohere-ai/cohere-python"},{"name":"cohere-melody","old_version":"0.9.0","new_version":"0.13.4","repository_url":"https://github.com/cohere-ai/melody"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.3.0","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.1","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"detect-installer","old_version":"0.1.0","new_version":"0.2.1"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi-cloud-cli","old_version":"0.21.0","new_version":"0.25.0","repository_url":"https://github.com/fastapilabs/fastapi-cloud-cli"},{"name":"fastar","old_version":"0.11.0","new_version":"0.12.0","repository_url":"https://github.com/DoctorJohn/fastar"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"h11","old_version":"0.14.0","new_version":"0.16.0","repository_url":"https://github.com/python-hyper/h11"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"idna","old_version":"3.10","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.15.0","new_version":"0.16.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema-rs","old_version":"0.46.5","new_version":"0.53.0","repository_url":"https://github.com/Stranger6667/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llguidance","old_version":"1.7.6","new_version":"1.8.0","repository_url":"https://github.com/microsoft/llguidance"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.1.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.20.0.48","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.1","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.29.7","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"peft","old_version":"0.19.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.7","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pydantic-settings","old_version":"2.14.2","new_version":"2.15.0","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pyrate-limiter","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/vutran1710/PyrateLimiter"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"rignore","old_version":"0.7.6","new_version":"0.8.1"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"schemathesis","old_version":"4.21.6","new_version":"4.25.2","repository_url":"https://github.com/schemathesis/schemathesis"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"sentry-sdk","old_version":"2.63.0","new_version":"2.68.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.26.8","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.4","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.6","repository_url":"https://github.com/astral-sh/ruff"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 186 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [transformers](https://github.com/huggingface/transformers) | `5.15.0` | `5.16.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.27.0` | `1.30.0` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.2` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.136.3` | `0.141.1` |\n| [starlette](https://github.com/Kludex/starlette) | `1.3.1` | `1.6.0` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `8.0.2` | `8.1.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [pyzmq](https://github.com/zeromq/pyzmq) | `27.1.0` | `27.2.0` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `4.1.0` | `4.2.0` |\n| [pybase64](https://github.com/mayeut/pybase64) | `1.4.3` | `1.5.0` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| opentelemetry-semantic-conventions-ai | `0.4.13` | `0.5.1` |\n| [triton](https://github.com/triton-lang/triton) | `3.7.1` | `3.8.0` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [torchcodec](https://github.com/pytorch/torchcodec) | `0.14.0+cu130` | `0.16.0` |\n| [auto-round-lib](https://github.com/intel/auto-round) | `0.14.2` | `0.15.0` |\n| [tpu-inference](https://github.com/vllm-project/tpu-inference) | `0.26.0` | `0.28.0` |\n| pynvvideocodec | `2.0.4` | `2.2.2` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.6.2` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.8` | `0.2.6` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.14.1` | `4.15.0` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.87` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.87` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| [cohere](https://github.com/cohere-ai/cohere-python) | `7.0.8` | `7.1.1` |\n| [cohere-melody](https://github.com/cohere-ai/melody) | `0.9.0` | `0.13.4` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.1` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.3.0` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.1` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| detect-installer | `0.1.0` | `0.2.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi-cloud-cli](https://github.com/fastapilabs/fastapi-cloud-cli) | `0.21.0` | `0.25.0` |\n| [fastar](https://github.com/DoctorJohn/fastar) | `0.11.0` | `0.12.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.19` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.15.0` | `0.16.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonschema-rs](https://github.com/Stranger6667/jsonschema) | `0.46.5` | `0.53.0` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llguidance](https://github.com/microsoft/llguidance) | `1.7.6` | `1.8.0` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.1.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.20.0.48` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.1` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.29.7` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [peft](https://github.com/huggingface/peft) | `0.19.1` | `0.20.0` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.7` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.14.2` | `2.15.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pyrate-limiter](https://github.com/vutran1710/PyrateLimiter) | `4.4.0` | `4.5.0` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| rignore | `0.7.6` | `0.8.1` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [schemathesis](https://github.com/schemathesis/schemathesis) | `4.21.6` | `4.25.2` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.63.0` | `2.68.1` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.26.8` | `0.27.2` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.4` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.6` |\n\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 5.15.0 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\n\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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.15.0...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.27.0 to 1.30.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.30.0] Scheduled job filters, repo-aware revision pinning and more\u003c/h2\u003e\n\u003ch2\u003e🖥️ \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e can now filter by status, label and name\u003c/h2\u003e\n\u003cp\u003eYou can now filter scheduled jobs with \u003ccode\u003e--status\u003c/code\u003e (\u003ccode\u003eactive\u003c/code\u003e/\u003ccode\u003esuspended\u003c/code\u003e), repeatable \u003ccode\u003e-l\u003c/code\u003e/\u003ccode\u003e--label key=value\u003c/code\u003e and \u003ccode\u003e--name\u003c/code\u003e (a shortcut for \u003ccode\u003e--label name=NAME\u003c/code\u003e), matching the flags \u003ccode\u003ehf jobs ls\u003c/code\u003e already had. On the Python side, \u003ccode\u003eHfApi.list_scheduled_jobs\u003c/code\u003e gains a \u003ccode\u003elabels\u003c/code\u003e argument.\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\n\u003ccode\u003e-f\u003c/code\u003e/\u003ccode\u003e--filter\u003c/code\u003e on \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e is deprecated and no longer applied: it is accepted but ignored, with a warning pointing to the new flags. Migrate as shown below. The option itself will be removed in a future release.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003ehf jobs scheduled ls --all\r\nhf jobs scheduled ls --status suspended\r\nhf jobs scheduled ls --name hourly-task --label env=prod\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebefore\u003c/th\u003e\n\u003cth\u003eafter\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f name=daily-report\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--name daily-report\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f env=prod\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--label env=prod\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f suspend!=true\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e(default, or \u003ccode\u003e--status active\u003c/code\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f suspend=true\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--status suspended\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/jobs\"\u003eJobs guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAlign \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e filtering with \u003ccode\u003ehf jobs ls\u003c/code\u003e (\u003ccode\u003e--status\u003c/code\u003e/\u003ccode\u003e--label\u003c/code\u003e/\u003ccode\u003e--name\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4773\"\u003e#4773\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔖 \u003ccode\u003eResolvedRevision\u003c/code\u003e now pins the repo it was resolved for\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003eResolvedRevision\u003c/code\u003e didn't record which repo a commit hash was resolved against, so resolving \u003ccode\u003e\u0026quot;main\u0026quot;\u003c/code\u003e on two different repos returned the same commit oid. It now remembers its \u003ccode\u003erepo_id\u003c/code\u003e and \u003ccode\u003erepo_type\u003c/code\u003e: passed back for the same repo it is returned as is, for a different repo the requested revision is resolved again.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import resolve_revision\r\n\u0026gt;\u0026gt;\u0026gt; revision = resolve_revision(\u0026quot;openai-community/gpt2\u0026quot;)\r\n\u003ch1\u003eSame repo =\u0026gt; returned as is\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; resolve_revision(\u0026quot;openai-community/gpt2\u0026quot;, revision=revision) is revision\nTrue\u003c/p\u003e\n\u003ch1\u003eAnother repo =\u0026gt; \u0026quot;main\u0026quot; is resolved again for that repo\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; resolve_revision(\u0026quot;openai-community/gpt2-medium\u0026quot;, revision=revision).resolved\n'6dcaa7a952f72f9298047fd5137cd6e4f05f41da'\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/manage-cache#pin-a-revision-advanced\"\u003eManage cache — Pin a revision\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Download] A \u003ccode\u003eResolvedRevision\u003c/code\u003e only pins the repo it was resolved for by \u003ca href=\"https://github.com/Wauplin\"\u003e\u003ccode\u003e@​Wauplin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4767\"\u003e#4767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDo not require the \u003ccode\u003econversational\u003c/code\u003e tag for chat-completion on hf-inference: any model with pipeline tag \u003ccode\u003etext-generation\u003c/code\u003e or \u003ccode\u003eimage-text-to-text\u003c/code\u003e can now be served, mirroring the updated provider-side rules by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4784\"\u003e#4784\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\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/huggingface/huggingface_hub/commit/48ef2781c2c4c2247431c97efcd5487e89d42732\"\u003e\u003ccode\u003e48ef278\u003c/code\u003e\u003c/a\u003e Release: v1.30.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/a073ecb91bfdb5966d1fcf22623e4f83faf0c853\"\u003e\u003ccode\u003ea073ecb\u003c/code\u003e\u003c/a\u003e Release: v1.30.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b84090bcbcd96eeaf4c78b6280b2ce2cea528288\"\u003e\u003ccode\u003eb84090b\u003c/code\u003e\u003c/a\u003e [Release] Consolidate the HF CLI skill sync into the release workflow (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4765\"\u003e#4765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/176d4f378d49e699c811b18e21765ef5a1763c91\"\u003e\u003ccode\u003e176d4f3\u003c/code\u003e\u003c/a\u003e [CI] Disable auto close (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4800\"\u003e#4800\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/f0a5c6d08298760b2a030c4c5df608369632b7e1\"\u003e\u003ccode\u003ef0a5c6d\u003c/code\u003e\u003c/a\u003e [Inference Providers] Do not require the conversational tag for chat-completi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/6a2eb09daf1f9258e7f69c1d50a870fdb7235742\"\u003e\u003ccode\u003e6a2eb09\u003c/code\u003e\u003c/a\u003e [Sandbox] Document experimental status (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4783\"\u003e#4783\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/94cb25dada381d14e54b16dcfe92436be244fca9\"\u003e\u003ccode\u003e94cb25d\u003c/code\u003e\u003c/a\u003e [CI] Fix torch_1.11 case-arm label to match renamed matrix entry (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4776\"\u003e#4776\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4cc16bc22402e2a540f60d05beb406921072a032\"\u003e\u003ccode\u003e4cc16bc\u003c/code\u003e\u003c/a\u003e [Download] A \u003ccode\u003eResolvedRevision\u003c/code\u003e only pins the repo it was resolved for (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4767\"\u003e#4767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/1de481786c0440d6de2cea38bab4faa88612e821\"\u003e\u003ccode\u003e1de4817\u003c/code\u003e\u003c/a\u003e [Download] Follow redirects between Hub hosts when resolving files (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4739\"\u003e#4739\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/97655e88b1c1374b0576659c6a7ffe8c59cedfcb\"\u003e\u003ccode\u003e97655e8\u003c/code\u003e\u003c/a\u003e Align \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e filtering with \u003ccode\u003ehf jobs ls\u003c/code\u003e (\u003ccode\u003e--status\u003c/code\u003e/`--label...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.27.0...v1.30.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.2\u003c/h2\u003e\n\u003cp\u003eThis is the last v0 release, we are moving to v1!!\u003c/p\u003e\n\u003cp\u003eMore details coming soon 👀\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate daachorse from 1.0.1 to 3.0.0 by \u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2050\"\u003ehuggingface/tokenizers#2050\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCi test fixes by \u003ca href=\"https://github.com/sebpop\"\u003e\u003ccode\u003e@​sebpop\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2079\"\u003ehuggingface/tokenizers#2079\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid full vocab clone in get_vocab_size() by \u003ca href=\"https://github.com/eunseo9311\"\u003e\u003ccode\u003e@​eunseo9311\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2074\"\u003ehuggingface/tokenizers#2074\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: pin benchmark jobs to a larger dedicated runner by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2084\"\u003ehuggingface/tokenizers#2084\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: target benchmark runners by group, not nonexistent label by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2090\"\u003ehuggingface/tokenizers#2090\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBindings: acquire model read-lock once per call instead of per pre-token by \u003ca href=\"https://github.com/sebpop\"\u003e\u003ccode\u003e@​sebpop\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2072\"\u003ehuggingface/tokenizers#2072\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: split audit in a separate job by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2103\"\u003ehuggingface/tokenizers#2103\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: install libcairo on benchmark runners by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2100\"\u003ehuggingface/tokenizers#2100\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(ci): enable npm's trusted publisher for releases by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2111\"\u003ehuggingface/tokenizers#2111\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: bump pyo3 to version 0.29 by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2115\"\u003ehuggingface/tokenizers#2115\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: add benchmarks for the \u003ccode\u003edecode\u003c/code\u003e API by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2099\"\u003ehuggingface/tokenizers#2099\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: cache HF test data and authenticate Hub downloads to avoid rate limits by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2102\"\u003ehuggingface/tokenizers#2102\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImplementing Parity-aware BPE by \u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/1974\"\u003ehuggingface/tokenizers#1974\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake doc builds faster by \u003ca href=\"https://github.com/mishig25\"\u003e\u003ccode\u003e@​mishig25\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2158\"\u003ehuggingface/tokenizers#2158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump websocket-driver from 0.7.4 to 0.7.5 in /tokenizers/examples/unstable_wasm/www 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/huggingface/tokenizers/pull/2208\"\u003ehuggingface/tokenizers#2208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump shell-quote from 1.8.3 to 1.10.0 in /tokenizers/examples/unstable_wasm/www 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/huggingface/tokenizers/pull/2244\"\u003ehuggingface/tokenizers#2244\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: remove stale examples (kills 50% of dependabot traffic) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2285\"\u003ehuggingface/tokenizers#2285\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(node): drop 8 unused devDependencies by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2286\"\u003ehuggingface/tokenizers#2286\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: pin every action to one SHA, drop stale audit suppressions by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2291\"\u003ehuggingface/tokenizers#2291\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(node): take node security alerts from 33 to 0 by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2287\"\u003ehuggingface/tokenizers#2287\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(python): pin the ruff rule set so a ruff release can't redden main by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2292\"\u003ehuggingface/tokenizers#2292\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a ParityBpeTrainer example and list it in the trainers API docs by \u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2217\"\u003ehuggingface/tokenizers#2217\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/eunseo9311\"\u003e\u003ccode\u003e@​eunseo9311\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2074\"\u003ehuggingface/tokenizers#2074\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/1974\"\u003ehuggingface/tokenizers#1974\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.23.1...v0.23.2\"\u003ehttps://github.com/huggingface/tokenizers/compare/v0.23.1...v0.23.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\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/huggingface/tokenizers/commit/88a4498ad4ea1a9487b0a9b0ff881383fd5a06a3\"\u003e\u003ccode\u003e88a4498\u003c/code\u003e\u003c/a\u003e add lock\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/e4ea65f27057e593656ff1335b95afe2e552b88d\"\u003e\u003ccode\u003ee4ea65f\u003c/code\u003e\u003c/a\u003e real release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/7c5964b4afae7b710d254eacd5a9fa180ba2cfef\"\u003e\u003ccode\u003e7c5964b\u003c/code\u003e\u003c/a\u003e add lock\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bc405ad60991a0639f8b09b40f13f91c38e50e87\"\u003e\u003ccode\u003ebc405ad\u003c/code\u003e\u003c/a\u003e push rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/d5827816baedcbf1cb5b452dea8048150b6872df\"\u003e\u003ccode\u003ed582781\u003c/code\u003e\u003c/a\u003e Add a ParityBpeTrainer example and list it in the trainers API docs (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2217\"\u003e#2217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/447890f84deab25794ccfdee2a877901b6893569\"\u003e\u003ccode\u003e447890f\u003c/code\u003e\u003c/a\u003e fix(python): pin the ruff rule set so a ruff release can't redden main (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2292\"\u003e#2292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/68b3ab7788b58408f37a3dc73eeabf2417d14c22\"\u003e\u003ccode\u003e68b3ab7\u003c/code\u003e\u003c/a\u003e chore(node): take node security alerts from 33 to 0 (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2287\"\u003e#2287\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/74ef81f64e6d1cd4979c56d7d75f3ce21ba11992\"\u003e\u003ccode\u003e74ef81f\u003c/code\u003e\u003c/a\u003e ci: pin every action to one SHA, drop stale audit suppressions (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2291\"\u003e#2291\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b26727f1a92cdf727cd965fc1c467a7c77c63aae\"\u003e\u003ccode\u003eb26727f\u003c/code\u003e\u003c/a\u003e chore(node): drop 8 unused devDependencies (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2286\"\u003e#2286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/7c7cfd838fb79e76aaba6b0931898073a784fb2a\"\u003e\u003ccode\u003e7c7cfd8\u003c/code\u003e\u003c/a\u003e chore: remove stale examples (kills 50% of dependabot traffic) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2285\"\u003e#2285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `fastapi` from 0.136.3 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15093\"\u003e#15093\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.10\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling sequences with nested Annotated types. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14874\"\u003e#14874\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Accept any base test failure as regression. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16092\"\u003e#16092\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Preserve pyt...\n\n_Description has been truncated_","html_url":"https://github.com/forwis/vllm-jasl/pull/13","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/forwis%2Fvllm-jasl/issues/13","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/13/packages"},{"uuid":"5366645977","node_id":"PR_kwDOTjoS1M8AAAABCa98AQ","number":19,"state":"open","title":"Bump the minor-update group across 1 directory with 189 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-06T17:50:34.000Z","updated_at":"2026-09-06T17:50:46.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-update","update_count":189,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"transformers","old_version":"5.14.1","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.2","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"fastapi","old_version":"0.136.3","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"starlette","old_version":"1.3.1","new_version":"1.6.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"prometheus-fastapi-instrumentator","old_version":"8.0.2","new_version":"8.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"pyzmq","old_version":"27.1.0","new_version":"27.2.0","repository_url":"https://github.com/zeromq/pyzmq"},{"name":"python-json-logger","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"pybase64","old_version":"1.4.3","new_version":"1.5.0","repository_url":"https://github.com/mayeut/pybase64"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions-ai","old_version":"0.4.13","new_version":"0.5.1"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"torchcodec","old_version":"0.14.0+cu130","new_version":"0.16.0","repository_url":"https://github.com/pytorch/torchcodec"},{"name":"auto-round-lib","old_version":"0.14.1","new_version":"0.15.0","repository_url":"https://github.com/intel/auto-round"},{"name":"tpu-inference","old_version":"0.25.0","new_version":"0.28.0","repository_url":"https://github.com/vllm-project/tpu-inference"},{"name":"pynvvideocodec","old_version":"2.0.4","new_version":"2.2.2"},{"name":"nvidia-cutlass-dsl","old_version":"4.6.0","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.8","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"anyio","old_version":"4.14.1","new_version":"4.15.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"bitsandbytes","old_version":"0.49.2","new_version":"0.50.2","repository_url":"https://github.com/bitsandbytes-foundation/bitsandbytes"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.87","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.87","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"cohere-melody","old_version":"0.9.0","new_version":"0.13.4","repository_url":"https://github.com/cohere-ai/melody"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.3.0","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.1","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"detect-installer","old_version":"0.1.0","new_version":"0.2.1"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi-cloud-cli","old_version":"0.21.0","new_version":"0.25.0","repository_url":"https://github.com/fastapilabs/fastapi-cloud-cli"},{"name":"fastar","old_version":"0.11.0","new_version":"0.12.0","repository_url":"https://github.com/DoctorJohn/fastar"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"h11","old_version":"0.14.0","new_version":"0.16.0","repository_url":"https://github.com/python-hyper/h11"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"hf-xet","old_version":"1.5.1","new_version":"1.6.0","repository_url":"https://github.com/huggingface/xet-core"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"huggingface-hub","old_version":"1.22.0","new_version":"1.30.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"idna","old_version":"3.10","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.15.0","new_version":"0.16.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema-rs","old_version":"0.46.5","new_version":"0.53.0","repository_url":"https://github.com/Stranger6667/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llguidance","old_version":"1.7.6","new_version":"1.8.0","repository_url":"https://github.com/microsoft/llguidance"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.1.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.20.0.48","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.1","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.29.7","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"peft","old_version":"0.19.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.7","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pydantic-settings","old_version":"2.14.2","new_version":"2.15.0","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pyrate-limiter","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/vutran1710/PyrateLimiter"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"rignore","old_version":"0.7.6","new_version":"0.8.1"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"schemathesis","old_version":"4.21.6","new_version":"4.25.2","repository_url":"https://github.com/schemathesis/schemathesis"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"sentry-sdk","old_version":"2.63.0","new_version":"2.68.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"triton","old_version":"3.7.1","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.26.8","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.4","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.6","repository_url":"https://github.com/astral-sh/ruff"},{"name":"zentorch","old_version":"2.11.0.0","new_version":"2.13.0.0","repository_url":"https://github.com/amd/ZenDNN-pytorch-plugin"},{"name":"helion","old_version":"1.1.0","new_version":"1.4.0","repository_url":"https://github.com/pytorch/helion"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 189 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [transformers](https://github.com/huggingface/transformers) | `5.14.1` | `5.16.1` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.2` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.136.3` | `0.141.1` |\n| [starlette](https://github.com/Kludex/starlette) | `1.3.1` | `1.6.0` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `8.0.2` | `8.1.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [pyzmq](https://github.com/zeromq/pyzmq) | `27.1.0` | `27.2.0` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `4.1.0` | `4.2.0` |\n| [pybase64](https://github.com/mayeut/pybase64) | `1.4.3` | `1.5.0` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| opentelemetry-semantic-conventions-ai | `0.4.13` | `0.5.1` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [torchcodec](https://github.com/pytorch/torchcodec) | `0.14.0+cu130` | `0.16.0` |\n| [auto-round-lib](https://github.com/intel/auto-round) | `0.14.1` | `0.15.0` |\n| [tpu-inference](https://github.com/vllm-project/tpu-inference) | `0.25.0` | `0.28.0` |\n| pynvvideocodec | `2.0.4` | `2.2.2` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.6.0` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.8` | `0.2.6` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.14.1` | `4.15.0` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [bitsandbytes](https://github.com/bitsandbytes-foundation/bitsandbytes) | `0.49.2` | `0.50.2` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.87` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.87` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| [cohere-melody](https://github.com/cohere-ai/melody) | `0.9.0` | `0.13.4` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.1` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.3.0` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.1` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| detect-installer | `0.1.0` | `0.2.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi-cloud-cli](https://github.com/fastapilabs/fastapi-cloud-cli) | `0.21.0` | `0.25.0` |\n| [fastar](https://github.com/DoctorJohn/fastar) | `0.11.0` | `0.12.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [hf-xet](https://github.com/huggingface/xet-core) | `1.5.1` | `1.6.0` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.22.0` | `1.30.0` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.19` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.15.0` | `0.16.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonschema-rs](https://github.com/Stranger6667/jsonschema) | `0.46.5` | `0.53.0` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llguidance](https://github.com/microsoft/llguidance) | `1.7.6` | `1.8.0` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.1.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.20.0.48` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.1` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.29.7` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [peft](https://github.com/huggingface/peft) | `0.19.1` | `0.20.0` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.7` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.14.2` | `2.15.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pyrate-limiter](https://github.com/vutran1710/PyrateLimiter) | `4.4.0` | `4.5.0` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| rignore | `0.7.6` | `0.8.1` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [schemathesis](https://github.com/schemathesis/schemathesis) | `4.21.6` | `4.25.2` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.63.0` | `2.68.1` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [triton](https://github.com/triton-lang/triton) | `3.7.1` | `3.8.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.26.8` | `0.27.2` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.4` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.6` |\n| [zentorch](https://github.com/amd/ZenDNN-pytorch-plugin) | `2.11.0.0` | `2.13.0.0` |\n| [helion](https://github.com/pytorch/helion) | `1.1.0` | `1.4.0` |\n\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 5.14.1 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\n\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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.14.1...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.2\u003c/h2\u003e\n\u003cp\u003eThis is the last v0 release, we are moving to v1!!\u003c/p\u003e\n\u003cp\u003eMore details coming soon 👀\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate daachorse from 1.0.1 to 3.0.0 by \u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2050\"\u003ehuggingface/tokenizers#2050\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCi test fixes by \u003ca href=\"https://github.com/sebpop\"\u003e\u003ccode\u003e@​sebpop\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2079\"\u003ehuggingface/tokenizers#2079\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid full vocab clone in get_vocab_size() by \u003ca href=\"https://github.com/eunseo9311\"\u003e\u003ccode\u003e@​eunseo9311\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2074\"\u003ehuggingface/tokenizers#2074\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: pin benchmark jobs to a larger dedicated runner by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2084\"\u003ehuggingface/tokenizers#2084\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: target benchmark runners by group, not nonexistent label by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2090\"\u003ehuggingface/tokenizers#2090\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBindings: acquire model read-lock once per call instead of per pre-token by \u003ca href=\"https://github.com/sebpop\"\u003e\u003ccode\u003e@​sebpop\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2072\"\u003ehuggingface/tokenizers#2072\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: split audit in a separate job by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2103\"\u003ehuggingface/tokenizers#2103\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: install libcairo on benchmark runners by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2100\"\u003ehuggingface/tokenizers#2100\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(ci): enable npm's trusted publisher for releases by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2111\"\u003ehuggingface/tokenizers#2111\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: bump pyo3 to version 0.29 by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2115\"\u003ehuggingface/tokenizers#2115\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: add benchmarks for the \u003ccode\u003edecode\u003c/code\u003e API by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2099\"\u003ehuggingface/tokenizers#2099\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: cache HF test data and authenticate Hub downloads to avoid rate limits by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2102\"\u003ehuggingface/tokenizers#2102\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImplementing Parity-aware BPE by \u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/1974\"\u003ehuggingface/tokenizers#1974\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake doc builds faster by \u003ca href=\"https://github.com/mishig25\"\u003e\u003ccode\u003e@​mishig25\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2158\"\u003ehuggingface/tokenizers#2158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump websocket-driver from 0.7.4 to 0.7.5 in /tokenizers/examples/unstable_wasm/www 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/huggingface/tokenizers/pull/2208\"\u003ehuggingface/tokenizers#2208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump shell-quote from 1.8.3 to 1.10.0 in /tokenizers/examples/unstable_wasm/www 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/huggingface/tokenizers/pull/2244\"\u003ehuggingface/tokenizers#2244\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: remove stale examples (kills 50% of dependabot traffic) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2285\"\u003ehuggingface/tokenizers#2285\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(node): drop 8 unused devDependencies by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2286\"\u003ehuggingface/tokenizers#2286\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: pin every action to one SHA, drop stale audit suppressions by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2291\"\u003ehuggingface/tokenizers#2291\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(node): take node security alerts from 33 to 0 by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2287\"\u003ehuggingface/tokenizers#2287\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(python): pin the ruff rule set so a ruff release can't redden main by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2292\"\u003ehuggingface/tokenizers#2292\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a ParityBpeTrainer example and list it in the trainers API docs by \u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2217\"\u003ehuggingface/tokenizers#2217\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/eunseo9311\"\u003e\u003ccode\u003e@​eunseo9311\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2074\"\u003ehuggingface/tokenizers#2074\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/1974\"\u003ehuggingface/tokenizers#1974\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.23.1...v0.23.2\"\u003ehttps://github.com/huggingface/tokenizers/compare/v0.23.1...v0.23.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\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/huggingface/tokenizers/commit/88a4498ad4ea1a9487b0a9b0ff881383fd5a06a3\"\u003e\u003ccode\u003e88a4498\u003c/code\u003e\u003c/a\u003e add lock\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/e4ea65f27057e593656ff1335b95afe2e552b88d\"\u003e\u003ccode\u003ee4ea65f\u003c/code\u003e\u003c/a\u003e real release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/7c5964b4afae7b710d254eacd5a9fa180ba2cfef\"\u003e\u003ccode\u003e7c5964b\u003c/code\u003e\u003c/a\u003e add lock\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bc405ad60991a0639f8b09b40f13f91c38e50e87\"\u003e\u003ccode\u003ebc405ad\u003c/code\u003e\u003c/a\u003e push rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/d5827816baedcbf1cb5b452dea8048150b6872df\"\u003e\u003ccode\u003ed582781\u003c/code\u003e\u003c/a\u003e Add a ParityBpeTrainer example and list it in the trainers API docs (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2217\"\u003e#2217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/447890f84deab25794ccfdee2a877901b6893569\"\u003e\u003ccode\u003e447890f\u003c/code\u003e\u003c/a\u003e fix(python): pin the ruff rule set so a ruff release can't redden main (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2292\"\u003e#2292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/68b3ab7788b58408f37a3dc73eeabf2417d14c22\"\u003e\u003ccode\u003e68b3ab7\u003c/code\u003e\u003c/a\u003e chore(node): take node security alerts from 33 to 0 (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2287\"\u003e#2287\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/74ef81f64e6d1cd4979c56d7d75f3ce21ba11992\"\u003e\u003ccode\u003e74ef81f\u003c/code\u003e\u003c/a\u003e ci: pin every action to one SHA, drop stale audit suppressions (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2291\"\u003e#2291\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b26727f1a92cdf727cd965fc1c467a7c77c63aae\"\u003e\u003ccode\u003eb26727f\u003c/code\u003e\u003c/a\u003e chore(node): drop 8 unused devDependencies (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2286\"\u003e#2286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/7c7cfd838fb79e76aaba6b0931898073a784fb2a\"\u003e\u003ccode\u003e7c7cfd8\u003c/code\u003e\u003c/a\u003e chore: remove stale examples (kills 50% of dependabot traffic) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2285\"\u003e#2285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `fastapi` from 0.136.3 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15093\"\u003e#15093\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.10\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling sequences with nested Annotated types. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14874\"\u003e#14874\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Accept any base test failure as regression. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16092\"\u003e#16092\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Preserve pytest exit code in regression check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16091\"\u003e#16091\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Test PR regressions against base code. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16090\"\u003e#16090\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.9\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eexclude_defaults\u003c/code\u003e not propagated to dict keys and values in \u003ccode\u003ejsonable_encoder\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16043\"\u003e#16043\u003c/a\u003e by \u003ca href=\"https://github.com/MBGrao\"\u003e\u003ccode\u003e@​MBGrao\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\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/fastapi/fastapi/commit/95f8322ee1dcda7ceace7b1c4f6c9915b36d748f\"\u003e\u003ccode\u003e95f8322\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16106\"\u003e#16106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f137944c435cff4e4b30ea7d12855ea88ddb868c\"\u003e\u003ccode\u003ef137944\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d62354434b2e508fe89024213b220ca8e67dea5e\"\u003e\u003ccode\u003ed623544\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for background tasks and headers from dependencies in `app.fron...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1d211b9c1009d577f39fa2b19b10d9a93a72a0ed\"\u003e\u003ccode\u003e1d211b9\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8a1f8768411e62093e70ce142ea10863a485643c\"\u003e\u003ccode\u003e8a1f876\u003c/code\u003e\u003c/a\u003e 📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16104\"\u003e#16104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c7e7b651d6946c07cc9f675f39c9501d08319e57\"\u003e\u003ccode\u003ec7e7b65\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.0 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16103\"\u003e#16103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/6bceb84053eb2405e9c000aad30ea13367b5ee32\"\u003e\u003ccode\u003e6bceb84\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/5429fed84e84e32672c25a953eca3429b841ce90\"\u003e\u003ccode\u003e5429fed\u003c/code\u003e\u003c/a\u003e ✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more conven...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/628663f4f899c465da423bce681c7adf9a218948\"\u003e\u003ccode\u003e628663f\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.140.13 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16096\"\u003e#16096\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/0b54fd00273019034dd30b120ac842e65d80690e\"\u003e\u003ccode\u003e0b54fd0\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.136.3...0.141.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `starlette` from 1.3.1 to 1.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kludex/starlette/releases\"\u003estarlette's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.6.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003emax_body_size\u003c/code\u003e to \u003ccode\u003eStarlette\u003c/code\u003e and route classes by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3431\"\u003eKludex/starlette#3431\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ehttp.response.debug\u003c/code\u003e info via response extensions by \u003ca href=\"https://github.com/y2kbugger\"\u003e\u003ccode\u003e@​y2kbugger\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3130\"\u003eKludex/starlette#3130\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/y2kbugger\"\u003e\u003ccode\u003e@​y2kbugger\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3130\"\u003eKludex/starlette#3130\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/starlette/compare/1.5.1...1.6.0\"\u003ehttps://github.com/Kludex/starlette/compare/1.5.1...1.6.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.5.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eReject inverted single-byte Range like \u003ccode\u003ebytes=5-4\u003c/code\u003e by \u003ca href=\"https://github.com/nikolauspschuetz\"\u003e\u003ccode\u003e@​nikolauspschuetz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3389\"\u003eencode/starlette#3389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLimit \u003ccode\u003eFileResponse\u003c/code\u003e to 100 ranges by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3430\"\u003eencode/starlette#3430\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/encode/starlette/compare/1.5.0...1.5.1\"\u003ehttps://github.com/encode/starlette/compare/1.5.0...1.5.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.5.0\u003c/h2\u003e\n\u003cp\u003eThis release is all about giving \u003ccode\u003eGZipMiddleware\u003c/code\u003e some love. 🗜️\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eexclude_content_types\u003c/code\u003e parameter to \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3418\"\u003eencode/starlette#3418\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlush GZip output for each streamed chunk by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3419\"\u003eencode/starlette#3419\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSkip compression of partial responses in \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3420\"\u003eencode/starlette#3420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpand default excluded content types in \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3421\"\u003eencode/starlette#3421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/encode/starlette/compare/1.4.1...1.5.0\"\u003ehttps://github.com/encode/starlette/compare/1.4.1...1.5.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.4.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault \u003ccode\u003ethread_minimum_size\u003c/code\u003e in \u003ccode\u003eGZipResponder\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3415\"\u003eKludex/starlette#3415\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/starlette/compare/1.4.0...1.4.1\"\u003ehttps://github.com/Kludex/starlette/compare/1.4.0...1.4.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLazily allocate GZipMiddleware compression resourc...\n\n_Description has been truncated_","html_url":"https://github.com/codesque16/vllm_fork_testing/pull/19","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/codesque16%2Fvllm_fork_testing/issues/19","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/19/packages"},{"uuid":"5365413929","node_id":"PR_kwDOUPb-sM8AAAABCaCgCA","number":11,"state":"closed","title":"build(deps): bump the optional-backends group in /service/scripts with 6 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-09-06T14:06:51.000Z","author_association":null,"state_reason":null,"created_at":"2026-09-06T14:01:41.000Z","updated_at":"2026-09-06T14:06:52.000Z","time_to_close":310,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"optional-backends","update_count":6,"packages":[{"name":"diffusers","old_version":"0.27.2","new_version":"0.40.0","repository_url":"https://github.com/huggingface/diffusers"},{"name":"transformers","old_version":"4.37.2","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"huggingface-hub","old_version":"0.24.0","new_version":"1.30.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.2","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"sentence-transformers","old_version":"6.0.0","new_version":"6.0.1","repository_url":"https://github.com/huggingface/sentence-transformers"}],"path":"/service/scripts","ecosystem":"pip"},"body":"Updates the requirements on [diffusers](https://github.com/huggingface/diffusers), [transformers](https://github.com/huggingface/transformers), [huggingface-hub](https://github.com/huggingface/huggingface_hub), [torch](https://github.com/pytorch/pytorch), [tokenizers](https://github.com/huggingface/tokenizers) and [sentence-transformers](https://github.com/huggingface/sentence-transformers) to permit the latest version.\nUpdates `diffusers` from 0.27.2 to 0.40.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/diffusers/releases\"\u003ediffusers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eDiffusers 0.40.0: New pipelines, tensor-parallel support, improved CLI, and more\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!TIP]\nThis release features several new pipelines, including LTX2.5, MiniMax H3, and Wan Animate 2. We're also graduating Modular Diffusers out of the experimental phase and announcing its stable support. Additionally, this release includes minimal support for tensor-parallel. There's a lot more that went down in this release. So, please consult the notes for details.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch2\u003eNew Pipelines\u003c/h2\u003e\n\u003ch3\u003eMiniMax-H3\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://huggingface.co/docs/diffusers/main/api/pipelines/minimax_h3\"\u003e\u003cstrong\u003eMiniMax-H3\u003c/strong\u003e\u003c/a\u003e generates video and its soundtrack together. A single transformer denoises one packed sequence containing the text conditioning, the conditioning media, and the target video \u003cem\u003eand\u003c/em\u003e audio latents — there is no separate vocoder and no post-hoc audio pass. Its conditioner is a \u003ccode\u003eQwen3VLForConditionalGeneration\u003c/code\u003e whose unnormalized 50th-decoder-layer hidden state is read instead of the last one.\u003c/p\u003e\n\u003cp\u003eMiniMax-H3 is integrated as \u003ca href=\"https://huggingface.co/docs/diffusers/main/modular_diffusers/overview\"\u003eModular Diffusers\u003c/a\u003e blocks only — \u003ccode\u003eMiniMaxH3Blocks\u003c/code\u003e and their \u003ccode\u003eMiniMaxH3ModularPipeline\u003c/code\u003e are the whole integration. The conversion ships both checkpoint partitions in one repository and exposes three workflows (\u003ccode\u003et2va\u003c/code\u003e, \u003ccode\u003efl2va\u003c/code\u003e, \u003ccode\u003eref2va\u003c/code\u003e) that can be pruned at \u003ccode\u003efrom_pretrained\u003c/code\u003e time so only that task's components are declared and downloaded.\u003c/p\u003e\n\u003ch3\u003eMiniMax Music 3\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://huggingface.co/docs/diffusers/main/api/pipelines/minimax_music3\"\u003e\u003cstrong\u003eMiniMax Music 3\u003c/strong\u003e\u003c/a\u003e produces complete songs up to five minutes long from lyrics and a music description, with expressive vocals and long-range structure. It is a hybrid of an autoregressive and a diffusion stage: an 8B Qwen3-based global language model predicts one semantic audio token per frame while a small depth decoder fills in seven residual RVQ codebooks, and their fused hidden states condition a 2.4B flow-matching transformer that produces Flow-VAE latents in overlapping chunks. A DAC-style decoder turns the latents into 44.1 kHz stereo audio.\u003c/p\u003e\n\u003ch3\u003eStable Audio 3\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://huggingface.co/docs/diffusers/main/api/pipelines/stable_audio_3\"\u003e\u003cstrong\u003eStable Audio 3\u003c/strong\u003e\u003c/a\u003e is a text-to-audio model from Stability AI that generates high-quality stereo audio at 44.1 kHz. It uses a rectified-flow DiT conditioned on a frozen T5Gemma text encoder (via cross-attention) and on duration (a float embedded by \u003ccode\u003eStableAudio3DurationEmbedder\u003c/code\u003e and used for adaptive layer norm), and decodes with the SAME (Semantically-Aligned Music Encoder) autoencoder, \u003ccode\u003eAutoencoderSAME\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThree pipelines ship: \u003ccode\u003eStableAudio3Pipeline\u003c/code\u003e, \u003ccode\u003eStableAudio3AudioToAudioPipeline\u003c/code\u003e, and \u003ccode\u003eStableAudio3InpaintPipeline\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/buffett0323\"\u003e\u003ccode\u003e@​buffett0323\u003c/code\u003e\u003c/a\u003e for the contribution (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/pull/14119\"\u003ehuggingface/diffusers#14119\u003c/a\u003e).\u003c/p\u003e\n\u003ch3\u003eLTX-2.5\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://huggingface.co/docs/diffusers/main/api/pipelines/ltx2#ltx-25\"\u003e\u003cstrong\u003eLTX-2.5\u003c/strong\u003e\u003c/a\u003e reuses the existing \u003ccode\u003eLTX2Pipeline\u003c/code\u003e / \u003ccode\u003eLTX2VideoTransformer3DModel\u003c/code\u003e / \u003ccode\u003eAutoencoderKLLTX2Video\u003c/code\u003e classes — there is no separate pipeline class. The user-visible difference is the text encoder: LTX-2.5 is paired with a Gemma 4 (\u003ccode\u003egemma4_unified\u003c/code\u003e) checkpoint, loaded automatically from a converted LTX-2.5 repo.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://huggingface.co/Lightricks/LTX-2.5-Diffusers\"\u003e\u003ccode\u003eLightricks/LTX-2.5-Diffusers\u003c/code\u003e\u003c/a\u003e ships both the distilled DiT (\u003ccode\u003etransformer/\u003c/code\u003e) and the full/SFT DiT (\u003ccode\u003etransformer_full/\u003c/code\u003e), plus everything two-stage generation needs. Alongside the checkpoint support, this release adds:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eLTX2VideoDiffusionDecoderModel\u003c/code\u003e and \u003ccode\u003eLTX2VideoDiffusionDecodePipeline\u003c/code\u003e — a second video decoder over the same latent space, so latents are interchangeable between decoders.\u003c/li\u003e\n\u003cli\u003eA \u003ccode\u003eduration_head\u003c/code\u003e that predicts shot length from the text-connector output, so \u003ccode\u003enum_frames\u003c/code\u003e is auto-predicted by default when the loaded pipeline has one.\u003c/li\u003e\n\u003cli\u003ePrompt enhancement through a separate off-the-shelf \u003ccode\u003egoogle/gemma-4-E2B-it\u003c/code\u003e checkpoint (\u003ccode\u003eenable_prompt_enhancement=True\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eLTX25AutoBlocks\u003c/code\u003e for Modular Diffusers (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/pull/14453\"\u003e#14453\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eWan-Animate-2\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://huggingface.co/docs/diffusers/main/api/pipelines/wan_animate_2\"\u003e\u003cstrong\u003eWan-Animate-2\u003c/strong\u003e\u003c/a\u003e by the Alibaba Wan Team animates a reference character image with the motion of a driving video. The driving video is processed in fixed-length segments: each segment runs a reference-extraction pass that caches the driving segment's K/V in every transformer layer, denoises against that cache, and is decoded inside the loop, because the next segment conditions on the previous segment's decoded tail frames.\u003c/p\u003e\n\u003cp\u003eTwo presets are available — the base checkpoint samples with classifier-free guidance, and the distilled checkpoint samples in few steps without it. Guidance is owned by the pipeline's guider component, so there is no \u003ccode\u003eguidance_scale\u003c/code\u003e argument.\u003c/p\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/kelseyee\"\u003e\u003ccode\u003e@​kelseyee\u003c/code\u003e\u003c/a\u003e for authoring the integration (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/pull/14413\"\u003ehuggingface/diffusers#14413\u003c/a\u003e).\u003c/p\u003e\n\u003ch3\u003eJoyAI-Image-Edit-Plus\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://huggingface.co/docs/diffusers/main/api/pipelines/joyimage_edit_plus\"\u003e\u003cstrong\u003eJoyAI-Image-Edit-Plus\u003c/strong\u003e\u003c/a\u003e extends the JoyAI-Image family (an 8B MLLM paired with a 16B MMDiT) to multi-image instruction-guided editing. It accepts 1–5 reference images plus a text instruction and composes elements from the references into a new image.\u003c/p\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/tangyanf\"\u003e\u003ccode\u003e@​tangyanf\u003c/code\u003e\u003c/a\u003e for the contribution (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/pull/14032\"\u003ehuggingface/diffusers#14032\u003c/a\u003e).\u003c/p\u003e\n\u003ch3\u003eCosmos 3 follow-ups\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/huggingface/diffusers/commit/d035dcd7cc7c88e0a154609b62887d50bba9fdc2\"\u003e\u003ccode\u003ed035dcd\u003c/code\u003e\u003c/a\u003e Release: v0.40.0-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/5900dbf0daf2044a4cb3c0e8e185933148dee84a\"\u003e\u003ccode\u003e5900dbf\u003c/code\u003e\u003c/a\u003e [CI] Fix build and test step in release workflow (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/14543\"\u003e#14543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/3681e65996b4d2589219720101a6acbfd25073f8\"\u003e\u003ccode\u003e3681e65\u003c/code\u003e\u003c/a\u003e Restructure skill files and reference guides for CLI based installation.  (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/192cf685ec4a3f930f3f4c508f439731fca810f2\"\u003e\u003ccode\u003e192cf68\u003c/code\u003e\u003c/a\u003e [distributed] fix corrupted gradient problem under ring CP. (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/14274\"\u003e#14274\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/0aa743c08d153ba0df46bbe024a02cfaf658aec8\"\u003e\u003ccode\u003e0aa743c\u003c/code\u003e\u003c/a\u003e [tests] migrate lora tests for pipelines to use new mixins (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/14268\"\u003e#14268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/4e0466f3e5260f0d78b5e2b68ffbf27d819cc6db\"\u003e\u003ccode\u003e4e0466f\u003c/code\u003e\u003c/a\u003e fix: image preprocessing for cosmos3 (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/14519\"\u003e#14519\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/ac56fa2f25c1c15b4cbaa1e0b3255e9bc38c06dc\"\u003e\u003ccode\u003eac56fa2\u003c/code\u003e\u003c/a\u003e [CI] Fix authentication on forked PRs (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/14534\"\u003e#14534\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/7d2e86a85a372df75ee2ccefe84e5a44cfc60429\"\u003e\u003ccode\u003e7d2e86a\u003c/code\u003e\u003c/a\u003e [core] Support tensor parallelism for model inference (CUDA, Neuron) (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/13718\"\u003e#13718\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/360bef807475899c2e4d7d99c2f371148a78b1a7\"\u003e\u003ccode\u003e360bef8\u003c/code\u003e\u003c/a\u003e Feat -- Stable Audio 3 (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/14119\"\u003e#14119\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/aeda394db7d2f8a62475f2114da3b92e9588c42f\"\u003e\u003ccode\u003eaeda394\u003c/code\u003e\u003c/a\u003e [CI] Allow single file tests to run as fast tests  (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/14324\"\u003e#14324\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/diffusers/compare/v0.27.2...v0.40.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 4.37.2 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- 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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v4.37.2...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 0.24.0 to 1.30.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.30.0] Scheduled job filters, repo-aware revision pinning and more\u003c/h2\u003e\n\u003ch2\u003e🖥️ \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e can now filter by status, label and name\u003c/h2\u003e\n\u003cp\u003eYou can now filter scheduled jobs with \u003ccode\u003e--status\u003c/code\u003e (\u003ccode\u003eactive\u003c/code\u003e/\u003ccode\u003esuspended\u003c/code\u003e), repeatable \u003ccode\u003e-l\u003c/code\u003e/\u003ccode\u003e--label key=value\u003c/code\u003e and \u003ccode\u003e--name\u003c/code\u003e (a shortcut for \u003ccode\u003e--label name=NAME\u003c/code\u003e), matching the flags \u003ccode\u003ehf jobs ls\u003c/code\u003e already had. On the Python side, \u003ccode\u003eHfApi.list_scheduled_jobs\u003c/code\u003e gains a \u003ccode\u003elabels\u003c/code\u003e argument.\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\n\u003ccode\u003e-f\u003c/code\u003e/\u003ccode\u003e--filter\u003c/code\u003e on \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e is deprecated and no longer applied: it is accepted but ignored, with a warning pointing to the new flags. Migrate as shown below. The option itself will be removed in a future release.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003ehf jobs scheduled ls --all\r\nhf jobs scheduled ls --status suspended\r\nhf jobs scheduled ls --name hourly-task --label env=prod\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebefore\u003c/th\u003e\n\u003cth\u003eafter\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f name=daily-report\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--name daily-report\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f env=prod\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--label env=prod\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f suspend!=true\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e(default, or \u003ccode\u003e--status active\u003c/code\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f suspend=true\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--status suspended\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/jobs\"\u003eJobs guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAlign \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e filtering with \u003ccode\u003ehf jobs ls\u003c/code\u003e (\u003ccode\u003e--status\u003c/code\u003e/\u003ccode\u003e--label\u003c/code\u003e/\u003ccode\u003e--name\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4773\"\u003e#4773\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔖 \u003ccode\u003eResolvedRevision\u003c/code\u003e now pins the repo it was resolved for\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003eResolvedRevision\u003c/code\u003e didn't record which repo a commit hash was resolved against, so resolving \u003ccode\u003e\u0026quot;main\u0026quot;\u003c/code\u003e on two different repos returned the same commit oid. It now remembers its \u003ccode\u003erepo_id\u003c/code\u003e and \u003ccode\u003erepo_type\u003c/code\u003e: passed back for the same repo it is returned as is, for a different repo the requested revision is resolved again.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import resolve_revision\r\n\u0026gt;\u0026gt;\u0026gt; revision = resolve_revision(\u0026quot;openai-community/gpt2\u0026quot;)\r\n\u003ch1\u003eSame repo =\u0026gt; returned as is\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; resolve_revision(\u0026quot;openai-community/gpt2\u0026quot;, revision=revision) is revision\nTrue\u003c/p\u003e\n\u003ch1\u003eAnother repo =\u0026gt; \u0026quot;main\u0026quot; is resolved again for that repo\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; resolve_revision(\u0026quot;openai-community/gpt2-medium\u0026quot;, revision=revision).resolved\n'6dcaa7a952f72f9298047fd5137cd6e4f05f41da'\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/manage-cache#pin-a-revision-advanced\"\u003eManage cache — Pin a revision\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Download] A \u003ccode\u003eResolvedRevision\u003c/code\u003e only pins the repo it was resolved for by \u003ca href=\"https://github.com/Wauplin\"\u003e\u003ccode\u003e@​Wauplin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4767\"\u003e#4767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDo not require the \u003ccode\u003econversational\u003c/code\u003e tag for chat-completion on hf-inference: any model with pipeline tag \u003ccode\u003etext-generation\u003c/code\u003e or \u003ccode\u003eimage-text-to-text\u003c/code\u003e can now be served, mirroring the updated provider-side rules by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4784\"\u003e#4784\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/huggingface/huggingface_hub/commit/48ef2781c2c4c2247431c97efcd5487e89d42732\"\u003e\u003ccode\u003e48ef278\u003c/code\u003e\u003c/a\u003e Release: v1.30.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/a073ecb91bfdb5966d1fcf22623e4f83faf0c853\"\u003e\u003ccode\u003ea073ecb\u003c/code\u003e\u003c/a\u003e Release: v1.30.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b84090bcbcd96eeaf4c78b6280b2ce2cea528288\"\u003e\u003ccode\u003eb84090b\u003c/code\u003e\u003c/a\u003e [Release] Consolidate the HF CLI skill sync into the release workflow (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4765\"\u003e#4765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/176d4f378d49e699c811b18e21765ef5a1763c91\"\u003e\u003ccode\u003e176d4f3\u003c/code\u003e\u003c/a\u003e [CI] Disable auto close (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4800\"\u003e#4800\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/f0a5c6d08298760b2a030c4c5df608369632b7e1\"\u003e\u003ccode\u003ef0a5c6d\u003c/code\u003e\u003c/a\u003e [Inference Providers] Do not require the conversational tag for chat-completi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/6a2eb09daf1f9258e7f69c1d50a870fdb7235742\"\u003e\u003ccode\u003e6a2eb09\u003c/code\u003e\u003c/a\u003e [Sandbox] Document experimental status (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4783\"\u003e#4783\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/94cb25dada381d14e54b16dcfe92436be244fca9\"\u003e\u003ccode\u003e94cb25d\u003c/code\u003e\u003c/a\u003e [CI] Fix torch_1.11 case-arm label to match renamed matrix entry (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4776\"\u003e#4776\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4cc16bc22402e2a540f60d05beb406921072a032\"\u003e\u003ccode\u003e4cc16bc\u003c/code\u003e\u003c/a\u003e [Download] A \u003ccode\u003eResolvedRevision\u003c/code\u003e only pins the repo it was resolved for (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4767\"\u003e#4767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/1de481786c0440d6de2cea38bab4faa88612e821\"\u003e\u003ccode\u003e1de4817\u003c/code\u003e\u003c/a\u003e [Download] Follow redirects between Hub hosts when resolving files (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4739\"\u003e#4739\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/97655e88b1c1374b0576659c6a7ffe8c59cedfcb\"\u003e\u003ccode\u003e97655e8\u003c/code\u003e\u003c/a\u003e Align \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e filtering with \u003ccode\u003ehf jobs ls\u003c/code\u003e (\u003ccode\u003e--status\u003c/code\u003e/`--label...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v0.24.0...v1.30.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `torch` to 2.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytorch/pytorch/releases\"\u003etorch's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ePyTorch 2.14.0 Release Notes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#highlights\"\u003eHighlights\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#backwards-incompatible-changes\"\u003eBackwards Incompatible Changes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#new-features\"\u003eNew Features\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#improvements\"\u003eImprovements\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#bug-fixes\"\u003eBug fixes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#performance\"\u003ePerformance\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#documentation\"\u003eDocumentation\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#security\"\u003eSecurity\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#developers\"\u003eDevelopers\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eHighlights\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003eFor more details about these highlighted features, you can look at the release blogpost. Below are the full release notes for this release.\u003c/p\u003e\n\u003ch1\u003eBackwards Incompatible Changes\u003c/h1\u003e\n\u003ch2\u003etorch.nn\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003etorch.nn.LinearCrossEntropyOptions\u003c/code\u003e no longer accepts \u003ccode\u003eacc_policy=\u0026quot;balanced\u0026quot;\u003c/code\u003e; use \u003ccode\u003e\u0026quot;compact\u0026quot;\u003c/code\u003e instead (\u003ca href=\"https://redirect.github.com/pytorch/pytorch/issues/188283\"\u003e#188283\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003e\u0026quot;balanced\u0026quot;\u003c/code\u003e policy was removed because \u003ccode\u003e\u0026quot;compact\u0026quot;\u003c/code\u003e provides the same weight-gradient accumulation precision with lower memory use on CUDA, already uses the equivalent scratch layout for mixed-precision inputs on other devices, and was never selected by \u003ccode\u003e\u0026quot;auto\u0026quot;\u003c/code\u003e. Constructing the options with \u003ccode\u003eacc_policy=\u0026quot;balanced\u0026quot;\u003c/code\u003e now raises \u003ccode\u003eValueError: invalid acc_policy: 'balanced'; expected one of 'auto', 'accurate', 'compact'\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eBefore:\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eoptions = torch.nn.LinearCrossEntropyOptions(acc_policy=\u0026quot;balanced\u0026quot;)\r\nloss = torch.nn.functional.linear_cross_entropy(\r\n    input, linear_weight, target, options=options\r\n)\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eAfter:\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eoptions = torch.nn.LinearCrossEntropyOptions(acc_policy=\u0026quot;compact\u0026quot;)\r\nloss = torch.nn.functional.linear_cross_entropy(\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytorch/pytorch/blob/main/RELEASE.md\"\u003etorch's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eReleasing PyTorch\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#release-compatibility-matrix\"\u003eRelease Compatibility Matrix\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#pytorch-cuda-support-matrix\"\u003ePyTorch CUDA Support Matrix\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#release-cadence\"\u003eRelease Cadence\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#general-overview\"\u003eGeneral Overview\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#frequently-asked-questions\"\u003eFrequently Asked Questions\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#cutting-a-release-branch-preparations\"\u003eCutting a release branch preparations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#cutting-release-branches\"\u003eCutting release branches\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#pytorchpytorch\"\u003e\u003ccode\u003epytorch/pytorch\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#pytorch-ecosystem-libraries\"\u003ePyTorch ecosystem libraries\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#making-release-branch-specific-changes-for-pytorch\"\u003eMaking release branch specific changes for PyTorch\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#making-release-branch-specific-changes-for-ecosystem-libraries\"\u003eMaking release branch specific changes for ecosystem libraries\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#running-launch-execution-team-core-xfn-sync\"\u003eRunning Launch Execution team Core XFN sync\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#drafting-rcs-release-candidates-for-pytorch-and-domain-libraries\"\u003eDrafting RCs (https://github.com/pytorch/pytorch/blob/main/Release Candidates) for PyTorch and domain libraries\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#release-candidate-storage\"\u003eRelease Candidate Storage\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#release-candidate-health-validation\"\u003eRelease Candidate health validation\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#cherry-picking-fixes\"\u003eCherry Picking Fixes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#how-to-do-cherry-picking\"\u003eHow to do Cherry Picking\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#cherry-picking-reverts\"\u003eCherry Picking Reverts\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#preparing-and-creating-final-release-candidate\"\u003ePreparing and Creating Final Release Candidate\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#promoting-rcs-to-stable\"\u003ePromoting RCs to Stable\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#additional-steps-to-prepare-for-release-day\"\u003eAdditional Steps to prepare for release day\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#modify-release-matrix\"\u003eModify release matrix\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#open-google-colab-issue\"\u003eOpen Google Colab issue\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#patch-releases\"\u003ePatch Releases\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#patch-release-criteria\"\u003ePatch Release Criteria\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#patch-release-process\"\u003ePatch Release Process\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#patch-release-process-description\"\u003ePatch Release Process Description\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#triage\"\u003eTriage\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#issue-tracker-for-patch-releases\"\u003eIssue Tracker for Patch releases\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#building-a-release-schedule--cherry-picking\"\u003eBuilding a release schedule / cherry picking\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#building-binaries--promotion-to-stable\"\u003eBuilding Binaries / Promotion to Stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#hardware--software-support-in-binary-build-matrix\"\u003eHardware / Software Support in Binary Build Matrix\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#python\"\u003ePython\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#accelerator-software\"\u003eAccelerator Software\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#special-support-cases\"\u003eSpecial support cases\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#operating-systems\"\u003eOperating Systems\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#submitting-tutorials\"\u003eSubmitting Tutorials\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#special-topics\"\u003eSpecial Topics\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#updating-submodules-for-a-release\"\u003eUpdating submodules for a release\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#triton-dependency-for-the-release\"\u003eTriton dependency for the release\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eRelease Compatibility Matrix\u003c/h2\u003e\n\u003cp\u003eFollowing is the Release Compatibility Matrix for PyTorch releases:\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/pytorch/pytorch/commit/2b3ec34829036a65cd9d1398ea72a0167dc37470\"\u003e\u003ccode\u003e2b3ec34\u003c/code\u003e\u003c/a\u003e [release/2.14] Import SDPAParams in test_transformers to fix lint (\u003ca href=\"https://redirect.github.com/pytorch/pytorch/issues/194970\"\u003e#194970\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/08187d9e0fba026dc8217405802ab5381dc88d90\"\u003e\u003ccode\u003e08187d9\u003c/code\u003e\u003c/a\u003e [cuDNN] Add guards for cuDNN SDPA decode (\u003ca href=\"https://redirect.github.com/pytorch/pytorch/issues/194963\"\u003e#194963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/8ceea97051dec8f6bee23d24bd7704dcb6843ade\"\u003e\u003ccode\u003e8ceea97\u003c/code\u003e\u003c/a\u003e Pin cython \u0026lt; 3.3.0 for the Windows Triton wheel build (\u003ca href=\"https://redirect.github.com/pytorch/pytorch/issues/194931\"\u003e#194931\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/99ecebc63014f3454331b5a0914871daa063b512\"\u003e\u003ccode\u003e99ecebc\u003c/code\u003e\u003c/a\u003e [Cherry-pick][release/2.14] [inductor] Fix loop-local load CSE lifetime (\u003ca href=\"https://redirect.github.com/pytorch/pytorch/issues/194\"\u003e#194\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/ec283a75077fa3ee24a9cda2c58d2b24d95ca98c\"\u003e\u003ccode\u003eec283a7\u003c/code\u003e\u003c/a\u003e Bump the Python 3.15 numpy pin to 2.5.2 (\u003ca href=\"https://redirect.github.com/pytorch/pytorch/issues/194821\"\u003e#194821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/65890f364dd059ca97b9a37ada974eba8d8be772\"\u003e\u003ccode\u003e65890f3\u003c/code\u003e\u003c/a\u003e Fix docker-release validate job to use the channel matching the pushed image ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/168238882db0ad985f8904489604ff4955449fd2\"\u003e\u003ccode\u003e1682388\u003c/code\u003e\u003c/a\u003e Fix macOS py3.15 wheel builds: pin Cython \u0026lt; 3.3.0 and bump the cp315 numpy pi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/972441861b1aee44141b60c98c7875e7e4fe23ca\"\u003e\u003ccode\u003e9724418\u003c/code\u003e\u003c/a\u003e Fix Windows py3.15 builds: constrain Cython \u0026lt; 3.3.0 and bump the cp315 numpy ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/f1b755434c258b61307de00f680bb2dc9c50d592\"\u003e\u003ccode\u003ef1b7554\u003c/code\u003e\u003c/a\u003e [MPS] Fix pin_memory() recycling buffers still in use by the GPU (\u003ca href=\"https://redirect.github.com/pytorch/pytorch/issues/194662\"\u003e#194662\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/9f205f7b38c08544132b001948ce9109c577c6ed\"\u003e\u003ccode\u003e9f205f7\u003c/code\u003e\u003c/a\u003e [MPS] fail loudly on large reductions (\u003ca href=\"https://redirect.github.com/pytorch/pytorch/issues/194661\"\u003e#194661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytorch/pytorch/compare/v2.13.0-rc1...v2.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.2\u003c/h2\u003e\n\u003cp\u003eThis is the last v0 release, we are moving to v1!!\u003c/p\u003e\n\u003cp\u003eMore details coming soon 👀\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate daachorse from 1.0.1 to 3.0.0 by \u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2050\"\u003ehuggingface/tokenizers#2050\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCi test fixes by \u003ca href=\"https://github.com/sebpop\"\u003e\u003ccode\u003e@​sebpop\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2079\"\u003ehuggingface/tokenizers#2079\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid full vocab clone in get_vocab_size() by \u003ca href=\"https://github.com/eunseo9311\"\u003e\u003ccode\u003e@​eunseo9311\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2074\"\u003ehuggingface/tokenizers#2074\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: pin benchmark jobs to a larger dedicated runner by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2084\"\u003ehuggingface/tokenizers#2084\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: target benchmark runners by group, not nonexistent label by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2090\"\u003ehuggingface/tokenizers#2090\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBindings: acquire model read-lock once per call instead of per pre-token by \u003ca href=\"https://github.com/sebpop\"\u003e\u003ccode\u003e@​sebpop\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2072\"\u003ehuggingface/tokenizers#2072\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: split audit in a separate job by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2103\"\u003ehuggingface/tokenizers#2103\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: install libcairo on benchmark runners by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2100\"\u003ehuggingface/tokenizers#2100\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(ci): enable npm's trusted publisher for releases by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2111\"\u003ehuggingface/tokenizers#2111\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: bump pyo3 to version 0.29 by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2115\"\u003ehuggingface/tokenizers#2115\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: add benchmarks for the \u003ccode\u003edecode\u003c/code\u003e API by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2099\"\u003ehuggingface/tokenizers#2099\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: cache HF test data and authenticate Hub downloads to avoid rate limits by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2102\"\u003ehuggingface/tokenizers#2102\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImplementing Parity-aware BPE by \u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/1974\"\u003ehuggingface/tokenizers#1974\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake doc builds faster by \u003ca href=\"https://github.com/mishig25\"\u003e\u003ccode\u003e@​mishig25\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2158\"\u003ehuggingface/tokenizers#2158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump websocket-driver from 0.7.4 to 0.7.5 in /tokenizers/examples/unstable_wasm/www 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/huggingface/tokenizers/pull/2208\"\u003ehuggingface/tokenizers#2208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump shell-quote from 1.8.3 to 1.10.0 in /tokenizers/examples/unstable_wasm/www 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/huggingface/tokenizers/pull/2244\"\u003ehuggingface/tokenizers#2244\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: remove stale examples (kills 50% of dependabot traffic) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2285\"\u003ehuggingface/tokenizers#2285\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(node): drop 8 unused devDependencies by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2286\"\u003ehuggingface/tokenizers#2286\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: pin every action to one SHA, drop stale audit suppressions by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2291\"\u003ehuggingface/tokenizers#2291\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(node): take node security alerts from 33 to 0 by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2287\"\u003ehuggingface/tokenizers#2287\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(python): pin the ruff rule set so a ruff release can't redden main by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2292\"\u003ehuggingface/tokenizers#2292\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a ParityBpeTrainer example and list it in the trainers API docs by \u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2217\"\u003ehuggingface/tokenizers#2217\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/eunseo9311\"\u003e\u003ccode\u003e@​eunseo9311\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2074\"\u003ehuggingface/tokenizers#2074\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/1974\"\u003ehuggingface/tokenizers#1974\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.23.1...v0.23.2\"\u003ehttps://github.com/huggingface/tokenizers/compare/v0.23.1...v0.23.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\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/huggingface/tokenizers/commit/88a4498ad4ea1a9487b0a9b0ff881383fd5a06a3\"\u003e\u003ccode\u003e88a4498\u003c/code\u003e\u003c/a\u003e add lock\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/e4ea65f27057e593656ff1335b95afe2e552b88d\"\u003e\u003ccode\u003ee4ea65f\u003c/code\u003e\u003c/a\u003e real release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/7c5964b4afae7b710d254eacd5a9fa180ba2cfef\"\u003e\u003ccode\u003e7c5964b\u003c/code\u003e\u003c/a\u003e add lock\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bc405ad60991a0639f8b09b40f13f91c38e50e87\"\u003e\u003ccode\u003ebc405ad\u003c/code\u003e\u003c/a\u003e push rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/d5827816baedcbf1cb5b452dea8048150b6872df\"\u003e\u003ccode\u003ed582781\u003c/code\u003e\u003c/a\u003e Add a ParityBpeTrainer example and list it in the trainers API docs (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2217\"\u003e#2217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/447890f84deab25794ccfdee2a877901b6893569\"\u003e\u003ccode\u003e447890f\u003c/code\u003e\u003c/a\u003e fix(python): pin the ruff rule set so a ruff release can't redden main (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2292\"\u003e#2292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/68b3ab7788b58408f37a3dc73eeabf2417d14c22\"\u003e\u003ccode\u003e68b3ab7\u003c/code\u003e\u003c/a\u003e chore(node): take node security alerts from 33 to 0 (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2287\"\u003e#2287\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/74ef81f64e6d1cd4979c56d7d75f3ce21ba11992\"\u003e\u003ccode\u003e74ef81f\u003c/code\u003e\u003c/a\u003e ci: pin every action to one SHA, drop stale audit suppressions (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2291\"\u003e#2291\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b26727f1a92cdf727cd965fc1c467a7c77c63aae\"\u003e\u003ccode\u003eb26727f\u003c/code\u003e\u003c/a\u003e chore(node): drop 8 unused devDependencies (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2286\"\u003e#2286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/7c7cfd838fb79e76aaba6b0931898073a784fb2a\"\u003e\u003ccode\u003e7c7cfd8\u003c/code\u003e\u003c/a\u003e chore: remove stale examples (kills 50% of dependabot traffic) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2285\"\u003e#2285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentence-transformers` from 6.0.0 to 6.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/sentence-transformers/releases\"\u003esentence-transformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.0.1 - Restore the PyLate prefix on prompted checkpoints, 80 documented multi-vector models\u003c/h2\u003e\n\u003cp\u003eThis patch release fixes a multi-vector loading bug: PyLate checkpoints that carry both a \u003ccode\u003e[Q]\u003c/code\u003e/\u003ccode\u003e[D]\u003c/code\u003e prefix and a text prompt lost the prefix, so they were encoded without a marker they were trained with. It also grows the documented multi-vector model tables from 51 checkpoints to 80.\u003c/p\u003e\n\u003cp\u003eInstall this version with\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Training + Inference\r\npip install sentence-transformers[train]==6.0.1\r\n\u003ch1\u003eInference only, use one of:\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers==6.0.1\npip install sentence-transformers[onnx-gpu]==6.0.1\npip install sentence-transformers[onnx]==6.0.1\npip install sentence-transformers[openvino]==6.0.1\u003c/p\u003e\n\u003ch1\u003eMultimodal dependencies (optional):\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers[image]==6.0.1\npip install sentence-transformers[audio]==6.0.1\npip install sentence-transformers[video]==6.0.1\u003c/p\u003e\n\u003ch1\u003eOr combine as needed:\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers[train,onnx,image]==6.0.1\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003eCompose the PyLate prefix with the saved prompt (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3968\"\u003e#3968\u003c/a\u003e)\u003c/h2\u003e\n\u003cp\u003ePyLate supports a prefix as well as prompt text, and Sentence Transformers assumed that these were mutually exclusive. However, the following three checkpoints carry both a prefix and a prompt, and were trained with the prefix prepended to the prompt text:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero\"\u003e\u003ccode\u003elightonai/ColBERT-Zero\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero-unsupervised\"\u003e\u003ccode\u003elightonai/ColBERT-Zero-unsupervised\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero-supervised\"\u003e\u003ccode\u003elightonai/ColBERT-Zero-supervised\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003ePyLate trained these checkpoints on \u003ccode\u003e[CLS] [Q] search_query: ...\u003c/code\u003e and \u003ccode\u003e[CLS] [D] search_document: ...\u003c/code\u003e, but Sentence Transformers dropped the prefix and encoded them as \u003ccode\u003e[CLS] search_query: ...\u003c/code\u003e and \u003ccode\u003e[CLS] search_document: ...\u003c/code\u003e. After the fix, the performance of the \u003ccode\u003eColBERT-Zero\u003c/code\u003e model improved from 0.6569 NDCG@10 to 0.6824 on the NanoBEIR benchmark. To my knowledge, only these 3 checkpoints used both a prefix and a prompt, so this is the only case where the bug would have affected you.\u003c/p\u003e\n\u003ch2\u003eForward \u003ccode\u003etask\u003c/code\u003e to routed modules in \u003ccode\u003eRouter.preprocess\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3967\"\u003e#3967\u003c/a\u003e)\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003eRouter.forward\u003c/code\u003e has always passed \u003ccode\u003etask\u003c/code\u003e down to the routed module, but \u003ccode\u003eRouter.preprocess\u003c/code\u003e did not, so anything a module does with the task at preprocessing time did nothing behind a \u003ccode\u003eRouter\u003c/code\u003e: \u003ccode\u003equery_length\u003c/code\u003e and \u003ccode\u003edocument_length\u003c/code\u003e caps, \u003ccode\u003equery_expansion\u003c/code\u003e, and the chat-template \u003ccode\u003etask\u003c/code\u003e keyword. No released checkpoint combines a \u003ccode\u003eRouter\u003c/code\u003e with those settings, so this is a latent bug rather than one you are likely to have hit. It would have affected anyone building such a model themselves, with no error to indicate it.\u003c/p\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eThe multi-vector \u003ca href=\"https://sbert.net/docs/multi_vector_encoder/pretrained_models.html\"\u003epretrained models tables\u003c/a\u003e grew from 29 text and 22 visual document retrieval checkpoints to 38 and 42 (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3963\"\u003e#3963\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3969\"\u003e#3969\u003c/a\u003e), with \u003ccode\u003erevision\u003c/code\u003e and \u003ccode\u003etrust_remote_code\u003c/code\u003e notes refreshed as upstream pull requests merged (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3972\"\u003e#3972\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDocumented which Hub tag to filter on for each model type (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3964\"\u003e#3964\u003c/a\u003e), and linked the Multi-Vector Encoder blogposts from the docs (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3966\"\u003e#3966\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded MultiVectorEncoder to the Agent Skill README and refreshed the SauerkrautLM scores (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3955\"\u003e#3955\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eCorrected the minimum versions in the README (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3952\"\u003e#3952\u003c/a\u003e). It still recommended PyTorch 1.11.0+ and \u003ccode\u003etransformers\u003c/code\u003e v4.41.0+, where v6.0 requires PyTorch 2.2+ and \u003ccode\u003etransformers\u003c/code\u003e v5.0+. This is the text rendered as the PyPI project description.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAll Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: Add MultiVectorEncoder to the skills README, refresh the SauerkrautLM scores by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3955\"\u003ehuggingface/sentence-transformers#3955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix the README dependency versions by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3952\"\u003ehuggingface/sentence-transformers#3952\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Add more MultiVectorEncoder models to the pretrained models tables by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3963\"\u003ehuggingface/sentence-transformers#3963\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Clarify which Hub tags to filter on for each model type by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3964\"\u003ehuggingface/sentence-transformers#3964\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Link the Multi-Vector Encoder blogposts by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3966\"\u003ehuggingface/sentence-transformers#3966\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/huggingface/sentence-transformers/commit/b0acd1a4d22ba2bc10072868ddea7612561c9424\"\u003e\u003ccode\u003eb0acd1a\u003c/code\u003e\u003c/a\u003e Update README installation versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/9b415ac93b586400258ac9876c81ce28c36547ba\"\u003e\u003ccode\u003e9b415ac\u003c/code\u003e\u003c/a\u003e Release v6.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/cc0669cea57c834c651f001e3cb07b6fc847f147\"\u003e\u003ccode\u003ecc0669c\u003c/code\u003e\u003c/a\u003e Add/update revisions for pretrained MVE models (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3972\"\u003e#3972\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/f8390f466c9d127cd51dd41805557adaab09d472\"\u003e\u003ccode\u003ef8390f4\u003c/code\u003e\u003c/a\u003e [docs] Refresh the MultiVectorEncoder pretrained models tables (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3969\"\u003e#3969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/4b517229c1dc17ead6c2a61b3d248f62fe4738eb\"\u003e\u003ccode\u003e4b51722\u003c/code\u003e\u003c/a\u003e [fix] Compose the PyLate prefix with the saved prompt (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3968\"\u003e#3968\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/e99c4a9f2422c285cd2d286aeda1af237eadd01d\"\u003e\u003ccode\u003ee99c4a9\u003c/code\u003e\u003c/a\u003e [fix] Forward \u003ccode\u003etask\u003c/code\u003e to routed modules in \u003ccode\u003eRouter.preprocess\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3967\"\u003e#3967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/5d2ec939e960d85afe638bba87523926c63ab263\"\u003e\u003ccode\u003e5d2ec93\u003c/code\u003e\u003c/a\u003e [docs] Link the Multi-Vector Encoder blogposts (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3966\"\u003e#3966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/9c5de2aa8432d7d150e35a7cd4383a39a13e307b\"\u003e\u003ccode\u003e9c5de2a\u003c/code\u003e\u003c/a\u003e [docs] Clarify which Hub tags to filter on for each model type (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3964\"\u003e#3964\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/83680bdf460229a41dd3bf07ed80b5a65d29a430\"\u003e\u003ccode\u003e83680bd\u003c/code\u003e\u003c/a\u003e [docs] Add more MultiVectorEncoder models to the pretrained models tables (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3\"\u003e#3\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/1a43278abe510ca9011fdd0e698c58470ef830eb\"\u003e\u003ccode\u003e1a43278\u003c/code\u003e\u003c/a\u003e docs: Add MultiVectorEncoder to the skills README, refresh the SauerkrautLM s...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/huggingface/sentence-transformers/compare/v6.0.0...v6.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/ifloppy/aiwr/pull/11","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ifloppy%2Faiwr/issues/11","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/11/packages"},{"uuid":"5363952969","node_id":"PR_kwDOSzlq188AAAABCY9ZDQ","number":65,"state":"open","title":"Bump the minor-update group with 190 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-06T08:49:10.000Z","updated_at":"2026-09-06T08:49:23.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-update","update_count":190,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"transformers","old_version":"5.14.1","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"huggingface-hub","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.1","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"fastapi","old_version":"0.136.3","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"starlette","old_version":"1.3.1","new_version":"1.6.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"prometheus-fastapi-instrumentator","old_version":"8.0.2","new_version":"8.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"pyzmq","old_version":"27.1.0","new_version":"27.2.0","repository_url":"https://github.com/zeromq/pyzmq"},{"name":"python-json-logger","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"pybase64","old_version":"1.4.3","new_version":"1.5.0","repository_url":"https://github.com/mayeut/pybase64"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions-ai","old_version":"0.4.13","new_version":"0.5.1"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"torchcodec","old_version":"0.14.0+cu130","new_version":"0.16.0","repository_url":"https://github.com/pytorch/torchcodec"},{"name":"auto-round-lib","old_version":"0.14.2","new_version":"0.15.0","repository_url":"https://github.com/intel/auto-round"},{"name":"tpu-inference","old_version":"0.26.0","new_version":"0.28.0","repository_url":"https://github.com/vllm-project/tpu-inference"},{"name":"pynvvideocodec","old_version":"2.0.4","new_version":"2.2.2"},{"name":"nvidia-cutlass-dsl","old_version":"4.6.0","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.8","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"lk-moe","old_version":"2.3.3","new_version":"2.4.1","repository_url":"https://github.com/guqiong96/Lvllm"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"anyio","old_version":"4.14.1","new_version":"4.15.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"bitsandbytes","old_version":"0.49.2","new_version":"0.50.2","repository_url":"https://github.com/bitsandbytes-foundation/bitsandbytes"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.87","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.87","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"cohere","old_version":"7.0.8","new_version":"7.1.1","repository_url":"https://github.com/cohere-ai/cohere-python"},{"name":"cohere-melody","old_version":"0.9.0","new_version":"0.13.4","repository_url":"https://github.com/cohere-ai/melody"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.3.0","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.1","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"detect-installer","old_version":"0.1.0","new_version":"0.2.1"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi-cloud-cli","old_version":"0.21.0","new_version":"0.25.0","repository_url":"https://github.com/fastapilabs/fastapi-cloud-cli"},{"name":"fastar","old_version":"0.11.0","new_version":"0.12.0","repository_url":"https://github.com/DoctorJohn/fastar"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"h11","old_version":"0.14.0","new_version":"0.16.0","repository_url":"https://github.com/python-hyper/h11"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"hf-xet","old_version":"1.5.1","new_version":"1.6.0","repository_url":"https://github.com/huggingface/xet-core"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"idna","old_version":"3.10","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.15.0","new_version":"0.16.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema-rs","old_version":"0.46.5","new_version":"0.53.0","repository_url":"https://github.com/Stranger6667/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llguidance","old_version":"1.7.6","new_version":"1.8.0","repository_url":"https://github.com/microsoft/llguidance"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.1.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.20.0.48","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.1","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.29.7","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"peft","old_version":"0.19.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.7","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pydantic-settings","old_version":"2.14.2","new_version":"2.15.0","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pyrate-limiter","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/vutran1710/PyrateLimiter"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"rignore","old_version":"0.7.6","new_version":"0.8.1"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"schemathesis","old_version":"4.21.6","new_version":"4.25.2","repository_url":"https://github.com/schemathesis/schemathesis"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"sentry-sdk","old_version":"2.63.0","new_version":"2.68.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"triton","old_version":"3.7.1","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.26.8","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.4","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.5","repository_url":"https://github.com/astral-sh/ruff"},{"name":"zentorch","old_version":"2.11.0.0","new_version":"2.13.0.0","repository_url":"https://github.com/amd/ZenDNN-pytorch-plugin"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 190 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [transformers](https://github.com/huggingface/transformers) | `5.14.1` | `5.16.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.26.0` | `1.29.0` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.1` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.136.3` | `0.141.1` |\n| [starlette](https://github.com/Kludex/starlette) | `1.3.1` | `1.6.0` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `8.0.2` | `8.1.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [pyzmq](https://github.com/zeromq/pyzmq) | `27.1.0` | `27.2.0` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `4.1.0` | `4.2.0` |\n| [pybase64](https://github.com/mayeut/pybase64) | `1.4.3` | `1.5.0` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| opentelemetry-semantic-conventions-ai | `0.4.13` | `0.5.1` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [torchcodec](https://github.com/pytorch/torchcodec) | `0.14.0+cu130` | `0.16.0` |\n| [auto-round-lib](https://github.com/intel/auto-round) | `0.14.2` | `0.15.0` |\n| [tpu-inference](https://github.com/vllm-project/tpu-inference) | `0.26.0` | `0.28.0` |\n| pynvvideocodec | `2.0.4` | `2.2.2` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.6.0` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.8` | `0.2.6` |\n| [lk-moe](https://github.com/guqiong96/Lvllm) | `2.3.3` | `2.4.1` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.14.1` | `4.15.0` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [bitsandbytes](https://github.com/bitsandbytes-foundation/bitsandbytes) | `0.49.2` | `0.50.2` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.87` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.87` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| [cohere](https://github.com/cohere-ai/cohere-python) | `7.0.8` | `7.1.1` |\n| [cohere-melody](https://github.com/cohere-ai/melody) | `0.9.0` | `0.13.4` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.1` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.3.0` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.1` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| detect-installer | `0.1.0` | `0.2.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi-cloud-cli](https://github.com/fastapilabs/fastapi-cloud-cli) | `0.21.0` | `0.25.0` |\n| [fastar](https://github.com/DoctorJohn/fastar) | `0.11.0` | `0.12.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [hf-xet](https://github.com/huggingface/xet-core) | `1.5.1` | `1.6.0` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.19` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.15.0` | `0.16.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonschema-rs](https://github.com/Stranger6667/jsonschema) | `0.46.5` | `0.53.0` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llguidance](https://github.com/microsoft/llguidance) | `1.7.6` | `1.8.0` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.1.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.20.0.48` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.1` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.29.7` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [peft](https://github.com/huggingface/peft) | `0.19.1` | `0.20.0` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.7` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.14.2` | `2.15.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pyrate-limiter](https://github.com/vutran1710/PyrateLimiter) | `4.4.0` | `4.5.0` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| rignore | `0.7.6` | `0.8.1` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [schemathesis](https://github.com/schemathesis/schemathesis) | `4.21.6` | `4.25.2` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.63.0` | `2.68.1` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [triton](https://github.com/triton-lang/triton) | `3.7.1` | `3.8.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.26.8` | `0.27.2` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.4` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.5` |\n| [zentorch](https://github.com/amd/ZenDNN-pytorch-plugin) | `2.11.0.0` | `2.13.0.0` |\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 5.14.1 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\n\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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.14.1...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.26.0 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\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/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.26.0...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e⚡ Performance — measured locally on this Mac, not lifted from PRs\u003c/h2\u003e\n\u003cp\u003eRun with \u003ccode\u003ecargo bench --bench \u0026lt;name\u0026gt; -- --save-baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.22.2\u003c/code\u003e, then \u003ccode\u003e--baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.23.1\u003c/code\u003e. Numbers are point-in-time wall clock on a single laptop; relative deltas are what matters, absolute numbers will differ on CI hardware.\u003c/p\u003e\n\u003ch3\u003eAdded-vocabulary deserialize — the headline win (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1999\"\u003e#1999\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003e\u003ccode\u003ebench: improve added_vocab_deserialize to reflect real-world workloads\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2000\"\u003e#2000\u003c/a\u003e) is now representative of how transformers actually loads tokenizer.json files. The combined effect of \u003ccode\u003edaachorse\u003c/code\u003e for the matching automaton plus the normalize-on-insert refactor is enormous on this workload:\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~410 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e248 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.1 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e273 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~395 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e235 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.4 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e290 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e400k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~15 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e980 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−94%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eReal-world impact: loading a Llama-3-style tokenizer with a large set of added tokens dropped from \u0026quot;noticeable pause\u0026quot; to \u0026quot;instant\u0026quot;.\u003c/p\u003e\n\u003ch3\u003eBPE encode\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch, no cache\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e530 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e446 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−16%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch\u003c/code\u003e (cached)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e690 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e685 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode\u003c/code\u003e (single)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.95 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.94 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (small)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e32.6 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e31.5 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−3%\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (big)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.01 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e988 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−2%\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eThe BPE per-thread cache PR (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e) shows much larger wins on highly-parallel workloads (+47–62% at 88+ threads on a server box, per the PR's own measurements on Vera). Single-thread batch numbers above are flat or slightly improved because cache-hit overhead was already low without contention.\u003c/p\u003e\n\u003ch3\u003eLlama-3 encode\u003c/h3\u003e\n\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/huggingface/tokenizers/commit/7f1623b90b5adfb9bc327d4c3468d2f70bbce262\"\u003e\u003ccode\u003e7f1623b\u003c/code\u003e\u003c/a\u003e Bump version to 0.23.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bbe43ad73d8fc8932b9d0e657ddee3cd70c649a4\"\u003e\u003ccode\u003ebbe43ad\u003c/code\u003e\u003c/a\u003e ci: release workflow fixes (node + python) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2043\"\u003e#2043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/ab0c5d8fc13eb1c5001d9c06806635e2b5a42e9f\"\u003e\u003ccode\u003eab0c5d8\u003c/code\u003e\u003c/a\u003e Fix node release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2034\"\u003e#2034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/decd8e07dad15f296c0adc2bc3a560f62d3de2eb\"\u003e\u003ccode\u003edecd8e0\u003c/code\u003e\u003c/a\u003e bindings/python: free-threaded Python (3.14t) support (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2041\"\u003e#2041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/3992692d483bf3177219b52cb101b1bb055c18e6\"\u003e\u003ccode\u003e3992692\u003c/code\u003e\u003c/a\u003e update for release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2033\"\u003e#2033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bcdd25b97fcd78549903082ecf3ddd87d42c456b\"\u003e\u003ccode\u003ebcdd25b\u003c/code\u003e\u003c/a\u003e BPE cache: per-thread read-through cache to avoid RwLock atomics on hits (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/618eb383f43e207139eb5cdb9bca17796b5e9bd7\"\u003e\u003ccode\u003e618eb38\u003c/code\u003e\u003c/a\u003e Bump follow-redirects in /tokenizers/examples/unstable_wasm/www (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2024\"\u003e#2024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b6b1688bef2e87efc91af18edf7ac38b4d2dfbe6\"\u003e\u003ccode\u003eb6b1688\u003c/code\u003e\u003c/a\u003e chore: bump doc-builder SHA for PR upload workflow (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2025\"\u003e#2025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/19015d6b44aa3896626de5092e4171aed1b56d5b\"\u003e\u003ccode\u003e19015d6\u003c/code\u003e\u003c/a\u003e fix: use uvx --with cairosvg instead of uv pip install --system (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2021\"\u003e#2021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/efbcc68e321c364c8f9541f1c93a158df54d7da4\"\u003e\u003ccode\u003eefbcc68\u003c/code\u003e\u003c/a\u003e Ci benchmarks (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2019\"\u003e#2019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `fastapi` from 0.136.3 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15093\"\u003e#15093\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.10\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling sequences with nested Annotated types. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14874\"\u003e#14874\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Accept any base test failure as regression. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16092\"\u003e#16092\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Preserve pytest exit code in regression check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16091\"\u003e#16091\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Test PR regressions against base code. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16090\"\u003e#16090\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.9\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eexclude_defaults\u003c/code\u003e not propagated to dict keys and values in \u003ccode\u003ejsonable_encoder\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16043\"\u003e#16043\u003c/a\u003e by \u003ca href=\"https://github.com/MBGrao\"\u003e\u003ccode\u003e@​MBGrao\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\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/fastapi/fastapi/commit/95f8322ee1dcda7ceace7b1c4f6c9915b36d748f\"\u003e\u003ccode\u003e95f8322\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16106\"\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/guqiong96/Lvllmds4/pull/65","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/guqiong96%2FLvllmds4/issues/65","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/65/packages"},{"uuid":"5363642279","node_id":"PR_kwDON-W62s8AAAABCYu1HA","number":109,"state":"closed","title":"deps(deps): update huggingface-hub requirement from \u003e=1.20.1 to \u003e=1.29.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":["bniladridas"],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-09-06T10:42:44.000Z","author_association":null,"state_reason":null,"created_at":"2026-09-06T07:38:14.000Z","updated_at":"2026-09-06T10:42:45.000Z","time_to_close":11070,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): update","packages":[{"name":"huggingface-hub","old_version":"\u003e=1.20.1","new_version":"\u003e=1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [huggingface-hub](https://github.com/huggingface/huggingface_hub) 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/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.20.1...v1.29.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/coccinella-labs/mlapi/pull/109","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/coccinella-labs%2Fmlapi/issues/109","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/109/packages"},{"uuid":"5360645539","node_id":"PR_kwDOTAbfpM8AAAABCWfaGA","number":198,"state":"open","title":"Chore(deps): update huggingface-hub requirement from \u003e=0.23 to \u003e=1.29.0 in /Tools/evaluation/public_datasets","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-09-05T20:12:47.000Z","updated_at":"2026-09-05T20:12:48.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Chore(deps): update","packages":[{"name":"huggingface-hub","old_version":"\u003e=0.23","new_version":"\u003e=1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"}],"path":"/Tools/evaluation/public_datasets","ecosystem":"pip"},"body":"Updates the requirements on [huggingface-hub](https://github.com/huggingface/huggingface_hub) 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/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v0.23.0...v1.29.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/carlosmazzei/Kurn/pull/198","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/carlosmazzei%2FKurn/issues/198","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/198/packages"},{"uuid":"5359301500","node_id":"PR_kwDOUPb-sM8AAAABCVdCzw","number":4,"state":"closed","title":"build(deps): bump huggingface-hub from 0.24.0 to 1.29.0 in /service/scripts","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-09-06T14:07:02.000Z","author_association":null,"state_reason":null,"created_at":"2026-09-05T16:28:35.000Z","updated_at":"2026-09-06T14:07:05.000Z","time_to_close":77907,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"huggingface-hub","old_version":"0.24.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"}],"path":"/service/scripts","ecosystem":"pip"},"body":"Bumps [huggingface-hub](https://github.com/huggingface/huggingface_hub) from 0.24.0 to 1.29.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v0.24.0...v1.29.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=huggingface-hub\u0026package-manager=pip\u0026previous-version=0.24.0\u0026new-version=1.29.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/ifloppy/aiwr/pull/4","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ifloppy%2Faiwr/issues/4","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/4/packages"},{"uuid":"5359021877","node_id":"PR_kwDOQAkTSM8AAAABCVPfsQ","number":30,"state":"closed","title":"build(deps): bump the python-minor-and-patch group across 1 directory with 16 updates","user":"dependabot[bot]","labels":["dependencies","python:uv"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-09-05T16:00:36.000Z","author_association":null,"state_reason":null,"created_at":"2026-09-05T15:40:25.000Z","updated_at":"2026-09-05T16:00:46.000Z","time_to_close":1211,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"python-minor-and-patch","update_count":16,"packages":[{"name":"pydantic","old_version":"2.13.4","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"sentence-transformers","old_version":"6.0.0","new_version":"6.0.1","repository_url":"https://github.com/huggingface/sentence-transformers"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"cuda-pathfinder","old_version":"1.7.0","new_version":"1.8.0","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"filelock","old_version":"3.32.4","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"huggingface-hub","old_version":"1.28.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"joblib","old_version":"1.5.3","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"regex","old_version":"2026.7.19","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.1","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"torch","old_version":"2.13.0","new_version":"2.14.0","repository_url":"https://github.com/pytorch/pytorch"},{"name":"typer","old_version":"0.27.1","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"websockets","old_version":"17.0.1","new_version":"17.1","repository_url":"https://github.com/python-websockets/websockets"},{"name":"wrapt","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/GrahamDumpleton/wrapt"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-minor-and-patch group with 13 updates in the /backend directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.13.4` | `2.13.5` |\n| [sentence-transformers](https://github.com/huggingface/sentence-transformers) | `6.0.0` | `6.0.1` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.7.0` | `1.8.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.32.4` | `3.32.5` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.28.0` | `1.29.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.5.3` | `1.6.0` |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.7.19` | `2026.9.3` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.1` |\n| [torch](https://github.com/pytorch/pytorch) | `2.13.0` | `2.14.0` |\n| [typer](https://github.com/fastapi/typer) | `0.27.1` | `0.27.2` |\n| [websockets](https://github.com/python-websockets/websockets) | `17.0.1` | `17.1` |\n| [wrapt](https://github.com/GrahamDumpleton/wrapt) | `2.3.0` | `2.4.0` |\n\n\nUpdates `pydantic` from 2.13.4 to 2.13.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pydantic/pydantic/releases\"\u003epydantic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.5 (2026-08-28)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow reuse of validators when plugins are set by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13535\"\u003e#13535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal on some \u003ccode\u003epydantic-core\u003c/code\u003e struct fields by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13624\"\u003e#13624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13629\"\u003e#13629\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCount validated model fields once in smart unions by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13731\"\u003e#13731\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/pydantic/pydantic/blob/v2.13.5/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.5 (2026-08-28)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.13.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow reuse of validators when plugins are set by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13535\"\u003e#13535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal on some \u003ccode\u003epydantic-core\u003c/code\u003e struct fields by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13624\"\u003e#13624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13629\"\u003e#13629\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCount validated model fields once in smart unions by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13731\"\u003e#13731\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/001dea020e0809844e5b17666432c9135a976f46\"\u003e\u003ccode\u003e001dea0\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003epypa/gh-action-pypi-publish\u003c/code\u003e action to v1.14.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/558379fee957fad25858e33596146c72d5674843\"\u003e\u003ccode\u003e558379f\u003c/code\u003e\u003c/a\u003e Bump twine to v7.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/2cfd5d3d2ae721ea882c045f83b7f7a4003aab01\"\u003e\u003ccode\u003e2cfd5d3\u003c/code\u003e\u003c/a\u003e Do not check for docs build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a735bee5c64e1fe50785c376adaf1275e752b8ac\"\u003e\u003ccode\u003ea735bee\u003c/code\u003e\u003c/a\u003e Fix more Clippy lints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7eed4a16b87afaced4d0eafae230453de3410d64\"\u003e\u003ccode\u003e7eed4a1\u003c/code\u003e\u003c/a\u003e Fix Clippy 0.1.95 warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/b353bbb20a4989b4c033e2be2b4a40d36178b16a\"\u003e\u003ccode\u003eb353bbb\u003c/code\u003e\u003c/a\u003e Prepare release v2.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/63d2cccd6e760da6bbc7fe81a53cb2bde3768f5e\"\u003e\u003ccode\u003e63d2ccc\u003c/code\u003e\u003c/a\u003e Count validated model fields once in smart unions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a53ec2ed342fda4e6aa3684399d04ea57be9a6e4\"\u003e\u003ccode\u003ea53ec2e\u003c/code\u003e\u003c/a\u003e Speed up PyPy CI tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/d65e0f96e890ca82f4b66a15d5b3bd65af2c661c\"\u003e\u003ccode\u003ed65e0f9\u003c/code\u003e\u003c/a\u003e Workaround circular import error in Mypy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/47a6dbf8ad6216211bd0df6ec5c2c6c6ed905b72\"\u003e\u003ccode\u003e47a6dbf\u003c/code\u003e\u003c/a\u003e Fix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.13.4...v2.13.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentence-transformers` from 6.0.0 to 6.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/sentence-transformers/releases\"\u003esentence-transformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.0.1 - Restore the PyLate prefix on prompted checkpoints, 80 documented multi-vector models\u003c/h2\u003e\n\u003cp\u003eThis patch release fixes a multi-vector loading bug: PyLate checkpoints that carry both a \u003ccode\u003e[Q]\u003c/code\u003e/\u003ccode\u003e[D]\u003c/code\u003e prefix and a text prompt lost the prefix, so they were encoded without a marker they were trained with. It also grows the documented multi-vector model tables from 51 checkpoints to 80.\u003c/p\u003e\n\u003cp\u003eInstall this version with\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Training + Inference\r\npip install sentence-transformers[train]==6.0.1\r\n\u003ch1\u003eInference only, use one of:\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers==6.0.1\npip install sentence-transformers[onnx-gpu]==6.0.1\npip install sentence-transformers[onnx]==6.0.1\npip install sentence-transformers[openvino]==6.0.1\u003c/p\u003e\n\u003ch1\u003eMultimodal dependencies (optional):\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers[image]==6.0.1\npip install sentence-transformers[audio]==6.0.1\npip install sentence-transformers[video]==6.0.1\u003c/p\u003e\n\u003ch1\u003eOr combine as needed:\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers[train,onnx,image]==6.0.1\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003eCompose the PyLate prefix with the saved prompt (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3968\"\u003e#3968\u003c/a\u003e)\u003c/h2\u003e\n\u003cp\u003ePyLate supports a prefix as well as prompt text, and Sentence Transformers assumed that these were mutually exclusive. However, the following three checkpoints carry both a prefix and a prompt, and were trained with the prefix prepended to the prompt text:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero\"\u003e\u003ccode\u003elightonai/ColBERT-Zero\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero-unsupervised\"\u003e\u003ccode\u003elightonai/ColBERT-Zero-unsupervised\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero-supervised\"\u003e\u003ccode\u003elightonai/ColBERT-Zero-supervised\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003ePyLate trained these checkpoints on \u003ccode\u003e[CLS] [Q] search_query: ...\u003c/code\u003e and \u003ccode\u003e[CLS] [D] search_document: ...\u003c/code\u003e, but Sentence Transformers dropped the prefix and encoded them as \u003ccode\u003e[CLS] search_query: ...\u003c/code\u003e and \u003ccode\u003e[CLS] search_document: ...\u003c/code\u003e. After the fix, the performance of the \u003ccode\u003eColBERT-Zero\u003c/code\u003e model improved from 0.6569 NDCG@10 to 0.6824 on the NanoBEIR benchmark. To my knowledge, only these 3 checkpoints used both a prefix and a prompt, so this is the only case where the bug would have affected you.\u003c/p\u003e\n\u003ch2\u003eForward \u003ccode\u003etask\u003c/code\u003e to routed modules in \u003ccode\u003eRouter.preprocess\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3967\"\u003e#3967\u003c/a\u003e)\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003eRouter.forward\u003c/code\u003e has always passed \u003ccode\u003etask\u003c/code\u003e down to the routed module, but \u003ccode\u003eRouter.preprocess\u003c/code\u003e did not, so anything a module does with the task at preprocessing time did nothing behind a \u003ccode\u003eRouter\u003c/code\u003e: \u003ccode\u003equery_length\u003c/code\u003e and \u003ccode\u003edocument_length\u003c/code\u003e caps, \u003ccode\u003equery_expansion\u003c/code\u003e, and the chat-template \u003ccode\u003etask\u003c/code\u003e keyword. No released checkpoint combines a \u003ccode\u003eRouter\u003c/code\u003e with those settings, so this is a latent bug rather than one you are likely to have hit. It would have affected anyone building such a model themselves, with no error to indicate it.\u003c/p\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eThe multi-vector \u003ca href=\"https://sbert.net/docs/multi_vector_encoder/pretrained_models.html\"\u003epretrained models tables\u003c/a\u003e grew from 29 text and 22 visual document retrieval checkpoints to 38 and 42 (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3963\"\u003e#3963\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3969\"\u003e#3969\u003c/a\u003e), with \u003ccode\u003erevision\u003c/code\u003e and \u003ccode\u003etrust_remote_code\u003c/code\u003e notes refreshed as upstream pull requests merged (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3972\"\u003e#3972\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDocumented which Hub tag to filter on for each model type (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3964\"\u003e#3964\u003c/a\u003e), and linked the Multi-Vector Encoder blogposts from the docs (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3966\"\u003e#3966\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded MultiVectorEncoder to the Agent Skill README and refreshed the SauerkrautLM scores (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3955\"\u003e#3955\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eCorrected the minimum versions in the README (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3952\"\u003e#3952\u003c/a\u003e). It still recommended PyTorch 1.11.0+ and \u003ccode\u003etransformers\u003c/code\u003e v4.41.0+, where v6.0 requires PyTorch 2.2+ and \u003ccode\u003etransformers\u003c/code\u003e v5.0+. This is the text rendered as the PyPI project description.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAll Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: Add MultiVectorEncoder to the skills README, refresh the SauerkrautLM scores by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3955\"\u003ehuggingface/sentence-transformers#3955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix the README dependency versions by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3952\"\u003ehuggingface/sentence-transformers#3952\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Add more MultiVectorEncoder models to the pretrained models tables by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3963\"\u003ehuggingface/sentence-transformers#3963\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Clarify which Hub tags to filter on for each model type by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3964\"\u003ehuggingface/sentence-transformers#3964\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Link the Multi-Vector Encoder blogposts by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3966\"\u003ehuggingface/sentence-transformers#3966\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/huggingface/sentence-transformers/commit/b0acd1a4d22ba2bc10072868ddea7612561c9424\"\u003e\u003ccode\u003eb0acd1a\u003c/code\u003e\u003c/a\u003e Update README installation versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/9b415ac93b586400258ac9876c81ce28c36547ba\"\u003e\u003ccode\u003e9b415ac\u003c/code\u003e\u003c/a\u003e Release v6.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/cc0669cea57c834c651f001e3cb07b6fc847f147\"\u003e\u003ccode\u003ecc0669c\u003c/code\u003e\u003c/a\u003e Add/update revisions for pretrained MVE models (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3972\"\u003e#3972\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/f8390f466c9d127cd51dd41805557adaab09d472\"\u003e\u003ccode\u003ef8390f4\u003c/code\u003e\u003c/a\u003e [docs] Refresh the MultiVectorEncoder pretrained models tables (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3969\"\u003e#3969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/4b517229c1dc17ead6c2a61b3d248f62fe4738eb\"\u003e\u003ccode\u003e4b51722\u003c/code\u003e\u003c/a\u003e [fix] Compose the PyLate prefix with the saved prompt (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3968\"\u003e#3968\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/e99c4a9f2422c285cd2d286aeda1af237eadd01d\"\u003e\u003ccode\u003ee99c4a9\u003c/code\u003e\u003c/a\u003e [fix] Forward \u003ccode\u003etask\u003c/code\u003e to routed modules in \u003ccode\u003eRouter.preprocess\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3967\"\u003e#3967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/5d2ec939e960d85afe638bba87523926c63ab263\"\u003e\u003ccode\u003e5d2ec93\u003c/code\u003e\u003c/a\u003e [docs] Link the Multi-Vector Encoder blogposts (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3966\"\u003e#3966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/9c5de2aa8432d7d150e35a7cd4383a39a13e307b\"\u003e\u003ccode\u003e9c5de2a\u003c/code\u003e\u003c/a\u003e [docs] Clarify which Hub tags to filter on for each model type (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3964\"\u003e#3964\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/83680bdf460229a41dd3bf07ed80b5a65d29a430\"\u003e\u003ccode\u003e83680bd\u003c/code\u003e\u003c/a\u003e [docs] Add more MultiVectorEncoder models to the pretrained models tables (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3\"\u003e#3\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/1a43278abe510ca9011fdd0e698c58470ef830eb\"\u003e\u003ccode\u003e1a43278\u003c/code\u003e\u003c/a\u003e docs: Add MultiVectorEncoder to the skills README, refresh the SauerkrautLM s...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/huggingface/sentence-transformers/compare/v6.0.0...v6.0.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.4.2 to 8.5.0\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.5.0\u003c/h2\u003e\n\u003cp\u003eThis is the Click 8.5.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.5.0/\"\u003ehttps://pypi.org/project/click/8.5.0/\u003c/a\u003e\nChanges:  \u003ca href=\"https://click.palletsprojects.com/page/changes/#version-8-5-0\"\u003ehttps://click.palletsprojects.com/page/changes/#version-8-5-0\u003c/a\u003e\nMilestone \u003ca href=\"https://github.com/pallets/click/milestone/33\"\u003ehttps://github.com/pallets/click/milestone/33\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd built-in shell completion support for PowerShell (Windows PowerShell\n5.1+ and pwsh 7+) alongside the existing \u003ccode\u003ebash\u003c/code\u003e, \u003ccode\u003ezsh\u003c/code\u003e, and \u003ccode\u003efish\u003c/code\u003e\ncompleters. Use \u003ccode\u003e_FOO_BAR_COMPLETE=powershell_source foo-bar\u003c/code\u003e to generate\nthe completion script. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2672\"\u003e#2672\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3637\"\u003e#3637\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupported versions of Windows enable ANSI terminal styles by default.\nColorama is no longer a dependency and is not used. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2986\"\u003e#2986\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3505\"\u003e#3505\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e{class}\u003ccode\u003eArgument\u003c/code\u003e accepts a \u003ccode\u003ehelp\u003c/code\u003e parameter, and help output includes\na \u003ccode\u003ePositional arguments\u003c/code\u003e section when argument help is available. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2983\"\u003e#2983\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3473\"\u003e#3473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003econfirm()\u003c/code\u003e and \u003ccode\u003eprompt()\u003c/code\u003e strip ANSI color and style codes from the\nprompt when the output stream does not support them, matching \u003ccode\u003eecho()\u003c/code\u003e.\nThis stripping was lost in \u003ccode\u003e8.4.0\u003c/code\u003e when \u003ca href=\"https://redirect.github.com/pallets/click/issues/2969\"\u003e#2969\u003c/a\u003e began writing the\nprompt with \u003ccode\u003einput()\u003c/code\u003e directly. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3572\"\u003e#3572\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3653\"\u003e#3653\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e{class}\u003ccode\u003ePath\u003c/code\u003e with \u003ccode\u003eallow_dash=True\u003c/code\u003e no longer triggers a \u003ccode\u003eBytesWarning\u003c/code\u003e,\nan error under \u003ccode\u003epython -bb\u003c/code\u003e, when checking a value against the \u003ccode\u003e-\u003c/code\u003e\nconvention. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2877\"\u003e#2877\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3642\"\u003e#3642\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd {func}\u003ccode\u003ecustom_version_option\u003c/code\u003e, a \u003ccode\u003e--version\u003c/code\u003e option whose output is\nproduced by a callback, covering cases {func}\u003ccode\u003eversion_option\u003c/code\u003e intentionally\ndoes not. The feature set of {func}\u003ccode\u003eversion_option\u003c/code\u003e is now frozen; see\n[discussion \u003ca href=\"https://redirect.github.com/pallets/click/issues/3527\"\u003e#3527\u003c/a\u003e](\u003ca href=\"https://github.com/pallets/click/discussions/3527\"\u003ehttps://github.com/pallets/click/discussions/3527\u003c/a\u003e). \u003ca href=\"https://redirect.github.com/pallets/click/issues/3581\"\u003e#3581\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003estyle()\u003c/code\u003e and \u003ccode\u003esecho()\u003c/code\u003e no longer silently drop the 256-color index \u003ccode\u003e0\u003c/code\u003e\n(black) passed as \u003ccode\u003efg\u003c/code\u003e or \u003ccode\u003ebg\u003c/code\u003e, and now validate color arguments. Invalid\ncolors raise a \u003ccode\u003eValueError\u003c/code\u003e instead of a \u003ccode\u003eTypeError\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3677\"\u003e#3677\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eThe automatic help option stores its value under the reserved name\n\u003ccode\u003e_click_default_help\u003c/code\u003e instead of \u003ccode\u003ehelp\u003c/code\u003e, so a parameter named \u003ccode\u003ehelp\u003c/code\u003e no\nlonger breaks parsing. The new name is visible in\n{meth}\u003ccode\u003eCommand.to_info_dict\u003c/code\u003e output. Parameters that overwrite each other's\nvalue trigger a warning: an argument sharing its name with another\nparameter, or any parameter claiming the reserved name. Options may still\nshare a name to compete for the same value (feature switches).\n\u003ca href=\"https://redirect.github.com/pallets/click/issues/2819\"\u003e#2819\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3678\"\u003e#3678\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eunstyle\u003c/code\u003e and the ANSI handling behind help-text wrapping now strip the full\nCSI escape-sequence grammar. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3681\"\u003e#3681\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStreamline \u003ccode\u003eOption\u003c/code\u003e flag handling: the flag-kind, type, lazy-default and\nvalidation steps in \u003ccode\u003eOption.__init__\u003c/code\u003e move into focused helpers, and\n\u003ccode\u003eflag_value\u003c/code\u003e and \u003ccode\u003edefault\u003c/code\u003e keep their unset sentinel at construction\n(resolved lazily on read) so \u003ccode\u003eis UNSET\u003c/code\u003e reliably tells a user-supplied value\nfrom an auto-derived one. Runtime behavior is unchanged, but\n{meth}\u003ccode\u003eParameter.to_info_dict\u003c/code\u003e now resolves \u003ccode\u003edefault=True\u003c/code\u003e on a feature\nswitch to its \u003ccode\u003eflag_value\u003c/code\u003e, matching what the function receives at call\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/click/blob/main/CHANGES.md\"\u003eclick's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 8.5.0\u003c/h2\u003e\n\u003cp\u003eReleased 2026-08-24\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd built-in shell completion support for PowerShell (Windows PowerShell\n5.1+ and pwsh 7+) alongside the existing \u003ccode\u003ebash\u003c/code\u003e, \u003ccode\u003ezsh\u003c/code\u003e, and \u003ccode\u003efish\u003c/code\u003e\ncompleters. Use \u003ccode\u003e_FOO_BAR_COMPLETE=powershell_source foo-bar\u003c/code\u003e to generate\nthe completion script. {issue}\u003ccode\u003e2672\u003c/code\u003e {pr}\u003ccode\u003e3637\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eSupported versions of Windows enable ANSI terminal styles by default.\nColorama is no longer a dependency and is not used. {issue}\u003ccode\u003e2986\u003c/code\u003e {pr}\u003ccode\u003e3505\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e{class}\u003ccode\u003eArgument\u003c/code\u003e accepts a \u003ccode\u003ehelp\u003c/code\u003e parameter, and help output includes\na \u003ccode\u003ePositional arguments\u003c/code\u003e section when argument help is available. {issue}\u003ccode\u003e2983\u003c/code\u003e {pr}\u003ccode\u003e3473\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003econfirm()\u003c/code\u003e and \u003ccode\u003eprompt()\u003c/code\u003e strip ANSI color and style codes from the\nprompt when the output stream does not support them, matching \u003ccode\u003eecho()\u003c/code\u003e.\nThis stripping was lost in \u003ccode\u003e8.4.0\u003c/code\u003e when {pr}\u003ccode\u003e2969\u003c/code\u003e began writing the\nprompt with \u003ccode\u003einput()\u003c/code\u003e directly. {issue}\u003ccode\u003e3572\u003c/code\u003e {pr}\u003ccode\u003e3653\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFix test failures when using pytest \u0026gt;= 9.1. {pr}\u003ccode\u003e3656\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e{class}\u003ccode\u003ePath\u003c/code\u003e with \u003ccode\u003eallow_dash=True\u003c/code\u003e no longer triggers a \u003ccode\u003eBytesWarning\u003c/code\u003e,\nan error under \u003ccode\u003epython -bb\u003c/code\u003e, when checking a value against the \u003ccode\u003e-\u003c/code\u003e\nconvention. {issue}\u003ccode\u003e2877\u003c/code\u003e {pr}\u003ccode\u003e3642\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd {func}\u003ccode\u003ecustom_version_option\u003c/code\u003e, a \u003ccode\u003e--version\u003c/code\u003e option whose output is\nproduced by a callback, covering cases {func}\u003ccode\u003eversion_option\u003c/code\u003e intentionally\ndoes not. The feature set of {func}\u003ccode\u003eversion_option\u003c/code\u003e is now frozen; see\n[discussion \u003ca href=\"https://redirect.github.com/pallets/click/issues/3527\"\u003e#3527\u003c/a\u003e](\u003ca href=\"https://github.com/pallets/click/discussions/3527\"\u003ehttps://github.com/pallets/click/discussions/3527\u003c/a\u003e). {pr}\u003ccode\u003e3581\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003estyle()\u003c/code\u003e and \u003ccode\u003esecho()\u003c/code\u003e no longer silently drop the 256-color index \u003ccode\u003e0\u003c/code\u003e\n(black) passed as \u003ccode\u003efg\u003c/code\u003e or \u003ccode\u003ebg\u003c/code\u003e, and now validate color arguments. Invalid\ncolors raise a \u003ccode\u003eValueError\u003c/code\u003e instead of a \u003ccode\u003eTypeError\u003c/code\u003e. {pr}\u003ccode\u003e3677\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe automatic help option stores its value under the reserved name\n\u003ccode\u003e_click_default_help\u003c/code\u003e instead of \u003ccode\u003ehelp\u003c/code\u003e, so a parameter named \u003ccode\u003ehelp\u003c/code\u003e no\nlonger breaks parsing. The new name is visible in\n{meth}\u003ccode\u003eCommand.to_info_dict\u003c/code\u003e output. Parameters that overwrite each other's\nvalue trigger a warning: an argument sharing its name with another\nparameter, or any parameter claiming the reserved name. Options may still\nshare a name to compete for the same value (feature switches).\n{issue}\u003ccode\u003e2819\u003c/code\u003e {pr}\u003ccode\u003e3678\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eunstyle\u003c/code\u003e and the ANSI handling behind help-text wrapping now strip the full\nCSI escape-sequence grammar. {pr}\u003ccode\u003e3681\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eStreamline \u003ccode\u003eOption\u003c/code\u003e flag handling: the flag-kind, type, lazy-default and\nvalidation steps in \u003ccode\u003eOption.__init__\u003c/code\u003e move into focused helpers, and\n\u003ccode\u003eflag_value\u003c/code\u003e and \u003ccode\u003edefault\u003c/code\u003e keep their unset sentinel at construction\n(resolved lazily on read) so \u003ccode\u003eis UNSET\u003c/code\u003e reliably tells a user-supplied value\nfrom an auto-derived one. Runtime behavior is unchanged, but\n{meth}\u003ccode\u003eParameter.to_info_dict\u003c/code\u003e now resolves \u003ccode\u003edefault=True\u003c/code\u003e on a feature\nswitch to its \u003ccode\u003eflag_value\u003c/code\u003e, matching what the function receives at call\ntime. {pr}\u003ccode\u003e3641\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e{func}\u003ccode\u003eget_binary_stream\u003c/code\u003e and {func}\u003ccode\u003eget_text_stream\u003c/code\u003e are deprecated and\nwill be removed in Click 9.0. {issue}\u003ccode\u003e3481\u003c/code\u003e {pr}\u003ccode\u003e3695\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe following \u003ccode\u003eclick.utils\u003c/code\u003e names were never intentionally public and are\nnow private (\u003ccode\u003e_\u003c/code\u003e-prefixed). The old names remain available with a\n\u003ccode\u003eDeprecationWarning\u003c/code\u003e until Click 9.0: \u003ccode\u003eLazyFile\u003c/code\u003e, \u003ccode\u003eKeepOpenFile\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/pallets/click/commit/8b19813f2bfca99f1018a587a8cf54fc959f2e5d\"\u003e\u003ccode\u003e8b19813\u003c/code\u003e\u003c/a\u003e Release version 8.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/2c8cd3ac958a7eb316d67f2d316c27086c4c0369\"\u003e\u003ccode\u003e2c8cd3a\u003c/code\u003e\u003c/a\u003e Add FAQ entry about \u003ccode\u003eUnicodeEncodeError\u003c/code\u003e on Windows (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3778\"\u003e#3778\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/131c86aadddfa5cb6dca8339c9d6294c4eacb8ac\"\u003e\u003ccode\u003e131c86a\u003c/code\u003e\u003c/a\u003e Add FAQ entry about \u003ccode\u003eUnicodeEncodeError\u003c/code\u003e on Windows\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/e1fd5946ab26aaf372009eaff1acf947140b40fb\"\u003e\u003ccode\u003ee1fd594\u003c/code\u003e\u003c/a\u003e Add support of \u003ccode\u003epathlib.Path\u003c/code\u003e to \u003ccode\u003eedit\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3781\"\u003e#3781\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/a1d87858abd77fa8e3ffc204670ccd75b96c4781\"\u003e\u003ccode\u003ea1d8785\u003c/code\u003e\u003c/a\u003e Add support of \u003ccode\u003epathlib.Path\u003c/code\u003e to \u003ccode\u003eedit\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/2103e157683c5e4cadc8ee1838df526a54bde9a4\"\u003e\u003ccode\u003e2103e15\u003c/code\u003e\u003c/a\u003e Forward all user's parameters set in \u003ccode\u003ePAGER\u003c/code\u003e and improve flag detection (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3777\"\u003e#3777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/a6256bfb5971d5e58585fe7b6c656134e1ade5a4\"\u003e\u003ccode\u003ea6256bf\u003c/code\u003e\u003c/a\u003e Forwards all user's parameters set in \u003ccode\u003ePAGER\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/61b69e967e525bd502f5bf42def4d551e761fe0e\"\u003e\u003ccode\u003e61b69e9\u003c/code\u003e\u003c/a\u003e Resolve the pager command once, in \u003ccode\u003e_pager_contextmanager\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3776\"\u003e#3776\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/9835b0f7612d1b1ea180a975fd6d24cf16791ba8\"\u003e\u003ccode\u003e9835b0f\u003c/code\u003e\u003c/a\u003e Resolve the pager command once, in \u003ccode\u003e_pager_contextmanager\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/f36d58bbd7f188178de2d4fe1d0292c510375ca7\"\u003e\u003ccode\u003ef36d58b\u003c/code\u003e\u003c/a\u003e Refactor pager stream handling (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3767\"\u003e#3767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets/click/compare/8.4.2...8.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cuda-pathfinder` from 1.7.0 to 1.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/NVIDIA/cuda-python/releases\"\u003ecuda-pathfinder's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecuda-pathfinder v1.8.0\u003c/h2\u003e\n\u003ch2\u003eRelease notes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://nvidia.github.io/cuda-python/cuda-pathfinder/latest/release/1.8.0-notes.html\"\u003ehttps://nvidia.github.io/cuda-python/cuda-pathfinder/latest/release/1.8.0-notes.html\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://nvidia.github.io/cuda-python/cuda-pathfinder/1.8.0/\"\u003ehttps://nvidia.github.io/cuda-python/cuda-pathfinder/1.8.0/\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ePyPI\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://pypi.org/project/cuda-pathfinder/1.8.0/\"\u003ehttps://pypi.org/project/cuda-pathfinder/1.8.0/\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eConda\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://anaconda.org/conda-forge/cuda-pathfinder/files?version=1.8.0\"\u003ehttps://anaconda.org/conda-forge/cuda-pathfinder/files?version=1.8.0\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003econda install conda-forge::cuda-pathfinder=1.8.0\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/NVIDIA/cuda-python/commit/339c9bc23f2690f653b06abce3b3a2acc4b7a0c8\"\u003e\u003ccode\u003e339c9bc\u003c/code\u003e\u003c/a\u003e docs(pathfinder): finalize 1.8.0 release notes (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2710\"\u003e#2710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/9cab1db384e23358e139fbfed2d68f28ba51e94d\"\u003e\u003ccode\u003e9cab1db\u003c/code\u003e\u003c/a\u003e build: make Cython/extension artifacts CUDA-major aware (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2472\"\u003e#2472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/ecc7bd9881df80546758a8203249d492a8358c83\"\u003e\u003ccode\u003eecc7bd9\u003c/code\u003e\u003c/a\u003e refactor(pathfinder): author candidates in search order (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2708\"\u003e#2708\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/809407c1fc3b9f458b0db0080738a57075d6db7a\"\u003e\u003ccode\u003e809407c\u003c/code\u003e\u003c/a\u003e fix(pathfinder): use exact dynamic library names (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2689\"\u003e#2689\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/0477f61f6ae4501c2ab80fc335fc5cc711aa7b0e\"\u003e\u003ccode\u003e0477f61\u003c/code\u003e\u003c/a\u003e Recognize CUDA 13.4 cuRAND library names (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2692\"\u003e#2692\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/54ce994cf8bcce3cbdedeaf595e9c57c6bb23c90\"\u003e\u003ccode\u003e54ce994\u003c/code\u003e\u003c/a\u003e Avoid aggregate graph access descriptor initialization (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2688\"\u003e#2688\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/64afb35f621afabf19f5e86c7bf5c1e135057480\"\u003e\u003ccode\u003e64afb35\u003c/code\u003e\u003c/a\u003e cuda.core: account for DLTensor.byte_offset in from_dlpack (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2594\"\u003e#2594\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/fd9685d4f71ce1a55d7b9db49b0c532eb88fa699\"\u003e\u003ccode\u003efd9685d\u003c/code\u003e\u003c/a\u003e fix(cuda.core): preserve ordering for asynchronous memory operations in tests...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/a68ba5e0650a5b3c893868a47fa6be7f6a8fe9ca\"\u003e\u003ccode\u003ea68ba5e\u003c/code\u003e\u003c/a\u003e cuda.core: reject operations on closed resource objects (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2635\"\u003e#2635\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/c0e6c1cee19f4eeef270fe702eda92f81d3ed53a\"\u003e\u003ccode\u003ec0e6c1c\u003c/code\u003e\u003c/a\u003e Ft testing test fixes (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2454\"\u003e#2454\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/NVIDIA/cuda-python/compare/cuda-pathfinder-v1.7.0...cuda-pathfinder-v1.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `filelock` from 3.32.4 to 3.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/py-filelock/releases\"\u003efilelock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.32.5\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🧪 test(fork): report where a stalled fork stops by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/715\"\u003etox-dev/filelock#715\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📝 docs: say that mode is read-only in the thread-local section by \u003ca href=\"https://github.com/Gares95\"\u003e\u003ccode\u003e@​Gares95\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/716\"\u003etox-dev/filelock#716\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(lease): clear token after failed acquire by \u003ca href=\"https://github.com/lprnmns\"\u003e\u003ccode\u003e@​lprnmns\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/721\"\u003etox-dev/filelock#721\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/lprnmns\"\u003e\u003ccode\u003e@​lprnmns\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/721\"\u003etox-dev/filelock#721\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.32.4...3.32.5\"\u003ehttps://github.com/tox-dev/filelock/compare/3.32.4...3.32.5\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/filelock/blob/main/docs/changelog.rst\"\u003efilelock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e###########\nChangelog\n###########\u003c/p\u003e\n\u003cp\u003e.. towncrier-draft-entries:: Unreleased\u003c/p\u003e\n\u003cp\u003e.. towncrier release notes start\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.5 (2026-08-31)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eSoftFileLease.token\u003c/code\u003e and \u003ccode\u003eAsyncSoftFileLease.token\u003c/code\u003e now read \u003ccode\u003eNone\u003c/code\u003e after a failed acquisition, so a contender\nturned away by a live holder no longer reports a token for a claim it never published. :pr:\u003ccode\u003e721\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eDocument that \u003ccode\u003emode\u003c/code\u003e has no setter: unlike \u003ccode\u003epoll_interval\u003c/code\u003e, \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003eblocking\u003c/code\u003e and \u003ccode\u003elifetime\u003c/code\u003e, it is fixed at construction and \u003ccode\u003elock.mode = ...\u003c/code\u003e raises \u003ccode\u003eAttributeError\u003c/code\u003e. :pr:\u003ccode\u003e716\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.4 (2026-08-23)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eStrictSoftFileLock\u003c/code\u003e always retries a claim read whose first attempt reports the claim as pending, so a first read\nthat itself outlasts the retry grace no longer fails closed on a claim it could have read. :pr:\u003ccode\u003e705\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eWindowsFileLock\u003c/code\u003e waits out a transient \u003ccode\u003eSTATUS_ACCESS_DENIED\u003c/code\u003e from \u003ccode\u003eNtCreateFile\u003c/code\u003e for up to half a second\nbefore raising \u003ccode\u003ePermissionError\u003c/code\u003e, since a peer unlinking the lock file as it releases can answer that for a moment; a\nreal denial still fails fast. :pr:\u003ccode\u003e705\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eEvery lock class now escapes the hostname it publishes, so a host whose \u003ccode\u003esocket.gethostname()\u003c/code\u003e carries a space, a\nnewline or a byte outside UTF-8 no longer writes a marker it reads back as malformed. Such a host used to lose a held\n\u003ccode\u003eSoftReadWriteLock\u003c/code\u003e read slot to a peer and could not take a write slot or a \u003ccode\u003eStrictSoftFileLock\u003c/code\u003e at all. :pr:\u003ccode\u003e709\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.3 (2026-08-13)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003eThe fork-safety audit hook no longer prints \u003ccode\u003eException ignored in audit hook\u003c/code\u003e with a \u003ccode\u003eTypeError\u003c/code\u003e when an audit\nevent fires during interpreter shutdown, after CPython has already cleared the module globals. :pr:\u003ccode\u003e701\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.2 (2026-07-29)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003eA \u003ccode\u003eSoftReadWriteLock\u003c/code\u003e or \u003ccode\u003eSoftFileLease\u003c/code\u003e acquire whose heartbeat thread fails to start now unlinks its marker and\nhands the claim back, instead of leaving an unrefreshed marker a peer takes while the caller believes it still holds\nthe lock. :pr:\u003ccode\u003e691\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.1 (2026-07-26)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003eCanceling an \u003ccode\u003eAsyncSoftReadWriteLock\u003c/code\u003e acquire now releases the claim instead of leaking a marker whose heartbeat\nwedges every contender. :pr:\u003ccode\u003e686\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/1585dfef9355a5c77d4a9498cc34d3a98056fdb9\"\u003e\u003ccode\u003e1585dfe\u003c/code\u003e\u003c/a\u003e Release 3.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/00177c32686e60bc5ef9875b5841867ea08d4558\"\u003e\u003ccode\u003e00177c3\u003c/code\u003e\u003c/a\u003e 🐛 fix(lease): clear token after failed acquire (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/721\"\u003e#721\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/5aeb9b6a5fe1e86dcb1c44a927aefffd607b17b0\"\u003e\u003ccode\u003e5aeb9b6\u003c/code\u003e\u003c/a\u003e 📝 docs: say that mode is read-only in the thread-local section (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/716\"\u003e#716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/2634dd1dcc597b319770df027491f16d07662952\"\u003e\u003ccode\u003e2634dd1\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/720\"\u003e#720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/37dccf0276f6db1520db9e3482fdf0446c14276e\"\u003e\u003ccode\u003e37dccf0\u003c/code\u003e\u003c/a\u003e 🧪 test(fork): report where a stalled fork stops (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/715\"\u003e#715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tox-dev/py-filelock/compare/3.32.4...3.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.28.0 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.28.0...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `joblib` from 1.5.3 to 1.6.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/joblib/joblib/blob/main/CHANGES.rst\"\u003ejoblib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 1.6.0 - 2026/08/31\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix caching of functions whose source cannot be retrieved, such as functions\ndefined in a notebook cell. Their identity fell back to\n\u003ccode\u003estr(hash(func.__code__))\u003c/code\u003e, which is salted by \u003ccode\u003ePYTHONHASHSEED\u003c/code\u003e and so\ndiffered between processes. A worker reading the \u003ccode\u003efunc_code.py\u003c/code\u003e written by\nanother one concluded that the function had changed and wiped the whole\ncache directory for it, discarding results computed by its peers.\n\u003ccode\u003efunc_code.py\u003c/code\u003e is also no longer rewritten in place, so a reader can no\nlonger catch it half-written and draw the same conclusion.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1694\"\u003ejoblib/joblib#1694\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDrop python 3.9 support. The oldest supported Python version\nis now Python 3.10.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/pull/1773\"\u003ejoblib/joblib#1773\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eeval_expr\u003c/code\u003e (used to evaluate the \u003ccode\u003epre_dispatch\u003c/code\u003e argument of\n\u003ccode\u003eParallel\u003c/code\u003e) to raise a \u003ccode\u003eValueError\u003c/code\u003e as documented instead of leaking a\n\u003ccode\u003eZeroDivisionError\u003c/code\u003e for expressions that divide or take a modulo by zero.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/pull/1810\"\u003ejoblib/joblib#1810\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eMemorizedResult\u003c/code\u003e now forwards \u003ccode\u003emmap_mode\u003c/code\u003e to its store backend, so a\ncached array reconstructed from a location is memory-mapped as requested\ninstead of being loaded fully into memory.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/pull/1799\"\u003ejoblib/joblib#1799\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUnvendor cloudpickle to more quickly benefit from maintenance releases\nof cloudpickle\n\u003ca href=\"https://redirect.github.com/joblib/joblib/pull/1775\"\u003ejoblib/joblib#1775\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eMemory.cache\u003c/code\u003e for functions with a keyword-only argument that has a\ndefault declared before a keyword-only argument without a default.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1731\"\u003ejoblib/joblib#1731\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix behavior of \u003ccode\u003efilter_args\u003c/code\u003e on some precise cases.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/pull/1800\"\u003ejoblib/joblib#1800\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix a concurrency error that could happen with unordered generator.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/pull/1789\"\u003ejoblib/joblib#1789\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003edump()\u003c/code\u003e now accepts any input \u003ccode\u003eos.PathLike\u003c/code\u003e object to be consistent with\n\u003ccode\u003eload\u003c/code\u003e.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/pull/1812\"\u003ejoblib/joblib#1812\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe documentation now uses pydata sphinx theme. Furthermore, optional dependencies\n\u003ccode\u003etest\u003c/code\u003e and \u003ccode\u003edocs\u003c/code\u003e have been added to \u003ccode\u003epyproject.toml\u003c/code\u003e.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/pull/1774\"\u003ejoblib/joblib#1774\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eVendor \u003ccode\u003eloky 3.6.0\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/cd9a6b05fc4f2b1c8202eb62c4e863484f8cc099\"\u003e\u003ccode\u003ecd9a6b0\u003c/code\u003e\u003c/a\u003e Release 1.6.0 (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1844\"\u003e#1844\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/d873f972949d78166af6c945667c53f04d41fed6\"\u003e\u003ccode\u003ed873f97\u003c/code\u003e\u003c/a\u003e MNT vendor loky 3.6.0 (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1843\"\u003e#1843\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/4ff61afd0849f18fddf5fbd137c1f02bfaed5223\"\u003e\u003ccode\u003e4ff61af\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 4 updates (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1832\"\u003e#1832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/804f4725e1a27b1425c8aabcf7312ceb11c3a07d\"\u003e\u003ccode\u003e804f472\u003c/code\u003e\u003c/a\u003e FIX make func_code stable across processes when the source is unavailable (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/65cc49da449f70ffa73bc7c3c57fd418392f9993\"\u003e\u003ccode\u003e65cc49d\u003c/code\u003e\u003c/a\u003e TST Restore RNG sequence in hash compatibility test (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1837\"\u003e#1837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/c1b654161a2c245acdf9830bf6fc7553f8c0b6b2\"\u003e\u003ccode\u003ec1b6541\u003c/code\u003e\u003c/a\u003e CI Use pytest-run-parallel on free-threaded build (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1819\"\u003e#1819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/f6b80d3ec961409ff4704e9695e9c89599bcf272\"\u003e\u003ccode\u003ef6b80d3\u003c/code\u003e\u003c/a\u003e MNT Simplify isinstance check in hashing (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1835\"\u003e#1835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/fa4d5afd851955f3e2a805cdacaf6bf9512e7576\"\u003e\u003ccode\u003efa4d5af\u003c/code\u003e\u003c/a\u003e MNT remove python 3.9 from CI (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1773\"\u003e#1773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/53cea7b177c3400154613372614a0f35274b036d\"\u003e\u003ccode\u003e53cea7b\u003c/code\u003e\u003c/a\u003e DOC Update release docs to reflect usage of trusted publishing (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1826\"\u003e#1826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/26500e91e1cfcacd0d50ba759bfecc4792f3528e\"\u003e\u003ccode\u003e26500e9\u003c/code\u003e\u003c/a\u003e Bump the github-actions group across 1 directory with 3 updates (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1790\"\u003e#1790\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/joblib/joblib/compare/1.5.3...1.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic-core` from 2.46.4 to 2.46.5\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/001dea020e0809844e5b17666432c9135a976f46\"\u003e\u003ccode\u003e001dea0\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003epypa/gh-action-pypi-publish\u003c/code\u003e action to v1.14.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/558379fee957fad25858e33596146c72d5674843\"\u003e\u003ccode\u003e558379f\u003c/code\u003e\u003c/a\u003e Bump twine to v7.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/2cfd5d3d2ae721ea882c045f83b7f7a4003aab01\"\u003e\u003ccode\u003e2cfd5d3\u003c/code\u003e\u003c/a\u003e Do not check for docs build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a735bee5c64e1fe50785c376adaf1275e752b8ac\"\u003e\u003ccode\u003ea735bee\u003c/code\u003e\u003c/a\u003e Fix more Clippy lints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7eed4a16b87afaced4d0eafae230453de3410d64\"\u003e\u003ccode\u003e7eed4a1\u003c/code\u003e\u003c/a\u003e Fix Clippy 0.1.95 warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/b353bbb20a4989b4c033e2be2b4a40d36178b16a\"\u003e\u003ccode\u003eb353bbb\u003c/code\u003e\u003c/a\u003e Prepare release v2.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/63d2cccd6e760da6bbc7fe81a53cb2bde3768f5e\"\u003e\u003ccode\u003e63d2ccc\u003c/code\u003e\u003c/a\u003e Count validated model fields once in smart unions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a53ec2ed342fda4e6aa3684399d04ea57be9a6e4\"\u003e\u003ccode\u003ea53ec2e\u003c/code\u003e\u003c/a\u003e Speed up PyPy CI tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/d65e0f96e890ca82f4b66a15d5b3bd65af2c661c\"\u003e\u003ccode\u003ed65e0f9\u003c/code\u003e\u003c/a\u003e Workaround circular import error in Mypy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/47a6dbf8ad6216211bd0df6ec5c2c6c6ed905b72\"\u003e\u003ccode\u003e47a6dbf\u003c/code\u003e\u003c/a\u003e Fix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/core-v2.46.4...core-v2.46.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `regex` from 2026.7.19 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c!-- 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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.7.19...2026.9.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e⚡ Performance — measured locally on this Mac, not lifted from PRs\u003c/h2\u003e\n\u003cp\u003eRun with \u003ccode\u003ecargo bench --bench \u0026lt;name\u0026gt; -- --save-baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.22.2\u003c/code\u003e, then \u003ccode\u003e--baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.23.1\u003c/code\u003e. Numbers are point-in-time wall clock on a single laptop; relative deltas are what matters, absolute numbers will differ on CI hardware.\u003c/p\u003e\n\u003ch3\u003eAdded-vocabulary deserialize — the headline win (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1999\"\u003e#1999\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003e\u003ccode\u003ebench: improve added_vocab_deserialize to reflect real-world workloads\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2000\"\u003e#2000\u003c/a\u003e) is now representative of how transformers actually loads tokenizer.json files. The combined effect of \u003ccode\u003edaachorse\u003c/code\u003e for the matching automaton plus the normalize-on-insert refactor is enormous on this workload:\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~410 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e248 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.1 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e273 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~395 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e235 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.4 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e290 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e400k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~15 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e980 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−94%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eReal-world impact: loading a Llama-3-style tokenizer with a large set of added tokens dropped from \u0026quot;noticeable pause\u0026quot; to \u0026quot;instant\u0026quot;.\u003c/p\u003e\n\u003ch3\u003eBPE encode\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch, no cache\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e530 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e446 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−16%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch\u003c/code\u003e (cached)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e690 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e685 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode\u003c/code\u003e (single)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.95 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.94 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (small)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e32.6 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e31.5 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−3%\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (big)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.01 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e988 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−2%\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eThe BPE per-thread cache PR (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e) shows much larger wins on highly-parallel workloads (+47–62% at 88+ threads on a server box, per the PR's own measurements on Vera). Single-thread batch numbers above are flat or slightly improved because cache-hit overhead was already low without contention.\u003c/p\u003e\n\u003ch3\u003eLlama-3 encode\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/huggingface/tokenizers/commit/7f1623b90b5adfb9bc327d4c3468d2f70bbce262\"\u003e\u003ccode\u003e7f1623b\u003c/code\u003e\u003c/a\u003e Bump version to 0.23.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bbe43ad73d8fc8932b9d0e657ddee3cd70c649a4\"\u003e\u003ccode\u003ebbe43ad\u003c/code\u003e\u003c/a\u003e ci: release workflow fixes (node + python) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2043\"\u003e#2043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/ab0c5d8fc13eb1c5001d9c06806635e2b5a42e9f\"\u003e\u003ccode\u003eab0c5d8\u003c/code\u003e\u003c/a\u003e Fix node release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2034\"\u003e#2034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/decd8e07dad15f296c0adc2bc3a560f62d3de2eb\"\u003e\u003ccode\u003edecd8e0\u003c/code\u003e\u003c/a\u003e bindings/python: free-threaded Python (3.14t) support (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2041\"\u003e#2041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/3992692d483bf3177219b52cb101b1bb055c18e6\"\u003e\u003ccode\u003e3992692\u003c/code\u003e\u003c/a\u003e update for release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2033\"\u003e#2033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bcdd25b97fcd78549903082ecf3ddd87d42c456b\"\u003e\u003ccode\u003ebcdd25b\u003c/code\u003e\u003c/a\u003e BPE cache: per-thread read-through cache to avoid RwLock atomics on hits (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/618eb383f43e207139eb5cdb9bca17796b5e9bd7\"\u003e\u003ccode\u003e618eb38\u003c/code\u003e\u003c/a\u003e Bump follow-redirects in /tokenizers/examples/unstable_wasm/www (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2024\"\u003e#2024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b6b1688bef2e87efc91af18edf7ac38b4d2dfbe6\"\u003e\u003ccode\u003eb6b1688\u003c/code\u003e\u003c/a\u003e chore: bump doc-builder SHA for PR upload workflow (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2025\"\u003e#2025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/19015d6b44aa3896626de5092e4171aed1b56d5b\"\u003e\u003ccode\u003e19015d6\u003c/code\u003e\u003c/a\u003e fix: use uvx --with cairosvg instead of uv pip install --system (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2021\"\u003e#2021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/efbcc68e321c364c8f9541f1c93a158df54d7da4\"\u003e\u003ccode\u003eefbcc68\u003c/code\u003e\u003c/a\u003e Ci benchmarks (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2019\"\u003e#2019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `torch` from 2.13.0 to 2.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytorch/pytorch/releases\"\u003etorch's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ePyTorch 2.14.0 Release Notes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#highlights\"\u003eHighlights\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#backwards-incompatible-changes\"\u003eBackwards Incompatible Changes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://githu...\n\n_Description has been truncated_","html_url":"https://github.com/dwest1507/nietzsche-chat/pull/30","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwest1507%2Fnietzsche-chat/issues/30","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/30/packages"},{"uuid":"5358997376","node_id":"PR_kwDOPq_tdc8AAAABCVOWNA","number":27,"state":"open","title":"Bump the notebooks-minor-and-patch group with 4 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-05T15:35:42.000Z","updated_at":"2026-09-05T15:36:03.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"notebooks-minor-and-patch","update_count":4,"packages":[{"name":"huggingface-hub","old_version":"1.28.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"selenium","old_version":"4.47.0","new_version":"4.48.0","repository_url":"https://github.com/SeleniumHQ/Selenium"},{"name":"sentence-transformers","old_version":"6.0.0","new_version":"6.0.1","repository_url":"https://github.com/huggingface/sentence-transformers"},{"name":"statsmodels","old_version":"0.14.6","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"}],"path":null,"ecosystem":"pip"},"body":"Bumps the notebooks-minor-and-patch group with 4 updates: [huggingface-hub](https://github.com/huggingface/huggingface_hub), [selenium](https://github.com/SeleniumHQ/Selenium), [sentence-transformers](https://github.com/huggingface/sentence-transformers) and [statsmodels](https://github.com/statsmodels/statsmodels).\n\nUpdates `huggingface-hub` from 1.28.0 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.28.0...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `selenium` from 4.47.0 to 4.48.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/SeleniumHQ/Selenium/releases\"\u003eselenium's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eSelenium 4.48.0\u003c/h2\u003e\n\u003ch2\u003eDetailed Changelogs by Component\u003c/h2\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e \u003cstrong\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG\"\u003eJava\u003c/a\u003e\u003c/strong\u003e     |    \u003c!-- raw HTML omitted --\u003e \u003cstrong\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES\"\u003ePython\u003c/a\u003e\u003c/strong\u003e     |    \u003c!-- raw HTML omitted --\u003e \u003cstrong\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG\"\u003eDotNet\u003c/a\u003e\u003c/strong\u003e     |    \u003c!-- raw HTML omitted --\u003e \u003cstrong\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES\"\u003eRuby\u003c/a\u003e\u003c/strong\u003e     |    \u003c!-- raw HTML omitted --\u003e \u003cstrong\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md\"\u003eJavaScript\u003c/a\u003e\u003c/strong\u003e\n\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[js] Normalize empty custom locator results by \u003ca href=\"https://github.com/munawiki\"\u003e\u003ccode\u003e@​munawiki\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17851\"\u003eSeleniumHQ/selenium#17851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[py]: fix W3C capabilities built from a list of options (create_matches) by \u003ca href=\"https://github.com/navin772\"\u003e\u003ccode\u003e@​navin772\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17897\"\u003eSeleniumHQ/selenium#17897\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[rb] add low-level BiDi protocol integration specs by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17878\"\u003eSeleniumHQ/selenium#17878\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix badge for CI build on the default branch by \u003ca href=\"https://github.com/nvborisenko\"\u003e\u003ccode\u003e@​nvborisenko\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17901\"\u003eSeleniumHQ/selenium#17901\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[py] Fix broken reStructuredText link in docs by \u003ca href=\"https://github.com/cgoldberg\"\u003e\u003ccode\u003e@​cgoldberg\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17902\"\u003eSeleniumHQ/selenium#17902\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[grid] stop forwarding se:remoteUrl past the Node that consumes it by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17908\"\u003eSeleniumHQ/selenium#17908\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[grid] Forward file upload/download for Kubernetes, Docker and relay sessions by \u003ca href=\"https://github.com/VietND96\"\u003e\u003ccode\u003e@​VietND96\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17914\"\u003eSeleniumHQ/selenium#17914\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] reduce github cache churn and aggressively prune CodeQL caches by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17909\"\u003eSeleniumHQ/selenium#17909\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[java] fix two flaky BiDi tests that left timing-dependent state behind by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17918\"\u003eSeleniumHQ/selenium#17918\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[java] Add warn annotation for undeclared field while JSON coercion  by \u003ca href=\"https://github.com/pujagani\"\u003e\u003ccode\u003e@​pujagani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17917\"\u003eSeleniumHQ/selenium#17917\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[py] temporarily disable nightly TestPyPI publishing by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17920\"\u003eSeleniumHQ/selenium#17920\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[rb] fix Safari test failures by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17922\"\u003eSeleniumHQ/selenium#17922\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] fix the issues that caused the release workflow to fail during last release by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17921\"\u003eSeleniumHQ/selenium#17921\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRevert \u0026quot;[py] temporarily disable nightly TestPyPI publishing (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17920\"\u003e#17920\u003c/a\u003e)\u0026quot; by \u003ca href=\"https://github.com/diemol\"\u003e\u003ccode\u003e@​diemol\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17924\"\u003eSeleniumHQ/selenium#17924\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[rb] fix silent hang on oversized WebSocket frames by \u003ca href=\"https://github.com/aguspe\"\u003e\u003ccode\u003e@​aguspe\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17655\"\u003eSeleniumHQ/selenium#17655\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[js] Ensure BiDi is not exposed on Driver by \u003ca href=\"https://github.com/pujagani\"\u003e\u003ccode\u003e@​pujagani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17926\"\u003eSeleniumHQ/selenium#17926\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] charter: link the accepted BiDi support boundary record by \u003ca href=\"https://github.com/AutomatedTester\"\u003e\u003ccode\u003e@​AutomatedTester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17928\"\u003eSeleniumHQ/selenium#17928\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonour the \u003ccode\u003eDO_NOT_TRACK\u003c/code\u003e env var by \u003ca href=\"https://github.com/shs96c\"\u003e\u003ccode\u003e@​shs96c\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17931\"\u003eSeleniumHQ/selenium#17931\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] record flaky tests on trunk and report weekly offenders to Slack by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17930\"\u003eSeleniumHQ/selenium#17930\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] ignore .bazelbsp/ IDE-generated directory by \u003ca href=\"https://github.com/diemol\"\u003e\u003ccode\u003e@​diemol\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17932\"\u003eSeleniumHQ/selenium#17932\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[adr] Install browser extensions from the driver directly by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17817\"\u003eSeleniumHQ/selenium#17817\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[py] generate the internal BiDi protocol layer from the shared binding-neutral schema by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17761\"\u003eSeleniumHQ/selenium#17761\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[rb] always reject a missing required inbound BiDi field by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17936\"\u003eSeleniumHQ/selenium#17936\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] make Java and .NET release reruns pass when already published by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17935\"\u003eSeleniumHQ/selenium#17935\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] Move dependency updates into a weekly workflow by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17934\"\u003eSeleniumHQ/selenium#17934\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[rb] accept a whole-valued float for an integer BiDi field by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17939\"\u003eSeleniumHQ/selenium#17939\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] unlock trunk once the release finishes writing to it by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17938\"\u003eSeleniumHQ/selenium#17938\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[js] Add serialization and domain layer by \u003ca href=\"https://github.com/pujagani\"\u003e\u003ccode\u003e@​pujagani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17927\"\u003eSeleniumHQ/selenium#17927\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] stop updating browsers and CDP during release preparation by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17940\"\u003eSeleniumHQ/selenium#17940\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[py] update new BiDi layer generation to conform to latest proposed ADR by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17942\"\u003eSeleniumHQ/selenium#17942\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[dotnet] [bidi] Throw in case of unknown discriminator by \u003ca href=\"https://github.com/nvborisenko\"\u003e\u003ccode\u003e@​nvborisenko\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17948\"\u003eSeleniumHQ/selenium#17948\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[rb] reject an inbound BiDi scalar outside its union's declared arms by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17947\"\u003eSeleniumHQ/selenium#17947\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] alert Slack when a CDP update lands on trunk by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17950\"\u003eSeleniumHQ/selenium#17950\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[js][bidi] Add BiDi connection-level event subscription by \u003ca href=\"https://github.com/pujagani\"\u003e\u003ccode\u003e@​pujagani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17946\"\u003eSeleniumHQ/selenium#17946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[dotnet] [bidi] SetMediaFeaturesOverride command in Emulation module by \u003ca href=\"https://github.com/nvborisenko\"\u003e\u003ccode\u003e@​nvborisenko\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17953\"\u003eSeleniumHQ/selenium#17953\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/munawiki\"\u003e\u003ccode\u003e@​munawiki\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17851\"\u003eSeleniumHQ/selenium#17851\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/SeleniumHQ/selenium/compare/selenium-4.47.0...selenium-4.48.0\"\u003ehttps://github.com/SeleniumHQ/selenium/compare/selenium-4.47.0...selenium-4.48.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/SeleniumHQ/selenium/commit/27f5213055e28398a5105b7892b7a3bb2012a6ef\"\u003e\u003ccode\u003e27f5213\u003c/code\u003e\u003c/a\u003e [build] Prepare for release of selenium-4.48.0 (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17956\"\u003e#17956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/857ff4fe490f4914c354979efb4f62c74fe387d9\"\u003e\u003ccode\u003e857ff4f\u003c/code\u003e\u003c/a\u003e [build] remove cddl updates from release preparation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/2183264fb7c1d63c7cebc64ba5649b67902b4c35\"\u003e\u003ccode\u003e2183264\u003c/code\u003e\u003c/a\u003e [dotnet] [bidi] SetMediaFeaturesOverride command in Emulation module (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17953\"\u003e#17953\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/5fd1f414be84a2e5b3753512fb1555d91c5c9ae1\"\u003e\u003ccode\u003e5fd1f41\u003c/code\u003e\u003c/a\u003e [build] unlock trunk when release preparation PR is closed without merging\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/5b053b5a2684a2104a56088d90d6c5e278d21e1e\"\u003e\u003ccode\u003e5b053b5\u003c/code\u003e\u003c/a\u003e [js][bidi] Add BiDi connection-level event subscription (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17946\"\u003e#17946\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/498c0e7e8dd4e314710e69855898e877d3fe291f\"\u003e\u003ccode\u003e498c0e7\u003c/code\u003e\u003c/a\u003e [build] alert Slack when a CDP update lands on trunk (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17950\"\u003e#17950\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/7bfaedb223f530da5b6e1e8e0038c50100bd6c4f\"\u003e\u003ccode\u003e7bfaedb\u003c/code\u003e\u003c/a\u003e [rb] reject an inbound BiDi scalar outside its union's declared arms (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17947\"\u003e#17947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/083869ccd9866da3975b7f9cd8496a8ca864c62f\"\u003e\u003ccode\u003e083869c\u003c/code\u003e\u003c/a\u003e [dotnet] [bidi] Throw in case of unknown discriminator (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17948\"\u003e#17948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/5b3666d62507b79ae08b0bf0e18604c28bb8f404\"\u003e\u003ccode\u003e5b3666d\u003c/code\u003e\u003c/a\u003e [py] update new BiDi layer generation to conform to latest proposed ADR (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17942\"\u003e#17942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/a4b3c3d00c8b23177c61eb8820bdb1a308a20eac\"\u003e\u003ccode\u003ea4b3c3d\u003c/code\u003e\u003c/a\u003e [build] stop updating browsers and CDP during release preparation (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17940\"\u003e#17940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/SeleniumHQ/Selenium/compare/selenium-4.47.0...selenium-4.48.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentence-transformers` from 6.0.0 to 6.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/sentence-transformers/releases\"\u003esentence-transformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.0.1 - Restore the PyLate prefix on prompted checkpoints, 80 documented multi-vector models\u003c/h2\u003e\n\u003cp\u003eThis patch release fixes a multi-vector loading bug: PyLate checkpoints that carry both a \u003ccode\u003e[Q]\u003c/code\u003e/\u003ccode\u003e[D]\u003c/code\u003e prefix and a text prompt lost the prefix, so they were encoded without a marker they were trained with. It also grows the documented multi-vector model tables from 51 checkpoints to 80.\u003c/p\u003e\n\u003cp\u003eInstall this version with\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Training + Inference\r\npip install sentence-transformers[train]==6.0.1\r\n\u003ch1\u003eInference only, use one of:\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers==6.0.1\npip install sentence-transformers[onnx-gpu]==6.0.1\npip install sentence-transformers[onnx]==6.0.1\npip install sentence-transformers[openvino]==6.0.1\u003c/p\u003e\n\u003ch1\u003eMultimodal dependencies (optional):\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers[image]==6.0.1\npip install sentence-transformers[audio]==6.0.1\npip install sentence-transformers[video]==6.0.1\u003c/p\u003e\n\u003ch1\u003eOr combine as needed:\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers[train,onnx,image]==6.0.1\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003eCompose the PyLate prefix with the saved prompt (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3968\"\u003e#3968\u003c/a\u003e)\u003c/h2\u003e\n\u003cp\u003ePyLate supports a prefix as well as prompt text, and Sentence Transformers assumed that these were mutually exclusive. However, the following three checkpoints carry both a prefix and a prompt, and were trained with the prefix prepended to the prompt text:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero\"\u003e\u003ccode\u003elightonai/ColBERT-Zero\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero-unsupervised\"\u003e\u003ccode\u003elightonai/ColBERT-Zero-unsupervised\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero-supervised\"\u003e\u003ccode\u003elightonai/ColBERT-Zero-supervised\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003ePyLate trained these checkpoints on \u003ccode\u003e[CLS] [Q] search_query: ...\u003c/code\u003e and \u003ccode\u003e[CLS] [D] search_document: ...\u003c/code\u003e, but Sentence Transformers dropped the prefix and encoded them as \u003ccode\u003e[CLS] search_query: ...\u003c/code\u003e and \u003ccode\u003e[CLS] search_document: ...\u003c/code\u003e. After the fix, the performance of the \u003ccode\u003eColBERT-Zero\u003c/code\u003e model improved from 0.6569 NDCG@10 to 0.6824 on the NanoBEIR benchmark. To my knowledge, only these 3 checkpoints used both a prefix and a prompt, so this is the only case where the bug would have affected you.\u003c/p\u003e\n\u003ch2\u003eForward \u003ccode\u003etask\u003c/code\u003e to routed modules in \u003ccode\u003eRouter.preprocess\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3967\"\u003e#3967\u003c/a\u003e)\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003eRouter.forward\u003c/code\u003e has always passed \u003ccode\u003etask\u003c/code\u003e down to the routed module, but \u003ccode\u003eRouter.preprocess\u003c/code\u003e did not, so anything a module does with the task at preprocessing time did nothing behind a \u003ccode\u003eRouter\u003c/code\u003e: \u003ccode\u003equery_length\u003c/code\u003e and \u003ccode\u003edocument_length\u003c/code\u003e caps, \u003ccode\u003equery_expansion\u003c/code\u003e, and the chat-template \u003ccode\u003etask\u003c/code\u003e keyword. No released checkpoint combines a \u003ccode\u003eRouter\u003c/code\u003e with those settings, so this is a latent bug rather than one you are likely to have hit. It would have affected anyone building such a model themselves, with no error to indicate it.\u003c/p\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eThe multi-vector \u003ca href=\"https://sbert.net/docs/multi_vector_encoder/pretrained_models.html\"\u003epretrained models tables\u003c/a\u003e grew from 29 text and 22 visual document retrieval checkpoints to 38 and 42 (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3963\"\u003e#3963\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3969\"\u003e#3969\u003c/a\u003e), with \u003ccode\u003erevision\u003c/code\u003e and \u003ccode\u003etrust_remote_code\u003c/code\u003e notes refreshed as upstream pull requests merged (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3972\"\u003e#3972\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDocumented which Hub tag to filter on for each model type (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3964\"\u003e#3964\u003c/a\u003e), and linked the Multi-Vector Encoder blogposts from the docs (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3966\"\u003e#3966\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded MultiVectorEncoder to the Agent Skill README and refreshed the SauerkrautLM scores (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3955\"\u003e#3955\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eCorrected the minimum versions in the README (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3952\"\u003e#3952\u003c/a\u003e). It still recommended PyTorch 1.11.0+ and \u003ccode\u003etransformers\u003c/code\u003e v4.41.0+, where v6.0 requires PyTorch 2.2+ and \u003ccode\u003etransformers\u003c/code\u003e v5.0+. This is the text rendered as the PyPI project description.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAll Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: Add MultiVectorEncoder to the skills README, refresh the SauerkrautLM scores by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3955\"\u003ehuggingface/sentence-transformers#3955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix the README dependency versions by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3952\"\u003ehuggingface/sentence-transformers#3952\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Add more MultiVectorEncoder models to the pretrained models tables by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3963\"\u003ehuggingface/sentence-transformers#3963\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Clarify which Hub tags to filter on for each model type by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3964\"\u003ehuggingface/sentence-transformers#3964\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Link the Multi-Vector Encoder blogposts by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3966\"\u003ehuggingface/sentence-transformers#3966\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/huggingface/sentence-transformers/commit/b0acd1a4d22ba2bc10072868ddea7612561c9424\"\u003e\u003ccode\u003eb0acd1a\u003c/code\u003e\u003c/a\u003e Update README installation versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/9b415ac93b586400258ac9876c81ce28c36547ba\"\u003e\u003ccode\u003e9b415ac\u003c/code\u003e\u003c/a\u003e Release v6.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/cc0669cea57c834c651f001e3cb07b6fc847f147\"\u003e\u003ccode\u003ecc0669c\u003c/code\u003e\u003c/a\u003e Add/update revisions for pretrained MVE models (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3972\"\u003e#3972\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/f8390f466c9d127cd51dd41805557adaab09d472\"\u003e\u003ccode\u003ef8390f4\u003c/code\u003e\u003c/a\u003e [docs] Refresh the MultiVectorEncoder pretrained models tables (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3969\"\u003e#3969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/4b517229c1dc17ead6c2a61b3d248f62fe4738eb\"\u003e\u003ccode\u003e4b51722\u003c/code\u003e\u003c/a\u003e [fix] Compose the PyLate prefix with the saved prompt (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3968\"\u003e#3968\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/e99c4a9f2422c285cd2d286aeda1af237eadd01d\"\u003e\u003ccode\u003ee99c4a9\u003c/code\u003e\u003c/a\u003e [fix] Forward \u003ccode\u003etask\u003c/code\u003e to routed modules in \u003ccode\u003eRouter.preprocess\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3967\"\u003e#3967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/5d2ec939e960d85afe638bba87523926c63ab263\"\u003e\u003ccode\u003e5d2ec93\u003c/code\u003e\u003c/a\u003e [docs] Link the Multi-Vector Encoder blogposts (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3966\"\u003e#3966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/9c5de2aa8432d7d150e35a7cd4383a39a13e307b\"\u003e\u003ccode\u003e9c5de2a\u003c/code\u003e\u003c/a\u003e [docs] Clarify which Hub tags to filter on for each model type (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3964\"\u003e#3964\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/83680bdf460229a41dd3bf07ed80b5a65d29a430\"\u003e\u003ccode\u003e83680bd\u003c/code\u003e\u003c/a\u003e [docs] Add more MultiVectorEncoder models to the pretrained models tables (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3\"\u003e#3\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/1a43278abe510ca9011fdd0e698c58470ef830eb\"\u003e\u003ccode\u003e1a43278\u003c/code\u003e\u003c/a\u003e docs: Add MultiVectorEncoder to the skills README, refresh the SauerkrautLM s...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/huggingface/sentence-transformers/compare/v6.0.0...v6.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `statsmodels` from 0.14.6 to 0.15.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/statsmodels/statsmodels/releases\"\u003estatsmodels's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 0.15.0\u003c/h2\u003e\n\u003cp\u003eThe statsmodels developers are happy to announce the release of 0.15.0. 358 issues were closed in this release and 655 pull requests were merged. Major new features include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eStandardized on \u003ccode\u003erng\u003c/code\u003e for controlling randomness across the package (SPEC 007), replacing \u003ccode\u003eseed\u003c/code\u003e/\u003ccode\u003erandom_state\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFunctions with variable-length tuple returns now return documented \u003ccode\u003eNamedTuple\u003c/code\u003e results instead\u003c/li\u003e\n\u003cli\u003eA new abstracted formula engine that supports both \u003ccode\u003epatsy\u003c/code\u003e and \u003ccode\u003eformulaic\u003c/code\u003e as the backend\u003c/li\u003e\n\u003cli\u003eSupport for \u003ccode\u003ePolars\u003c/code\u003e DataFrames and Series as model input\u003c/li\u003e\n\u003cli\u003eSwitched the build backend from \u003ccode\u003esetuptools\u003c/code\u003e to \u003ccode\u003emeson-python\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eNew robust estimators: \u003ccode\u003eCovDetMCD\u003c/code\u003e, \u003ccode\u003eCovDetS\u003c/code\u003e, \u003ccode\u003eCovDetMM\u003c/code\u003e, and \u003ccode\u003eRLMDetSMM\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eNew tests: Diebold-Mariano, Pesaran-Timmermann, Jonckheere-Terpstra, Leybourne-McCabe, and a delete-k block jackknife estimator\u003c/li\u003e\n\u003cli\u003eThe Hamilton filter, local false discovery rate correction, and an L1-penalized GLM solver\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eHurdleCountModel\u003c/code\u003e gained \u003ccode\u003efit_regularized\u003c/code\u003e, and \u003ccode\u003eMICEData\u003c/code\u003e is now iterable\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThis release also raises the minimum supported versions of NumPy, SciPy, and pandas, and tightens input validation for many string-valued options across the package (invalid values that previously failed silently or with a confusing error now raise a clear \u003ccode\u003eValueError\u003c/code\u003e). A handful of long-standing bugs in seldom-exercised code paths were also corrected as part of a systematic coverage audit this cycle, some of which change numerical output for affected models. See the \u003ca href=\"https://www.statsmodels.org/devel/release/version0.15.0.html\"\u003erelease notes\u003c/a\u003e for the complete list of enhancements, breaking changes, and bug fixes.\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/statsmodels/statsmodels/commit/278ff9950636cdd4939b4055e339a8e681d79cab\"\u003e\u003ccode\u003e278ff99\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/statsmodels/statsmodels/issues/10211\"\u003e#10211\u003c/a\u003e from bashtage/update-release-note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/ab3f3bc0b70afa94ce0651e8f7c8a6f33c83b378\"\u003e\u003ccode\u003eab3f3bc\u003c/code\u003e\u003c/a\u003e DOC: Final release note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/9307ef1b3a975a3807009432cbb489c4ae6f5c60\"\u003e\u003ccode\u003e9307ef1\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/statsmodels/statsmodels/issues/8712\"\u003e#8712\u003c/a\u003e from bdpedigo/nobs-style\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/463e5c511f3cb55372e7443c4e833691db3bfb67\"\u003e\u003ccode\u003e463e5c5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/statsmodels/statsmodels/issues/10210\"\u003e#10210\u003c/a\u003e from Panzerkampfwagen-del/mice-data-iterable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/cc734d87f77f7e20b58e2f0a104a0e355cd1e1a1\"\u003e\u003ccode\u003ecc734d8\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into mice-data-iterable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/2912b8478c164b80e0b1dca643024d2fe3d6557b\"\u003e\u003ccode\u003e2912b84\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/statsmodels/statsmodels/issues/10209\"\u003e#10209\u003c/a\u003e from Panzerkampfwagen-del/var-df-model-docstring\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/279b9f4b604bf71f14af0c789f28a4c3e5c85dc0\"\u003e\u003ccode\u003e279b9f4\u003c/code\u003e\u003c/a\u003e ENH: make MICEData iterable, yielding successive imputed datasets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/ce7f2c03a53b305bb9569d1d8f69d4334b2ad6db\"\u003e\u003ccode\u003ece7f2c0\u003c/code\u003e\u003c/a\u003e DOC: clarify VARResults.df_model counts parameters per equation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/d1e1875f0c5915eda3abfa878e25209e6244b2dd\"\u003e\u003ccode\u003ed1e1875\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/statsmodels/statsmodels/issues/10205\"\u003e#10205\u003c/a\u003e from bashtage/fix-hurdle-and-l1-cov\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/bb385fb9a1f874768817fd8e84f1a99e25f0d75c\"\u003e\u003ccode\u003ebb385fb\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/statsmodels/statsmodels/issues/10208\"\u003e#10208\u003c/a\u003e from bashtage/update-release-note\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/statsmodels/statsmodels/compare/v0.14.6...v0.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/dwest1507/baby-names-app/pull/27","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwest1507%2Fbaby-names-app/issues/27","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/27/packages"},{"uuid":"5358762751","node_id":"PR_kwDOUOzYNc8AAAABCVDSfA","number":10,"state":"open","title":"Bump the minor-update group across 1 directory with 179 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-05T14:55:57.000Z","updated_at":"2026-09-05T14:56:08.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-update","update_count":179,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"huggingface-hub","old_version":"1.28.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"fastapi","old_version":"0.136.3","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"starlette","old_version":"1.3.1","new_version":"1.6.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"prometheus-fastapi-instrumentator","old_version":"8.0.2","new_version":"8.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"pyzmq","old_version":"27.1.0","new_version":"27.2.0","repository_url":"https://github.com/zeromq/pyzmq"},{"name":"python-json-logger","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"pybase64","old_version":"1.4.3","new_version":"1.5.0","repository_url":"https://github.com/mayeut/pybase64"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions-ai","old_version":"0.4.13","new_version":"0.5.1"},{"name":"triton","old_version":"3.7.1","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"torchcodec","old_version":"0.14.0+cu130","new_version":"0.16.0","repository_url":"https://github.com/pytorch/torchcodec"},{"name":"pynvvideocodec","old_version":"2.0.4","new_version":"2.2.2"},{"name":"nvidia-cutlass-dsl","old_version":"4.6.2","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.8","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.86","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.86","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"cohere","old_version":"7.0.8","new_version":"7.1.1","repository_url":"https://github.com/cohere-ai/cohere-python"},{"name":"cohere-melody","old_version":"0.11.1","new_version":"0.13.4","repository_url":"https://github.com/cohere-ai/melody"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.0","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.3.0","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.1","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"detect-installer","old_version":"0.1.0","new_version":"0.2.1"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi-cloud-cli","old_version":"0.21.0","new_version":"0.24.0","repository_url":"https://github.com/fastapilabs/fastapi-cloud-cli"},{"name":"fastar","old_version":"0.11.0","new_version":"0.12.0","repository_url":"https://github.com/DoctorJohn/fastar"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.15.0","new_version":"0.16.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema-rs","old_version":"0.46.5","new_version":"0.52.1","repository_url":"https://github.com/Stranger6667/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llguidance","old_version":"1.7.6","new_version":"1.8.0","repository_url":"https://github.com/microsoft/llguidance"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.1.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.20.0.48","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.1","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.29.7","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"peft","old_version":"0.19.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.7","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pydantic-settings","old_version":"2.14.2","new_version":"2.15.0","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pyrate-limiter","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/vutran1710/PyrateLimiter"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"rignore","old_version":"0.7.6","new_version":"0.8.1"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"schemathesis","old_version":"4.21.6","new_version":"4.25.2","repository_url":"https://github.com/schemathesis/schemathesis"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"sentry-sdk","old_version":"2.63.0","new_version":"2.68.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.26.8","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.2","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.5","repository_url":"https://github.com/astral-sh/ruff"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 179 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.28.0` | `1.29.0` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.136.3` | `0.141.1` |\n| [starlette](https://github.com/Kludex/starlette) | `1.3.1` | `1.6.0` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `8.0.2` | `8.1.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [pyzmq](https://github.com/zeromq/pyzmq) | `27.1.0` | `27.2.0` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `4.1.0` | `4.2.0` |\n| [pybase64](https://github.com/mayeut/pybase64) | `1.4.3` | `1.5.0` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| opentelemetry-semantic-conventions-ai | `0.4.13` | `0.5.1` |\n| [triton](https://github.com/triton-lang/triton) | `3.7.1` | `3.8.0` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [torchcodec](https://github.com/pytorch/torchcodec) | `0.14.0+cu130` | `0.16.0` |\n| pynvvideocodec | `2.0.4` | `2.2.2` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.6.2` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.8` | `0.2.6` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.86` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.86` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| [cohere](https://github.com/cohere-ai/cohere-python) | `7.0.8` | `7.1.1` |\n| [cohere-melody](https://github.com/cohere-ai/melody) | `0.11.1` | `0.13.4` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.0` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.3.0` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.1` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| detect-installer | `0.1.0` | `0.2.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi-cloud-cli](https://github.com/fastapilabs/fastapi-cloud-cli) | `0.21.0` | `0.24.0` |\n| [fastar](https://github.com/DoctorJohn/fastar) | `0.11.0` | `0.12.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.15.0` | `0.16.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonschema-rs](https://github.com/Stranger6667/jsonschema) | `0.46.5` | `0.52.1` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llguidance](https://github.com/microsoft/llguidance) | `1.7.6` | `1.8.0` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.1.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.20.0.48` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.1` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.29.7` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [peft](https://github.com/huggingface/peft) | `0.19.1` | `0.20.0` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.7` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.14.2` | `2.15.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pyrate-limiter](https://github.com/vutran1710/PyrateLimiter) | `4.4.0` | `4.5.0` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| rignore | `0.7.6` | `0.8.1` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [schemathesis](https://github.com/schemathesis/schemathesis) | `4.21.6` | `4.25.2` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.63.0` | `2.68.1` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.26.8` | `0.27.2` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.2` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.5` |\n\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.28.0 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\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/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.28.0...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `fastapi` from 0.136.3 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15093\"\u003e#15093\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.10\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling sequences with nested Annotated types. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14874\"\u003e#14874\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Accept any base test failure as regression. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16092\"\u003e#16092\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Preserve pytest exit code in regression check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16091\"\u003e#16091\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Test PR regressions against base code. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16090\"\u003e#16090\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.9\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eexclude_defaults\u003c/code\u003e not propagated to dict keys and values in \u003ccode\u003ejsonable_encoder\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16043\"\u003e#16043\u003c/a\u003e by \u003ca href=\"https://github.com/MBGrao\"\u003e\u003ccode\u003e@​MBGrao\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\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/fastapi/fastapi/commit/95f8322ee1dcda7ceace7b1c4f6c9915b36d748f\"\u003e\u003ccode\u003e95f8322\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16106\"\u003e#16106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f137944c435cff4e4b30ea7d12855ea88ddb868c\"\u003e\u003ccode\u003ef137944\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d62354434b2e508fe89024213b220ca8e67dea5e\"\u003e\u003ccode\u003ed623544\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for background tasks and headers from dependencies in `app.fron...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1d211b9c1009d577f39fa2b19b10d9a93a72a0ed\"\u003e\u003ccode\u003e1d211b9\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8a1f8768411e62093e70ce142ea10863a485643c\"\u003e\u003ccode\u003e8a1f876\u003c/code\u003e\u003c/a\u003e 📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16104\"\u003e#16104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c7e7b651d6946c07cc9f675f39c9501d08319e57\"\u003e\u003ccode\u003ec7e7b65\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.0 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16103\"\u003e#16103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/6bceb84053eb2405e9c000aad30ea13367b5ee32\"\u003e\u003ccode\u003e6bceb84\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/5429fed84e84e32672c25a953eca3429b841ce90\"\u003e\u003ccode\u003e5429fed\u003c/code\u003e\u003c/a\u003e ✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more conven...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/628663f4f899c465da423bce681c7adf9a218948\"\u003e\u003ccode\u003e628663f\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.140.13 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16096\"\u003e#16096\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/0b54fd00273019034dd30b120ac842e65d80690e\"\u003e\u003ccode\u003e0b54fd0\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.136.3...0.141.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `starlette` from 1.3.1 to 1.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kludex/starlette/releases\"\u003estarlette's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.6.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003emax_body_size\u003c/code\u003e to \u003ccode\u003eStarlette\u003c/code\u003e and route classes by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3431\"\u003eKludex/starlette#3431\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ehttp.response.debug\u003c/code\u003e info via response extensions by \u003ca href=\"https://github.com/y2kbugger\"\u003e\u003ccode\u003e@​y2kbugger\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3130\"\u003eKludex/starlette#3130\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/y2kbugger\"\u003e\u003ccode\u003e@​y2kbugger\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3130\"\u003eKludex/starlette#3130\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/starlette/compare/1.5.1...1.6.0\"\u003ehttps://github.com/Kludex/starlette/compare/1.5.1...1.6.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.5.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eReject inverted single-byte Range like \u003ccode\u003ebytes=5-4\u003c/code\u003e by \u003ca href=\"https://github.com/nikolauspschuetz\"\u003e\u003ccode\u003e@​nikolauspschuetz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3389\"\u003eencode/starlette#3389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLimit \u003ccode\u003eFileResponse\u003c/code\u003e to 100 ranges by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3430\"\u003eencode/starlette#3430\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/encode/starlette/compare/1.5.0...1.5.1\"\u003ehttps://github.com/encode/starlette/compare/1.5.0...1.5.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.5.0\u003c/h2\u003e\n\u003cp\u003eThis release is all about giving \u003ccode\u003eGZipMiddleware\u003c/code\u003e some love. 🗜️\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eexclude_content_types\u003c/code\u003e parameter to \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3418\"\u003eencode/starlette#3418\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlush GZip output for each streamed chunk by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3419\"\u003eencode/starlette#3419\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSkip compression of partial responses in \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3420\"\u003eencode/starlette#3420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpand default excluded content types in \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3421\"\u003eencode/starlette#3421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/encode/starlette/compare/1.4.1...1.5.0\"\u003ehttps://github.com/encode/starlette/compare/1.4.1...1.5.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.4.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault \u003ccode\u003ethread_minimum_size\u003c/code\u003e in \u003ccode\u003eGZipResponder\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3415\"\u003eKludex/starlette#3415\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/starlette/compare/1.4.0...1.4.1\"\u003ehttps://github.com/Kludex/starlette/compare/1.4.0...1.4.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLazily allocate GZipMiddleware compression resources by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3407\"\u003eKludex/starlette#3407\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003ezlib.compressobj\u003c/code\u003e instead of \u003ccode\u003eGzipFile\u003c/code\u003e in \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3411\"\u003eKludex/starlette#3411\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOffload large GZip compression by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3410\"\u003eKludex/starlette#3410\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/benberryallwood\"\u003e\u003ccode\u003e@​benberryallwood\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3334\"\u003eKludex/starlette#3334\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lkk7\"\u003e\u003ccode\u003e@​lkk7\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3359\"\u003eKludex/starlette#3359\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/starlette/compare/1.3.1...1.4.0\"\u003ehttps://github.com/Kludex/starlette/compare/1.3.1...1.4.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kludex/starlette/blob/main/docs/release-notes.md\"\u003estarlette's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.6.0 (August 8, 2026)\u003c/h2\u003e\n\u003ch4\u003eAdded\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003emax_body_size\u003c/code\u003e to \u003ccode\u003eStarlette\u003c/code\u003e and route classes \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3431\"\u003e#3431\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ehttp.response.debug\u003c/code\u003e information via response extensions \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3130\"\u003e#3130\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.1 (August 8, 2026)\u003c/h2\u003e\n\u003ch4\u003eFixed\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eReject inverted single-byte ranges in \u003ccode\u003eFileResponse\u003c/code\u003e \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3389\"\u003e#3389\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLimit \u003ccode\u003eFileResponse\u003c/code\u003e to 100 ranges \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3430\"\u003e#3430\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.0 (August 8, 2026)\u003c/h2\u003e\n\u003ch4\u003eAdded\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eexclude_content_types\u003c/code\u003e parameter to \u003ccode\u003eGZipMiddleware\u003c/code\u003e \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3418\"\u003e#3418\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanged\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eExpand default excluded content types in \u003ccode\u003eGZipMiddleware\u003c/code\u003e \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3421\"\u003e#3421\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eFixed\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFlush GZip output for each streamed chunk \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3419\"\u003e#3419\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSkip compression of partial responses in \u003ccode\u003eGZipMiddleware\u003c/code\u003e \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3420\"\u003e#3420\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.4.1 (August 5, 2026)\u003c/h2\u003e\n\u003ch4\u003eFixed\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eDefault \u003ccode\u003ethread_minimum_size\u003c/code\u003e to 128 KiB in \u003ccode\u003eGZipResponder\u003c/code\u003e, keeping it usable without the new keyword argument \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3415\"\u003e#3415\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.4.0 (August 5, 2026)\u003c/h2\u003e\n\u003ch4\u003eAdded\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eOffload large GZip compression to a worker thread, keeping the event loop responsive. \u003ccode\u003eGZipMiddleware\u003c/code\u003e accepts a new \u003ccode\u003ethread_minimum_size\u003c/code\u003e parameter (default 128 KiB) controlling the minimum body chunk size compressed in a thread \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3410\"\u003e#3410\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanged\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eUse \u003ccode\u003ezlib.compressobj\u003c/code\u003e instead of \u003ccode\u003eGzipFile\u003c/code\u003e in \u003ccode\u003eGZipMiddleware\u003c/code\u003e, reducing memory usage during compression \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3411\"\u003e#3411\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLazily allocate \u003ccode\u003eGZipMiddleware\u003c/code\u003e compression resources, avoiding compressor allocation for responses that are never compressed \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3407\"\u003e#3407\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/Kludex/starlette/commit/4f250d6b814587e20c5365f0a5f0c4d42bcb929f\"\u003e\u003ccode\u003e4f250d6\u003c/code\u003e\u003c/a\u003e Version 1.6.0 (\u003ca href=\"https://redirect.github.com/Kludex/starlette/issues/3434\"\u003e#3434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/9eea41ad3c26ad21b9bdfe4578c1cdad6c9b9ac2\"\u003e\u003ccode\u003e9eea41a\u003c/code\u003e\u003c/a\u003e Expose \u003ccode\u003ehttp.response.debug\u003c/code\u003e info via response extensions (\u003ca href=\"https://redirect.github.com/Kludex/starlette/issues/3130\"\u003e#3130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/38f8999a229610b36f39d11f67d80515a15c6330\"\u003e\u003ccode\u003e38f8999\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003emax_body_size\u003c/code\u003e to \u003ccode\u003eStarlette\u003c/code\u003e and route classes (\u003ca href=\"https://redirect.github.com/Kludex/starlette/issues/3431\"\u003e#3431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/c41236c03868fb3779a64101f4ea88cd47877e23\"\u003e\u003ccode\u003ec41236c\u003c/code\u003e\u003c/a\u003e Version 1.5.1 (\u003ca href=\"https://redirect.github.com/Kludex/starlette/issues/3432\"\u003e#3432\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/9c500db197859dba4a8db13fa8e7d2c55de8152c\"\u003e\u003ccode\u003e9c500db\u003c/code\u003e\u003c/a\u003e Limit \u003ccode\u003eFileResponse\u003c/code\u003e to 100 ranges (\u003ca href=\"https://redirect.github.com/Kludex/starlette/issues/3430\"\u003e#3430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/78ae82cad482fe66a73fb1217f0a6609b3f998f6\"\u003e\u003ccode\u003e78ae82c\u003c/code\u003e\u003c/a\u003e Reject inverted single-byte Range like bytes=5-4 (\u003ca href=\"https://redirect.github.com/Kludex/starlette/issues/3389\"\u003e#3389\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/c1d6edaf43920104d4389e983c3e0314f6af14cf\"\u003e\u003ccode\u003ec1d6eda\u003c/code\u003e\u003c/a\u003e chore(deps): bump pymdown-extensions from 11.0 to 11.0.1 (\u003ca href=\"https://redirect.github.com/Kludex/starlette/issues/3429\"\u003e#3429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/ee66ca48418780d6415d231851b31464febc32de\"\u003e\u003ccode\u003eee66ca4\u003c/code\u003e\u003c/a\u003e chore(deps): bump the python-packages group across 1 directory with 8 updates...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/00d10167523f819d39d5ca36732348d58645a447\"\u003e\u003ccode\u003e00d1016\u003c/code\u003e\u003c/a\u003e fix(tests): skip test_staticfiles_filename_too_long on Windows where os.pathc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/d96887ea7b49db3d1d15994be6438c7fe99936f4\"\u003e\u003ccode\u003ed96887e\u003c/code\u003e\u003c/a\u003e Add Pydantic Logfire banner to the docs (\u003ca href=\"https://redirect.github.com/Kludex/starlette/issues/3428\"\u003e#3428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kludex/starlette/compare/1.3.1...1.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `aiohttp` from 3.13.3 to 3.14.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aio-libs/aiohttp/blob/master/CHANGES.rst\"\u003eaiohttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.14.3 (2026-07-22)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed the client dropping only the first \u003ccode\u003eAuthorization\u003c/code\u003e, \u003ccode\u003eCookie\u003c/code\u003e and\n\u003ccode\u003eProxy-Authorization\u003c/code\u003e header when a redirect crossed an origin -- by :user:\u003ccode\u003earshsmith1\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n:issue:\u003ccode\u003e13180\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed error message construction in the C HTTP parser -- by :user:\u003ccode\u003ebdraco\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n:issue:\u003ccode\u003e13222\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch1\u003e3.14.2 (2026-07-20)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed :py:attr:\u003ccode\u003e~aiohttp.web.StreamResponse.last_modified\u003c/code\u003e rounding a\n:class:\u003ccode\u003edatetime.datetime\u003c/code\u003e with a fractional second down.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n:issue:\u003ccode\u003e5303\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed resolving \u003ccode\u003elocalhost\u003c/code\u003e on Windows to fall back without \u003ccode\u003eAI_ADDRCONFIG\u003c/code\u003e\nwhen the first lookup fails, so \u003ccode\u003elocalhost\u003c/code\u003e still works without an active\nnetwork.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n:issue:\u003ccode\u003e5357\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/5e392ce0456f5235a4ee6ad46f0e806df2f15873\"\u003e\u003ccode\u003e5e392ce\u003c/code\u003e\u003c/a\u003e Release v3.14.3 (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/49f65d54150397892f7bcc4aae887767d51c322d\"\u003e\u003ccode\u003e49f65d5\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13222\"\u003e#13222\u003c/a\u003e/f4866933 backport][3.14] Build C parser error message from bounded...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/240099e5216a01b32919dcd8dd5c6c0b1bf83671\"\u003e\u003ccode\u003e240099e\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13180\"\u003e#13180\u003c/a\u003e/ee53d655 backport][3.14] drop every copy of credential headers on ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/d93f30a302f8b930074fe14a2be7b2088ba28111\"\u003e\u003ccode\u003ed93f30a\u003c/code\u003e\u003c/a\u003e Bump version (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13202\"\u003e#13202\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/c1b9212ad3d93c24b5fc66ad0849597166bc816e\"\u003e\u003ccode\u003ec1b9212\u003c/code\u003e\u003c/a\u003e Release v3.14.2 (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13201\"\u003e#13201\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/380d4b55e8df48dfd62f1addfb530426f6bc4106\"\u003e\u003ccode\u003e380d4b5\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13054\"\u003e#13054\u003c/a\u003e/ed8b040c backport][3.14] escape backslashes in digest auth quoted-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/e1e1bee363dfba04a9a75c8801717da2ed5bdcb9\"\u003e\u003ccode\u003ee1e1bee\u003c/code\u003e\u003c/a\u003e Make llhttp method array size dynamic (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13174\"\u003e#13174\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13196\"\u003e#13196\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/aa4cf29b6a5ad6f4d21fa1dd3f69193dc2f5d505\"\u003e\u003ccode\u003eaa4cf29\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13170\"\u003e#13170\u003c/a\u003e/2b906869 backport][3.14] Fix StreamResponse.last_modified rounding...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/71b57b40d85a0723c92b0a5a37ebdf518210d2ea\"\u003e\u003ccode\u003e71b57b4\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13172\"\u003e#13172\u003c/a\u003e/a57747ed backport][3.14] Fix C parser folding fragment into query_...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/64a03fb620b623e5a5a1b7103c07ae3e536a0d40\"\u003e\u003ccode\u003e64a03fb\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13169\"\u003e#13169\u003c/a\u003e/1adc0cd7 backport][3.14] ...\n\n_Description has been truncated_","html_url":"https://github.com/zhao6300/vllm-opt/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhao6300%2Fvllm-opt/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"},{"uuid":"5357000050","node_id":"PR_kwDORckIoM8AAAABCTteuQ","number":1465,"state":"open","title":"security(deps): Bump the dataviewer-dependencies group in /data-management/viewer with 11 updates","user":"dependabot[bot]","labels":["dataviewer","dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-05T09:25:14.000Z","updated_at":"2026-09-05T09:27:14.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"security(deps): Bump","group_name":"dataviewer-dependencies","update_count":11,"packages":[{"name":"fastapi","old_version":"0.140.7","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"uvicorn","old_version":"0.51.0","new_version":"0.52.4"},{"name":"pydantic","old_version":"2.13.4","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"python-dotenv","old_version":"1.2.2","new_version":"1.2.3","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"numpy","old_version":"2.5.1","new_version":"2.5.2","repository_url":"https://github.com/numpy/numpy"},{"name":"scipy","old_version":"1.18.0","new_version":"1.18.1","repository_url":"https://github.com/scipy/scipy"},{"name":"pyarrow","old_version":"25.0.0","new_version":"25.0.1","repository_url":"https://github.com/apache/arrow"},{"name":"ruff","old_version":"0.16.0","new_version":"0.16.5","repository_url":"https://github.com/astral-sh/ruff"},{"name":"azure-storage-blob","old_version":"12.30.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"huggingface-hub","old_version":"1.25.1","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"ultralytics","old_version":"8.4.108","new_version":"8.4.132","repository_url":"https://github.com/ultralytics/ultralytics"}],"path":"/data-management/viewer","ecosystem":"pip"},"body":"Bumps the dataviewer-dependencies group in /data-management/viewer with 11 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.140.7` | `0.141.1` |\n| [uvicorn[standard]](https://github.com/Kludex/uvicorn) | `0.51.0` | `0.52.4` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.13.4` | `2.13.5` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.2.2` | `1.2.3` |\n| [numpy](https://github.com/numpy/numpy) | `2.5.1` | `2.5.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.18.0` | `1.18.1` |\n| [pyarrow](https://github.com/apache/arrow) | `25.0.0` | `25.0.1` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.16.0` | `0.16.5` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.30.0` | `12.30.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.25.1` | `1.29.0` |\n| [ultralytics](https://github.com/ultralytics/ultralytics) | `8.4.108` | `8.4.132` |\n\nUpdates `fastapi` from 0.140.7 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15093\"\u003e#15093\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.10\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling sequences with nested Annotated types. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14874\"\u003e#14874\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Accept any base test failure as regression. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16092\"\u003e#16092\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Preserve pytest exit code in regression check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16091\"\u003e#16091\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Test PR regressions against base code. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16090\"\u003e#16090\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.9\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eexclude_defaults\u003c/code\u003e not propagated to dict keys and values in \u003ccode\u003ejsonable_encoder\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16043\"\u003e#16043\u003c/a\u003e by \u003ca href=\"https://github.com/MBGrao\"\u003e\u003ccode\u003e@​MBGrao\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/95f8322ee1dcda7ceace7b1c4f6c9915b36d748f\"\u003e\u003ccode\u003e95f8322\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16106\"\u003e#16106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f137944c435cff4e4b30ea7d12855ea88ddb868c\"\u003e\u003ccode\u003ef137944\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d62354434b2e508fe89024213b220ca8e67dea5e\"\u003e\u003ccode\u003ed623544\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for background tasks and headers from dependencies in `app.fron...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1d211b9c1009d577f39fa2b19b10d9a93a72a0ed\"\u003e\u003ccode\u003e1d211b9\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8a1f8768411e62093e70ce142ea10863a485643c\"\u003e\u003ccode\u003e8a1f876\u003c/code\u003e\u003c/a\u003e 📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16104\"\u003e#16104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c7e7b651d6946c07cc9f675f39c9501d08319e57\"\u003e\u003ccode\u003ec7e7b65\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.0 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16103\"\u003e#16103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/6bceb84053eb2405e9c000aad30ea13367b5ee32\"\u003e\u003ccode\u003e6bceb84\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/5429fed84e84e32672c25a953eca3429b841ce90\"\u003e\u003ccode\u003e5429fed\u003c/code\u003e\u003c/a\u003e ✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more conven...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/628663f4f899c465da423bce681c7adf9a218948\"\u003e\u003ccode\u003e628663f\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.140.13 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16096\"\u003e#16096\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/0b54fd00273019034dd30b120ac842e65d80690e\"\u003e\u003ccode\u003e0b54fd0\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.140.7...0.141.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `uvicorn[standard]` from 0.51.0 to 0.52.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kludex/uvicorn/releases\"\u003euvicorn[standard]'s releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.52.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove duplicate \u003ccode\u003eDate\u003c/code\u003e headers from accepted WebSocket handshakes with \u003ccode\u003ewebsockets-sansio\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/pull/3078\"\u003e#3078\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/uvicorn/compare/0.52.3...0.52.4\"\u003ehttps://github.com/Kludex/uvicorn/compare/0.52.3...0.52.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 0.52.3\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate \u003ccode\u003ezttp\u003c/code\u003e to 0.0.24 and use its combined receive path, improving HTTP/1.1 request parsing performance (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3067\"\u003e#3067\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/uvicorn/compare/0.52.2...0.52.3\"\u003ehttps://github.com/Kludex/uvicorn/compare/0.52.2...0.52.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 0.52.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate \u003ccode\u003ezttp\u003c/code\u003e to 0.0.22, fixing bodyless request receives and improving HTTP/1 request parsing performance (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3063\"\u003e#3063\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/uvicorn/compare/0.52.1...0.52.2\"\u003ehttps://github.com/Kludex/uvicorn/compare/0.52.1...0.52.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 0.52.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eComplete the closing handshake on server-initiated WebSocket closes in the \u003ccode\u003ewebsockets-sansio\u003c/code\u003e and \u003ccode\u003ewsproto\u003c/code\u003e implementations, waiting for the client's close reply with a 10 second timeout instead of resetting the connection (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3053\"\u003e#3053\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing write flow control to the \u003ccode\u003ewebsockets-sansio\u003c/code\u003e implementation, preventing data truncation on server-initiated closes with large in-flight payloads (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3048\"\u003e#3048\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle connection loss while a WebSocket write is waiting on backpressure (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3050\"\u003e#3050\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove duplicate \u003ccode\u003eContent-Type\u003c/code\u003e and \u003ccode\u003eContent-Length\u003c/code\u003e headers from WebSocket denial responses on the \u003ccode\u003ewebsockets-sansio\u003c/code\u003e implementation, and deliver non-UTF-8 denial bodies intact (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3041\"\u003e#3041\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/uvicorn/compare/0.52.0...0.52.1\"\u003ehttps://github.com/Kludex/uvicorn/compare/0.52.0...0.52.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 0.52.0\u003c/h2\u003e\n\u003cp\u003eThis release adds an experimental HTTP/1.1 implementation backed by \u003ca href=\"https://zttp.marcelotryle.com/\"\u003ezttp\u003c/a\u003e, a sans-IO HTTP parser I've been developing on the side: a core written in Zig, with bindings to Python. It has been running under a fuzzer for some weeks now, and has been through multiple rounds of security auditing.\u003c/p\u003e\n\u003cp\u003eIt is still \u003cstrong\u003eexperimental\u003c/strong\u003e, so don't put it in front of production traffic yet. Try it with \u003ccode\u003e--http zttp\u003c/code\u003e, and please send any feedback to the \u003ca href=\"https://github.com/Kludex/uvicorn/issues\"\u003eissue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd an experimental \u003ccode\u003ezttp\u003c/code\u003e HTTP/1.1 implementation, selectable with \u003ccode\u003e--http zttp\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/2979\"\u003e#2979\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKeep non-ASCII WebSocket request headers intact with websockets 17.0, which encodes them with ISO-8859-1 (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3036\"\u003e#3036\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/uvicorn/compare/0.51.0...0.52.0\"\u003ehttps://github.com/Kludex/uvicorn/compare/0.51.0...0.52.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md\"\u003euvicorn[standard]'s changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.52.4 (August 18, 2026)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove duplicate \u003ccode\u003eDate\u003c/code\u003e headers from accepted WebSocket handshakes with \u003ccode\u003ewebsockets-sansio\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/pull/3078\"\u003e#3078\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.52.3 (August 13, 2026)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate \u003ccode\u003ezttp\u003c/code\u003e to 0.0.24 and use its combined receive path, improving HTTP/1.1 request parsing performance (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3067\"\u003e#3067\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.52.2 (August 13, 2026)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate \u003ccode\u003ezttp\u003c/code\u003e to 0.0.22, fixing bodyless request receives and improving HTTP/1 request parsing performance (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3063\"\u003e#3063\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.52.1 (August 1, 2026)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eComplete the closing handshake on server-initiated WebSocket closes in the \u003ccode\u003ewebsockets-sansio\u003c/code\u003e and \u003ccode\u003ewsproto\u003c/code\u003e implementations, waiting for the client's close reply with a 10 second timeout instead of resetting the connection (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3053\"\u003e#3053\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing write flow control to the \u003ccode\u003ewebsockets-sansio\u003c/code\u003e implementation, preventing data truncation on server-initiated closes with large in-flight payloads (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3048\"\u003e#3048\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle connection loss while a WebSocket write is waiting on backpressure (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3050\"\u003e#3050\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove duplicate \u003ccode\u003eContent-Type\u003c/code\u003e and \u003ccode\u003eContent-Length\u003c/code\u003e headers from WebSocket denial responses on the \u003ccode\u003ewebsockets-sansio\u003c/code\u003e implementation, and deliver non-UTF-8 denial bodies intact (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3041\"\u003e#3041\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.52.0 (July 29, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds an experimental HTTP/1.1 implementation backed by \u003ca href=\"https://zttp.marcelotryle.com/\"\u003ezttp\u003c/a\u003e, a sans-IO HTTP parser I've been developing on the side: a core written in Zig, with bindings to Python. It has been running under a fuzzer for some weeks now, and has been through multiple rounds of security auditing.\u003c/p\u003e\n\u003cp\u003eIt is still \u003cstrong\u003eexperimental\u003c/strong\u003e, so don't put it in front of production traffic yet. Try it with \u003ccode\u003e--http zttp\u003c/code\u003e, and please send any feedback to the \u003ca href=\"https://github.com/Kludex/uvicorn/issues\"\u003eissue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd an experimental \u003ccode\u003ezttp\u003c/code\u003e HTTP/1.1 implementation, selectable with \u003ccode\u003e--http zttp\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/2979\"\u003e#2979\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKeep non-ASCII WebSocket request headers intact with websockets 17.0, which encodes them with ISO-8859-1 (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3036\"\u003e#3036\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/Kludex/uvicorn/commit/8988c23704fc373c9206cca53ec57dd8ad7f44a5\"\u003e\u003ccode\u003e8988c23\u003c/code\u003e\u003c/a\u003e Stabilize macOS Python 3.13 signal shutdown tests (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3084\"\u003e#3084\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/898ddca9254b53c5bf7a6ee509756704caaa949f\"\u003e\u003ccode\u003e898ddca\u003c/code\u003e\u003c/a\u003e Update PyPI publish action to version 1.14.2 (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3083\"\u003e#3083\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/3869f8aac2bdd040fa3fbe564e1dad67e2637641\"\u003e\u003ccode\u003e3869f8a\u003c/code\u003e\u003c/a\u003e Restore Mermaid diagram rendering (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3080\"\u003e#3080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/64148a9c574e1eb87d3d09b3ce4c256606f8d973\"\u003e\u003ccode\u003e64148a9\u003c/code\u003e\u003c/a\u003e Version 0.52.4 (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3079\"\u003e#3079\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/9e9e5691bd14d5c4cd66d9bd76c7730bc48461a2\"\u003e\u003ccode\u003e9e9e569\u003c/code\u003e\u003c/a\u003e docs: correct release example PR number (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3072\"\u003e#3072\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/b783dacab50b9d6767b0cf65826b2dc3aae21909\"\u003e\u003ccode\u003eb783dac\u003c/code\u003e\u003c/a\u003e Remove duplicate Date header from SansIO WebSocket handshakes (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3078\"\u003e#3078\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/27019b2a4b1fa6d68a289fcf7d738fbdc6ee4e5d\"\u003e\u003ccode\u003e27019b2\u003c/code\u003e\u003c/a\u003e chore(deps): bump the python-packages group across 1 directory with 11 update...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/1b6427311bb84a15addee688f6d41d96e33f8b0a\"\u003e\u003ccode\u003e1b64273\u003c/code\u003e\u003c/a\u003e Fix a typo in index.md (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3006\"\u003e#3006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/a68da608147c5f79d962352dce11de8f6e32d972\"\u003e\u003ccode\u003ea68da60\u003c/code\u003e\u003c/a\u003e Version 0.52.3 (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3068\"\u003e#3068\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/6e3bb4c5c22531c16d341f2da49f2653307f412f\"\u003e\u003ccode\u003e6e3bb4c\u003c/code\u003e\u003c/a\u003e Use zttp 0.0.24 fast receive path (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3067\"\u003e#3067\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kludex/uvicorn/compare/0.51.0...0.52.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.13.4 to 2.13.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pydantic/pydantic/releases\"\u003epydantic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.5 (2026-08-28)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow reuse of validators when plugins are set by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13535\"\u003e#13535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal on some \u003ccode\u003epydantic-core\u003c/code\u003e struct fields by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13624\"\u003e#13624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13629\"\u003e#13629\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCount validated model fields once in smart unions by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13731\"\u003e#13731\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/pydantic/pydantic/blob/v2.13.5/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.5 (2026-08-28)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.13.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow reuse of validators when plugins are set by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13535\"\u003e#13535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal on some \u003ccode\u003epydantic-core\u003c/code\u003e struct fields by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13624\"\u003e#13624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13629\"\u003e#13629\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCount validated model fields once in smart unions by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13731\"\u003e#13731\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/001dea020e0809844e5b17666432c9135a976f46\"\u003e\u003ccode\u003e001dea0\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003epypa/gh-action-pypi-publish\u003c/code\u003e action to v1.14.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/558379fee957fad25858e33596146c72d5674843\"\u003e\u003ccode\u003e558379f\u003c/code\u003e\u003c/a\u003e Bump twine to v7.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/2cfd5d3d2ae721ea882c045f83b7f7a4003aab01\"\u003e\u003ccode\u003e2cfd5d3\u003c/code\u003e\u003c/a\u003e Do not check for docs build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a735bee5c64e1fe50785c376adaf1275e752b8ac\"\u003e\u003ccode\u003ea735bee\u003c/code\u003e\u003c/a\u003e Fix more Clippy lints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7eed4a16b87afaced4d0eafae230453de3410d64\"\u003e\u003ccode\u003e7eed4a1\u003c/code\u003e\u003c/a\u003e Fix Clippy 0.1.95 warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/b353bbb20a4989b4c033e2be2b4a40d36178b16a\"\u003e\u003ccode\u003eb353bbb\u003c/code\u003e\u003c/a\u003e Prepare release v2.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/63d2cccd6e760da6bbc7fe81a53cb2bde3768f5e\"\u003e\u003ccode\u003e63d2ccc\u003c/code\u003e\u003c/a\u003e Count validated model fields once in smart unions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a53ec2ed342fda4e6aa3684399d04ea57be9a6e4\"\u003e\u003ccode\u003ea53ec2e\u003c/code\u003e\u003c/a\u003e Speed up PyPy CI tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/d65e0f96e890ca82f4b66a15d5b3bd65af2c661c\"\u003e\u003ccode\u003ed65e0f9\u003c/code\u003e\u003c/a\u003e Workaround circular import error in Mypy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/47a6dbf8ad6216211bd0df6ec5c2c6c6ed905b72\"\u003e\u003ccode\u003e47a6dbf\u003c/code\u003e\u003c/a\u003e Fix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.13.4...v2.13.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.2.2 to 1.2.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.2.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eStrip a leading UTF-8 BOM from \u003ccode\u003e.env\u003c/code\u003e file contents so the first variable is no longer silently lost when the file is saved with BOM (e.g. by some JetBrains IDEs on Windows) by [\u003ca href=\"https://github.com/h1whelan\"\u003e\u003ccode\u003e@​h1whelan\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/640\"\u003e#640\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eset_key\u003c/code\u003e now escapes backslashes, so values containing them (Windows paths, regular expressions) survive a write/read round-trip. Quoted values ending in an escaped backslash are no longer mis-parsed as an escaped quote, which used to swallow the following lines by [\u003ca href=\"https://github.com/dchaudhari7177\"\u003e\u003ccode\u003e@​dchaudhari7177\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/680\"\u003e#680\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003edotenv run\u003c/code\u003e now prints a friendly error instead of a traceback when no command is given by [\u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/606\"\u003e#606\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCache the parsed result for empty \u003ccode\u003e.env\u003c/code\u003e files so repeated \u003ccode\u003edotenv_values\u003c/code\u003e/\u003ccode\u003eload_dotenv\u003c/code\u003e calls no longer re-read the file by [\u003ca href=\"https://github.com/ReinerBRO\"\u003e\u003ccode\u003e@​ReinerBRO\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/638\"\u003e#638\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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.3] - 2026-08-16\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eStrip a leading UTF-8 BOM from \u003ccode\u003e.env\u003c/code\u003e file contents so the first variable is no longer silently lost when the file is saved with BOM (e.g. by some JetBrains IDEs on Windows) by [\u003ca href=\"https://github.com/h1whelan\"\u003e\u003ccode\u003e@​h1whelan\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/640\"\u003e#640\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eset_key\u003c/code\u003e now escapes backslashes, so values containing them (Windows paths, regular expressions) survive a write/read round-trip. Quoted values ending in an escaped backslash are no longer mis-parsed as an escaped quote, which used to swallow the following lines by [\u003ca href=\"https://github.com/dchaudhari7177\"\u003e\u003ccode\u003e@​dchaudhari7177\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/680\"\u003e#680\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003edotenv run\u003c/code\u003e now prints a friendly error instead of a traceback when no command is given by [\u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/606\"\u003e#606\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCache the parsed result for empty \u003ccode\u003e.env\u003c/code\u003e files so repeated \u003ccode\u003edotenv_values\u003c/code\u003e/\u003ccode\u003eload_dotenv\u003c/code\u003e calls no longer re-read the file by [\u003ca href=\"https://github.com/ReinerBRO\"\u003e\u003ccode\u003e@​ReinerBRO\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/638\"\u003e#638\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/theskumar/python-dotenv/commit/49515afee2d50c33cad9419b3800b3a0dc93fc59\"\u003e\u003ccode\u003e49515af\u003c/code\u003e\u003c/a\u003e Bump version: 1.2.2 → 1.2.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8ac846ff2760b65470e769d7eed33e540f0934e1\"\u003e\u003ccode\u003e8ac846f\u003c/code\u003e\u003c/a\u003e chore: add release runbook (RELEASING.md) and make release target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/bb31c944fb4b40e8dea59587f525840c38326166\"\u003e\u003ccode\u003ebb31c94\u003c/code\u003e\u003c/a\u003e docs: add 1.2.3 release notes (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/606\"\u003e#606\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/638\"\u003e#638\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/680\"\u003e#680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/f7b18d9c72d1abcc2ad4023424b84f5bee30d266\"\u003e\u003ccode\u003ef7b18d9\u003c/code\u003e\u003c/a\u003e fix: round-trip backslashes through set_key (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/680\"\u003e#680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/751f8c148222e58aa173c83c4e5e6cfccb2cc124\"\u003e\u003ccode\u003e751f8c1\u003c/code\u003e\u003c/a\u003e ci(deps): bump actions/checkout from 6.0.2 to 6.0.3 in the github-actions gro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/f1937b68f338d7ebd7754da377ca08b2f0df8dbb\"\u003e\u003ccode\u003ef1937b6\u003c/code\u003e\u003c/a\u003e chore(deps): update mkdocs-include-markdown-plugin requirement from \u0026gt;=6.0.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/45b93720dd5e9e127d0be3971a04855d34e464d8\"\u003e\u003ccode\u003e45b9372\u003c/code\u003e\u003c/a\u003e chore(deps): update pytest requirement from \u0026gt;=3.9 to \u0026gt;=9.0.3 (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/653\"\u003e#653\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/72896e9244d2a1ff8d5e1934d3df8a35c813799a\"\u003e\u003ccode\u003e72896e9\u003c/code\u003e\u003c/a\u003e docs: fix broken mkdocs link in CONTRIBUTING.md (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/72754a16a4743e4c92edf87ce59ba0e4ff78758d\"\u003e\u003ccode\u003e72754a1\u003c/code\u003e\u003c/a\u003e ci(deps): bump peaceiris/actions-gh-pages from 4.0.0 to 4.1.0 in the github-a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/078325e92558330e9addc661b789c7b6123fa73c\"\u003e\u003ccode\u003e078325e\u003c/code\u003e\u003c/a\u003e ci(security): harden CI/CD supply chain with SHA pinning and least-privilege ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.2.2...v1.2.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `numpy` from 2.5.1 to 2.5.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/numpy/numpy/releases\"\u003enumpy's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.5.2 (Aug 9, 2026)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.5.2 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.5.2 is a patch release that fixes bugs discovered after the 2.5.1\nrelease. The big news is that it includes wheels for the newly released\nPython 3.15.0rc1.\u003c/p\u003e\n\u003cp\u003eThis release supports Python versions 3.12-3.15\u003c/p\u003e\n\u003ch2\u003eC API changes\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003ePyArray_StringDTypeObject\u003c/code\u003e is opaque under the abi3t stable ABI\u003c/h3\u003e\n\u003cp\u003eThe \u003ccode\u003ePyArray_StringDTypeObject\u003c/code\u003e was accidentally exposed in NumPy\n2.5 when targeting the free-threading-compatible stable ABI\n(\u003ccode\u003ePy_TARGET_ABI3T\u003c/code\u003e). \u003ccode\u003ePyArray_StringDTypeObject\u003c/code\u003e is now an opaque\nstruct: extensions compiled that way cannot access its fields, since\nthe struct layout depends on the size of the object header. Any code\nthat accessed \u003ccode\u003ePyArray_StringDTypeObject\u003c/code\u003e fields in an abi3t build\nwould have crashed, so we are making this API change in a bugfix\nrelease.\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eNpyString\u003c/code\u003e allocator API remains usable by passing the\ndescriptor object pointer, e.g.\n\u003ccode\u003eNpyString_acquire_allocator((PyArray_StringDTypeObject *)descr)\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e(\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31771\"\u003egh-31771\u003c/a\u003e)\u003c/p\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eA total of 16 people contributed to this release. People with a \u0026quot;+\u0026quot; by their\nnames contributed a patch for the first time.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeetsingh Meena +\u003c/li\u003e\n\u003cli\u003eCharalampos Stratakis\u003c/li\u003e\n\u003cli\u003eCharles Harris\u003c/li\u003e\n\u003cli\u003eChris Ninham +\u003c/li\u003e\n\u003cli\u003eDavid Woods\u003c/li\u003e\n\u003cli\u003eGeonho +\u003c/li\u003e\n\u003cli\u003eGopu Yeshwanth Reddy +\u003c/li\u003e\n\u003cli\u003eIason Krommydas\u003c/li\u003e\n\u003cli\u003eIjtihed Kilani\u003c/li\u003e\n\u003cli\u003eJelle Zijlstra +\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eKumar Aditya\u003c/li\u003e\n\u003cli\u003eMike Boyle\u003c/li\u003e\n\u003cli\u003eNathan Goldbaum\u003c/li\u003e\n\u003cli\u003eRaghuveer Devulapalli\u003c/li\u003e\n\u003cli\u003eSebastian Berg\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/numpy/numpy/commit/48fecee5453aa1d31e6b79dcb3969dc1a6d1a891\"\u003e\u003ccode\u003e48fecee\u003c/code\u003e\u003c/a\u003e REL: Prepare for the NumPy 2.5.2 release (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32226\"\u003e#32226\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/ecf599ce3995e07be7298d226cbcce34b31a1f0a\"\u003e\u003ccode\u003eecf599c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32221\"\u003e#32221\u003c/a\u003e from charris/backport-32151\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/3c7ac97a576ef0ec22ce5aa1b924724942124d59\"\u003e\u003ccode\u003e3c7ac97\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32220\"\u003e#32220\u003c/a\u003e from charris/backport-32205\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/23b30f49b390ffa504364886717d75cf22789b74\"\u003e\u003ccode\u003e23b30f4\u003c/code\u003e\u003c/a\u003e BUG: avoid segfaults when legacy copyswap slot is not defined (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32151\"\u003e#32151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/4964ca8930f3a2ca8da14399c5ea68a6f3fc088b\"\u003e\u003ccode\u003e4964ca8\u003c/code\u003e\u003c/a\u003e TYP: \u003ccode\u003eisclose\u003c/code\u003e shape-typing fix for 2d array-likes (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32205\"\u003e#32205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/c37ed944dcb27b4e0320972f2b5a5a5a07737c53\"\u003e\u003ccode\u003ec37ed94\u003c/code\u003e\u003c/a\u003e MAINT: Skip limited_api tests on some platforms. (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32214\"\u003e#32214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/5cfd73b6f0114592724aa90ebebbf091ffb775f1\"\u003e\u003ccode\u003e5cfd73b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32206\"\u003e#32206\u003c/a\u003e from charris/update-cibuildwheel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/d8262bcae74ad393a2a65cf50f36eb9f402aeeec\"\u003e\u003ccode\u003ed8262bc\u003c/code\u003e\u003c/a\u003e MAINT: Update cibuildwheel to v4.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/988d94d8cf4e3bfbff59107ee177543eed024be1\"\u003e\u003ccode\u003e988d94d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32158\"\u003e#32158\u003c/a\u003e from charris/backport-32133\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/b2e4f97f15635817791aa12832a90c5a1347b821\"\u003e\u003ccode\u003eb2e4f97\u003c/code\u003e\u003c/a\u003e BUG: avoid possible stack overflow in arraydescr_dealloc (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32133\"\u003e#32133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/numpy/numpy/compare/v2.5.1...v2.5.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `scipy` from 1.18.0 to 1.18.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/scipy/scipy/releases\"\u003escipy's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eSciPy 1.18.1 Release Notes\u003c/h1\u003e\n\u003cp\u003eSciPy \u003ccode\u003e1.18.1\u003c/code\u003e is a bug-fix release with no new features\ncompared to \u003ccode\u003e1.18.0\u003c/code\u003e. This release includes binaries on\nPyPI for Python \u003ccode\u003e3.15\u003c/code\u003e, and the minimum required version\nof the GCC toolchain has been increased to \u003ccode\u003e10.3.0\u003c/code\u003e.\u003c/p\u003e\n\u003ch1\u003eAuthors\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eName (commits)\u003c/li\u003e\n\u003cli\u003eWasim Akram (2) +\u003c/li\u003e\n\u003cli\u003eJake Bowhay (1)\u003c/li\u003e\n\u003cli\u003eMichael Bratsch (1)\u003c/li\u003e\n\u003cli\u003eDietrich Brunn (1)\u003c/li\u003e\n\u003cli\u003eEvgeni Burovski (1)\u003c/li\u003e\n\u003cli\u003eAadya Chinubhai (1)\u003c/li\u003e\n\u003cli\u003eLucas Colley (3)\u003c/li\u003e\n\u003cli\u003eTekin Ertekin (1) +\u003c/li\u003e\n\u003cli\u003eFuyugithub (2) +\u003c/li\u003e\n\u003cli\u003eRalf Gommers (11)\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu (1)\u003c/li\u003e\n\u003cli\u003eIjtihed Kilani (1) +\u003c/li\u003e\n\u003cli\u003eAndrew Nelson (2)\u003c/li\u003e\n\u003cli\u003eIlhan Polat (1)\u003c/li\u003e\n\u003cli\u003eTyler Reddy (39)\u003c/li\u003e\n\u003cli\u003eromao05 (1) +\u003c/li\u003e\n\u003cli\u003eMichael Simacek (1) +\u003c/li\u003e\n\u003cli\u003eJacob Vanderplas (2)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eA total of 18 people contributed to this release.\nPeople with a \u0026quot;+\u0026quot; by their names contributed a patch for the first time.\nThis list of names is automatically generated, and may not be fully complete.\u003c/p\u003e\n\u003cp\u003eNote that the source and binary assets associated with this release were published to PyPI using \u003ca href=\"https://docs.pypi.org/trusted-publishers/\"\u003etrusted publishing\u003c/a\u003e, and so the trusted assets and their hashes are made available more securely at \u003ca href=\"https://pypi.org/project/scipy/1.18.1/\"\u003ehttps://pypi.org/project/scipy/1.18.1/\u003c/a\u003e rather than providing them here in a less secure manner.\u003c/p\u003e\n\u003cp\u003eA complete list of issues and pull requests associated with this release is available in the associated \u003ca href=\"https://github.com/scipy/scipy/releases/download/v1.18.1/README.txt\"\u003e\u003ccode\u003eREADME.txt\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/e4e854eaa8f18d807cd3496028e257e36caa93cc\"\u003e\u003ccode\u003ee4e854e\u003c/code\u003e\u003c/a\u003e REL: SciPy 1.18.1 rel commit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/3c8e5f83e56996ae853e34ff80d87a1ad0758186\"\u003e\u003ccode\u003e3c8e5f8\u003c/code\u003e\u003c/a\u003e BLD, MAINT: pythran bounds for \u003ccode\u003e1.18.1\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/scipy/scipy/issues/25978\"\u003e#25978\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/54c0f956656ba02daf9b1c48af9b089656c9d4cf\"\u003e\u003ccode\u003e54c0f95\u003c/code\u003e\u003c/a\u003e BLD, MAINT: pythran bounds for \u003ccode\u003e1.18.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/45a355d11e858ef76f5f2975f06f276115beb5ef\"\u003e\u003ccode\u003e45a355d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/scipy/scipy/issues/25884\"\u003e#25884\u003c/a\u003e from tylerjereddy/treddy_backports_1.18.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/a717e28c89e40c22edabcb8d64dd41d537f63683\"\u003e\u003ccode\u003ea717e28\u003c/code\u003e\u003c/a\u003e DOC: PR 25884 revisions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/bb489c02a6b5e094646609051936128265e12692\"\u003e\u003ccode\u003ebb489c0\u003c/code\u003e\u003c/a\u003e DOC: PR 25884 revisions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/09bca241fe2f4f2f23b5a3f43a285a7a2c79fe26\"\u003e\u003ccode\u003e09bca24\u003c/code\u003e\u003c/a\u003e BLD: package: pin meson on win-64 to avoid clang-cl bug (\u003ca href=\"https://redirect.github.com/scipy/scipy/issues/25913\"\u003e#25913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/095fe563cc65e121cea2493c1f1ad22018b5e25e\"\u003e\u003ccode\u003e095fe56\u003c/code\u003e\u003c/a\u003e DOC, BLD: PR 25884 revisions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/e66ea6414cbd718fe86751dcd23533b44f19588a\"\u003e\u003ccode\u003ee66ea64\u003c/code\u003e\u003c/a\u003e DOC: update minimum GCC version in toolchain roadmap\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/c0216532f619338e75842b7802b52c128c40e94f\"\u003e\u003ccode\u003ec021653\u003c/code\u003e\u003c/a\u003e TST: tolerance bumps and skips on 32-bit platforms\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/scipy/scipy/compare/v1.18.0...v1.18.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyarrow` from 25.0.0 to 25.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/apache/arrow/releases\"\u003epyarrow's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eApache Arrow 25.0.1\u003c/h2\u003e\n\u003cp\u003eRelease Notes URL: \u003ca href=\"https://arrow.apache.org/release/25.0.1.html\"\u003ehttps://arrow.apache.org/release/25.0.1.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eApache Arrow 25.0.1 RC1\u003c/h2\u003e\n\u003cp\u003eRelease Notes: Release Candidate: 25.0.1 RC1\u003c/p\u003e\n\u003ch2\u003eApache Arrow 25.0.1 RC0\u003c/h2\u003e\n\u003cp\u003eRelease Notes: Release Candidate: 25.0.1 RC0\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/apache/arrow/commit/beccec0d0c451b7aa3e4530416ac431b3c035c69\"\u003e\u003ccode\u003ebeccec0\u003c/code\u003e\u003c/a\u003e MINOR: [Release] Update versions for 25.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/7bdf01ada82ff9ee76155227bf09f2949187bd2c\"\u003e\u003ccode\u003e7bdf01a\u003c/code\u003e\u003c/a\u003e MINOR: [Release] Update .deb/.rpm changelogs for 25.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/91dbae1f71772dff7f7d07817fcff6f47c2645e0\"\u003e\u003ccode\u003e91dbae1\u003c/code\u003e\u003c/a\u003e MINOR: [Release] Update CHANGELOG.md for 25.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/849d4634e7784d568477f5e159a13b003a7dff4c\"\u003e\u003ccode\u003e849d463\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50808\"\u003eGH-50808\u003c/a\u003e: [Python] Narrow Feather deprecation to V1 format (\u003ca href=\"https://redirect.github.com/apache/arrow/issues/50685\"\u003e#50685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/e70ebf50f0b7a67f3892a307d1dc583e51411bf2\"\u003e\u003ccode\u003ee70ebf5\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50600\"\u003eGH-50600\u003c/a\u003e: [Release] Pin Python version in Conda verification\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/f5037be3f02318738713500f83fc6aef37002f1b\"\u003e\u003ccode\u003ef5037be\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50578\"\u003eGH-50578\u003c/a\u003e: [C++][FlightRPC][ODBC] Always return SQL_NO_DATA from GetMoreResult...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/149158986337257eed43392ee04a2680504de77c\"\u003e\u003ccode\u003e1491589\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50503\"\u003eGH-50503\u003c/a\u003e: [Parquet] Remove SVE128 unpack (\u003ca href=\"https://redirect.github.com/apache/arrow/issues/50611\"\u003e#50611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/d1eaaedef3c7b05668e620fee1478fc884f36296\"\u003e\u003ccode\u003ed1eaaed\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50326\"\u003eGH-50326\u003c/a\u003e: [Python] Convert arrays to Python objects without per-element Scala...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/fe141358b2783f2b85eaa982834aece0cb90c5b1\"\u003e\u003ccode\u003efe14135\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50428\"\u003eGH-50428\u003c/a\u003e: [C++] Better mimalloc configuration on macOS (\u003ca href=\"https://redirect.github.com/apache/arrow/issues/50549\"\u003e#50549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/8fb632a2eebdaf5ff230a797e587a4c3359f9fac\"\u003e\u003ccode\u003e8fb632a\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50383\"\u003eGH-50383\u003c/a\u003e: [Release] Remove deprecated -f flag on conda create environment (\u003ca href=\"https://redirect.github.com/apache/arrow/issues/5\"\u003e#5\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/apache/arrow/compare/apache-arrow-25.0.0...apache-arrow-25.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.16.0 to 0.16.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.16.5\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-08-27.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow rules without codes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28049\"\u003e#28049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eIntroduce category selectors (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27666\"\u003e#27666\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate preview default rules and categories (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27877\"\u003e#27877\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Detect blocking generic HTTP requests (\u003ccode\u003eASYNC210\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28024\"\u003e#28024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-datetimez\u003c/code\u003e] Allow timezone-safe \u003ccode\u003estrptime\u003c/code\u003e chains (\u003ccode\u003eDTZ007\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28023\"\u003e#28023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Respect side effects in \u003ccode\u003elambda\u003c/code\u003e defaults (\u003ccode\u003eSIM401\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28000\"\u003e#28000\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix duplicated \u0026quot;of\u0026quot; in \u003ccode\u003eClientOptions\u003c/code\u003e doc comment (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27978\"\u003e#27978\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument rule acceptance guidelines (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27910\"\u003e#27910\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocument the new category selectors (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27906\"\u003e#27906\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sharkdp\"\u003e\u003ccode\u003e@​sharkdp\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jelle-openai\"\u003e\u003ccode\u003e@​jelle-openai\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ntBre\"\u003e\u003ccode\u003e@​ntBre\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aarushkandukoori\"\u003e\u003ccode\u003e@​aarushkandukoori\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eInstall ruff 0.16.5\u003c/h2\u003e\n\u003ch3\u003eInstall prebuilt binaries via shell script\u003c/h3\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003ecurl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/ruff/releases/download/0.16.5/ruff-installer.sh | sh\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch3\u003eInstall prebuilt binaries via powershell script\u003c/h3\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003epowershell -ExecutionPolicy Bypass -c \u0026quot;irm https://releases.astral.sh/github/ruff/releases/download/0.16.5/ruff-installer.ps1 | iex\u0026quot;\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eDownload ruff 0.16.5\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.16.5\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-08-27.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow rules without codes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28049\"\u003e#28049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eIntroduce category selectors (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27666\"\u003e#27666\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate preview default rules and categories (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27877\"\u003e#27877\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Detect blocking generic HTTP requests (\u003ccode\u003eASYNC210\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28024\"\u003e#28024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-datetimez\u003c/code\u003e] Allow timezone-safe \u003ccode\u003estrptime\u003c/code\u003e chains (\u003ccode\u003eDTZ007\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28023\"\u003e#28023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Respect side effects in \u003ccode\u003elambda\u003c/code\u003e defaults (\u003ccode\u003eSIM401\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28000\"\u003e#28000\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix duplicated \u0026quot;of\u0026quot; in \u003ccode\u003eClientOptions\u003c/code\u003e doc comment (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27978\"\u003e#27978\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument rule acceptance guidelines (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27910\"\u003e#27910\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocument the new category selectors (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27906\"\u003e#27906\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sharkdp\"\u003e\u003ccode\u003e@​sharkdp\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jelle-openai\"\u003e\u003ccode\u003e@​jelle-openai\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ntBre\"\u003e\u003ccode\u003e@​ntBre\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aarushkandukoori\"\u003e\u003ccode\u003e@​aarushkandukoori\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.16.4\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-08-20.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH116\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/26460\"\u003e#26460\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Restrict \u003ccode\u003edelete-full-slice\u003c/code\u003e to lists (\u003ccode\u003eFURB131\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27711\"\u003e#27711\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Skip \u003ccode\u003eFURB101\u003c/code\u003e and \u003ccode\u003eFURB103\u003c/code\u003e when the \u003ccode\u003eopen\u003c/code\u003e argument is a file descriptor (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27643\"\u003e#27643\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eInvalidInstruction\u003c/code\u003e on Windows CPUs that do not support \u003ccode\u003ePOPCNT\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27803\"\u003e#27803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Emit semantic syntax errors in string type definitions as \u003ccode\u003eF722\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27835\"\u003e#27835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow \u003ccode\u003eos._exit\u003c/code\u003e imports in \u003ccode\u003eimport-private-name\u003c/code\u003e (\u003ccode\u003ePLC2701\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27738\"\u003e#27738\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/9e4938c4a60bed3e87a11ee1e1db1bd23f4d964a\"\u003e\u003ccode\u003e9e4938c\u003c/code\u003e\u003c/a\u003e Bump 0.16.5 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28110\"\u003e#28110\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/aad0e909ef1390f4b2a3ba8aa0a67fb8ea5cbacd\"\u003e\u003ccode\u003eaad0e90\u003c/code\u003e\u003c/a\u003e Allow rules without codes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28049\"\u003e#28049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/5fdab73c5052350400c36b08c5d7710210343bc4\"\u003e\u003ccode\u003e5fdab73\u003c/code\u003e\u003c/a\u003e Update preview default rules and categories (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/27877\"\u003e#27877\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/29c8e5b2d0a46eb7dc4ff11c1b0a0dc5ccea52e4\"\u003e\u003ccode\u003e29c8e5b\u003c/code\u003e\u003c/a\u003e Document rule acceptance guidelines (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/27910\"\u003e#27910\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/50a4d7fd106603a5616b01ac3bef3306252b248f\"\u003e\u003ccode\u003e50a4d7f\u003c/code\u003e\u003c/a\u003e Document the new category selectors (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/27906\"\u003e#27906\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/ada87950ea188f882f69b7bd6e2213a9696e3ee2\"\u003e\u003ccode\u003eada8795\u003c/code\u003e\u003c/a\u003e Introduce category selectors (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/27666\"\u003e#27666\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d8947238863b61922bfc83f07edcc697c1cc07c0\"\u003e\u003ccode\u003ed894723\u003c/code\u003e\u003c/a\u003e [ty] Infer lambda parameters through callable type aliases (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28109\"\u003e#28109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/2685fdebbcf9938736fed8c45886a629f9c99a06\"\u003e\u003ccode\u003e2685fde\u003c/code\u003e\u003c/a\u003e [ty] Narrow functional enum members in \u003ccode\u003e==\u003c/code\u003e and \u003ccode\u003ematch\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28103\"\u003e#28103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/efcffd2178ce62e9951a53d4c50cadc225a0cfec\"\u003e\u003ccode\u003eefcffd2\u003c/code\u003e\u003c/a\u003e [ty] Intersection simplifications with subtype-related generic specialization...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/eb780488037504e11f145ed778654fd8a825028b\"\u003e\u003ccode\u003eeb78048\u003c/code\u003e\u003c/a\u003e [ty] Bump ecosystem-analyzer for HTML escaping (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28104\"\u003e#28104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.16.0...0.16.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `azure-storage-blob` from 12.30.0 to 12.30.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Azure/azure-sdk-for-python/releases\"\u003eazure-storage-blob's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eazure-storage-blob_12.30.1\u003c/h2\u003e\n\u003ch2\u003e12.30.1 (2026-08-24)\u003c/h2\u003e\n\u003ch3\u003eBugs Fixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug where client-side encryption 2.0 could not detect a rearrangement of otherwise-untampered authenticated regions in blob content. This is now detected and exceptions are thrown. For data recovery purposes, this behavior can be reverted by setting the \u0026quot;AZURE_STORAGE_CSE_V2_ALLOW_MISORDERED_AUTH_REGIONS\u0026quot; environment variable.\u003c/li\u003e\n\u003cli\u003eFixed a bug in client-side encryption where version downgrades, and other metadata tampering, was only detected at the start of a download.\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/Azure/azure-sdk-for-python/commit/c274a90a7614f9ce8717f16580536eececae0dd3\"\u003e\u003ccode\u003ec274a90\u003c/code\u003e\u003c/a\u003e Exclude azure-storage-extensions from storage CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/7edaedd4aa4d72e58f53690e846ab13ece809235\"\u003e\u003ccode\u003e7edaedd\u003c/code\u003e\u003c/a\u003e Sync ci.yml from main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/ca8e6ac281a94f372f0056f7e8f1f3e776b868d1\"\u003e\u003ccode\u003eca8e6ac\u003c/code\u003e\u003c/a\u003e [Storage] Prepare GA patch for CSE fixes (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/48692\"\u003e#48692\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/Azure/azure-sdk-for-python/compare/azure-storage-blob_12.30.0...azure-storage-blob_12.30.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.25.1 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.25.1...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ultralytics` from 8.4.108 to 8.4.132\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ultralytics/ultralytics/releases\"\u003eultralytics's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.4.132 - Extend fraction to the test split (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25966\"\u003e#25966\u003c/a\u003e)\u003c/h2\u003e\n\u003ch2\u003e🌟 Summary\u003c/h2\u003e\n\u003cp\u003e🚀 Ultralytics v8.4.132 improves dataset efficiency, hardware compatibility, export workflows, and experiment-tracking documentation, with the headline feature being finer control over test-split downloads.\u003c/p\u003e\n\u003ch2\u003e📊 Key Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e🎯 Test-split control with \u003ccode\u003efraction\u003c/code\u003e\u003c/strong\u003e \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25966\"\u003e#25966\u003c/a\u003e — \u003ca href=\"https://github.com/fcakyon\"\u003e\u003ccode\u003e@​fcakyon\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eList-based \u003ccode\u003efraction\u003c/code\u003e now supports train, validation, and test splits.\u003c/li\u003e\n\u003cli\u003eUse a third value to limit test data or set it to \u003ccode\u003e0\u003c/code\u003e to skip test-image downloads entirely.\u003c/li\u003e\n\u003cli\u003eExisting two-value lists remain compatible and continue using the full test split.\u003c/li\u003e\n\u003cli\u003eThe same split-selection behavior is shared across training, validation, dataset conversion, and export calibration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e⚡ More efficient NDJSON workflows\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePlatform NDJSON runs no longer need to download unused test images, which can significantly reduce transfer time, storage use, and bandwidth during multi-dataset sweeps.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e🩹 Corrected NMS and validation on Ascend NPU\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNMS now uses the optimized torchvision path on supported Ascend NPU setups while continuing to avoid unsupported XPU behavior.\u003c/li\u003e\n\u003cli\u003eFixes repeated NMS time-limit warnings and prevents incomplete batches from producing incorrect mAP results.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e📚 Improved YOLO26 end-to-end and export guidance\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDocumentation now more accurately describes NMS-free detection, segmentation, pose, and OBB models.\u003c/li\u003e\n\u003cli\u003eClarifies export-format fallbacks, quantization limitations, Hailo behavior, detection limits, and expected accuracy trade-offs.\u003c/li\u003e\n\u003cli\u003eUpdates performance claims and explains when custom post-processing or NMS is still required.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e🔄 Broader support for exported non-YOLO models\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDocuments loading generic exported models through \u003ccode\u003eYOLO()\u003c/code\u003e when \u003ccode\u003etask\u003c/code\u003e and \u003ccode\u003eimgsz\u003c/code\u003e are supplied explicitly.\u003c/li\u003e\n\u003cli\u003eAdds guidance for using format-specific backend classes and explains input-layout, autograd, and post-processing differences.\u003c/li\u003e\n\u003cli\u003eCorrects TensorFlow SavedModel, LiteRT, and numerical-parity documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e🧪 Better classification subset sampling\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFraction-based sampling for local classification datasets now selects images across classes instead of taking a class-ordered prefix.\u003c/li\u003e\n\u003cli\u003eProduces more representative subsets for quick experiments and validation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e📈 Updated experiment-tracking integrations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRay Tune now uses its public context and reporting APIs.\u003c/li\u003e\n\u003cli\u003eClearML, Comet, TensorBoard, MLflow, Ray Tune, and W\u0026amp;B instructions now better match current callback behavior.\u003c/li\u003e\n\u003cli\u003eNeptune integration and settings were retired following the service shutdown.\u003c/li\u003e\n\u003cli\u003eMLflow environment-variable handling is more flexible, and TensorBoard setup is clearly documented as optional.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e🧩 Additional training and export corrections\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRT-DETR documentation recommends disabling deterministic mode on CUDA, since its attention operation cannot provide fully deterministic backward training.\u003c/li\u003e\n\u003cli\u003eCopy-Paste augmentation is correctly documented for both segment and OBB tasks.\u003c/li\u003e\n\u003cli\u003eClassification color-jitter settings are clarified when automatic augmentation is disabled.\u003c/li\u003e\n\u003cli\u003eIMX exports no longer reject end-to-end models at the exporter entry point.\u003c/li\u003e\n\u003cli\u003eCLA workflow matching now accepts signature comments with surrounding whitespace or text.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🎯 Purpose \u0026amp; Impact\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e💾 Lower data-transfer costs:\u003c/strong\u003e Users running Platform or NDJSON workflows can avoid downloading test data they do not need.\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/ultralytics/ultralytics/commit/94aec674e24efcd953c441c976a3b76fb4373865\"\u003e\u003ccode\u003e94aec67\u003c/code\u003e\u003c/a\u003e Extend fraction to the test split (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25966\"\u003e#25966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/4889c0f3ffab72f4e877f6161b5063a242b8bc39\"\u003e\u003ccode\u003e4889c0f\u003c/code\u003e\u003c/a\u003e Recommend deterministic=False for RT-DETR training (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25965\"\u003e#25965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/bd5977c3c67bc1c5abe0f5b9ce9ad7cc4e2e2a44\"\u003e\u003ccode\u003ebd5977c\u003c/code\u003e\u003c/a\u003e Fix classification fraction sampling (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25968\"\u003e#25968\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/9d0f2f7d93559d131d168122e9352ddd720b245b\"\u003e\u003ccode\u003e9d0f2f7\u003c/code\u003e\u003c/a\u003e Correct copy-paste task attribution and the export conf default claim (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25969\"\u003e#25969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/749811baa2b1ab5c9ad796ee69fac380639489c8\"\u003e\u003ccode\u003e749811b\u003c/code\u003e\u003c/a\u003e Correct end-to-end detection guide claims and export fallback coverage (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25971\"\u003e#25971\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/a0289cff9adb8d553b3d900c8ecfefc3f1850851\"\u003e\u003ccode\u003ea0289cf\u003c/code\u003e\u003c/a\u003e Document running non-YOLO exports through Ultralytics and correct parity clai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/0e581acdce68854cae20a7a3cd7e8bd88595a1f6\"\u003e\u003ccode\u003e0e581ac\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://youtu.be/rMllxg8ZLs8\"\u003ehttps://youtu.be/rMllxg8ZLs8\u003c/a\u003e to docs (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25975\"\u003e#25975\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/56d6f980a799220ab84291fbb309c796e7a1d049\"\u003e\u003ccode\u003e56d6f98\u003c/code\u003e\u003c/a\u003e Update experiment tracking callbacks and docs (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25972\"\u003e#25972\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/0a50543f5e05cc2d039ba308af606ebda4fe1ce1\"\u003e\u003ccode\u003e0a50543\u003c/code\u003e\u003c/a\u003e Fix NMS time-limit truncation and wrong mAP on Ascend NPU (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25963\"\u003e#25963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/4eb7a6ebc7e27068f529eb71a85af8fbcf7f269d\"\u003e\u003ccode\u003e4eb7a6e\u003c/code\u003e\u003c/a\u003e Match CLA signature comments by substring in the workflow gate (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25970\"\u003e#25970\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ultralytics/ultralytics/compare/v8.4.108...v8.4.132\"\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- `@depend...\n\n_Description has been truncated_","html_url":"https://github.com/microsoft/physical-ai-toolchain/pull/1465","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fphysical-ai-toolchain/issues/1465","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1465/packages"},{"uuid":"5356994405","node_id":"PR_kwDORckIoM8AAAABCTtNeg","number":1463,"state":"open","title":"security(deps): Bump the lerobot-dependencies group across 1 directory with 10 updates","user":"dependabot[bot]","labels":["dependencies","python","training"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-05T09:23:51.000Z","updated_at":"2026-09-05T09:24:13.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"security(deps): Bump","group_name":"lerobot-dependencies","update_count":10,"packages":[{"name":"azure-storage-blob","old_version":"12.30.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"mlflow-skinny","old_version":"3.14.0","new_version":"3.15.2","repository_url":"https://github.com/mlflow/mlflow"},{"name":"pydantic","old_version":"2.13.4","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"sentry-sdk","old_version":"2.66.1","new_version":"2.68.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"datasets","old_version":"5.0.0","new_version":"5.0.1","repository_url":"https://github.com/huggingface/datasets"},{"name":"pyarrow","old_version":"25.0.0","new_version":"25.0.1","repository_url":"https://github.com/apache/arrow"},{"name":"huggingface-hub","old_version":"1.25.1","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"gitpython","old_version":"3.1.57","new_version":"3.1.61","repository_url":"https://github.com/gitpython-developers/GitPython"},{"name":"cryptography","old_version":"50.0.0","new_version":"50.0.1","repository_url":"https://github.com/pyca/cryptography"},{"name":"wrapt","old_version":"2.2.2","new_version":"2.3.0","repository_url":"https://github.com/GrahamDumpleton/wrapt"}],"path":null,"ecosystem":"pip"},"body":"Bumps the lerobot-dependencies group with 10 updates in the /training/il/lerobot directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.30.0` | `12.30.1` |\n| [mlflow-skinny](https://github.com/mlflow/mlflow) | `3.14.0` | `3.15.2` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.13.4` | `2.13.5` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.66.1` | `2.68.1` |\n| [datasets](https://github.com/huggingface/datasets) | `5.0.0` | `5.0.1` |\n| [pyarrow](https://github.com/apache/arrow) | `25.0.0` | `25.0.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.25.1` | `1.29.0` |\n| [gitpython](https://github.com/gitpython-developers/GitPython) | `3.1.57` | `3.1.61` |\n| [cryptography](https://github.com/pyca/cryptography) | `50.0.0` | `50.0.1` |\n| [wrapt](https://github.com/GrahamDumpleton/wrapt) | `2.2.2` | `2.3.0` |\n\n\nUpdates `azure-storage-blob` from 12.30.0 to 12.30.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Azure/azure-sdk-for-python/releases\"\u003eazure-storage-blob's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eazure-storage-blob_12.30.1\u003c/h2\u003e\n\u003ch2\u003e12.30.1 (2026-08-24)\u003c/h2\u003e\n\u003ch3\u003eBugs Fixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug where client-side encryption 2.0 could not detect a rearrangement of otherwise-untampered authenticated regions in blob content. This is now detected and exceptions are thrown. For data recovery purposes, this behavior can be reverted by setting the \u0026quot;AZURE_STORAGE_CSE_V2_ALLOW_MISORDERED_AUTH_REGIONS\u0026quot; environment variable.\u003c/li\u003e\n\u003cli\u003eFixed a bug in client-side encryption where version downgrades, and other metadata tampering, was only detected at the start of a download.\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/Azure/azure-sdk-for-python/commit/c274a90a7614f9ce8717f16580536eececae0dd3\"\u003e\u003ccode\u003ec274a90\u003c/code\u003e\u003c/a\u003e Exclude azure-storage-extensions from storage CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/7edaedd4aa4d72e58f53690e846ab13ece809235\"\u003e\u003ccode\u003e7edaedd\u003c/code\u003e\u003c/a\u003e Sync ci.yml from main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/ca8e6ac281a94f372f0056f7e8f1f3e776b868d1\"\u003e\u003ccode\u003eca8e6ac\u003c/code\u003e\u003c/a\u003e [Storage] Prepare GA patch for CSE fixes (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/48692\"\u003e#48692\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/Azure/azure-sdk-for-python/compare/azure-storage-blob_12.30.0...azure-storage-blob_12.30.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mlflow-skinny` from 3.14.0 to 3.15.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mlflow/mlflow/releases\"\u003emlflow-skinny's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.15.2\u003c/h2\u003e\n\u003cp\u003eMLflow 3.15.2 is a patch release that includes several major features and improvements.\u003c/p\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Evaluation] Support immutable evaluation dataset versions (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24845\"\u003e#24845\u003c/a\u003e, \u003ca href=\"https://github.com/danielseong1\"\u003e\u003ccode\u003e@​danielseong1\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Evaluation] Add scorer_ensemble primitive for combining scorer results (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24749\"\u003e#24749\u003c/a\u003e, \u003ca href=\"https://github.com/alkispoly-db\"\u003e\u003ccode\u003e@​alkispoly-db\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Evaluation] Preserve base judge invocation flow in MemAlign aligned judges (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24883\"\u003e#24883\u003c/a\u003e, \u003ca href=\"https://github.com/veronicalyu320\"\u003e\u003ccode\u003e@​veronicalyu320\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracking] Pre-import \u003ccode\u003edatabricks.sdk\u003c/code\u003e in Databricks to avoid telemetry deadlock (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24841\"\u003e#24841\u003c/a\u003e, \u003ca href=\"https://github.com/aaronteo-db\"\u003e\u003ccode\u003e@​aaronteo-db\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Build / Tracking] Align \u003ccode\u003eruns.status\u003c/code\u003e constraint metadata (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24890\"\u003e#24890\u003c/a\u003e, \u003ca href=\"https://github.com/joshuawong-db\"\u003e\u003ccode\u003e@​joshuawong-db\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMLflow 3.15.1 is a patch release that includes bug fixes and documentation updates.\u003c/p\u003e\n\u003ch3\u003eBug fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Model Registry] Skip \u003ccode\u003eenv_pack\u003c/code\u003e on ARM client images (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24762\"\u003e#24762\u003c/a\u003e, \u003ca href=\"https://github.com/qyc\"\u003e\u003ccode\u003e@​qyc\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Scoring / Tracking] Harden version parsing against missing/non-PEP440 versions on Databricks Serverless (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24799\"\u003e#24799\u003c/a\u003e, \u003ca href=\"https://github.com/PattaraS\"\u003e\u003ccode\u003e@​PattaraS\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation updates:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Docs] Clarify scorer versioning documentation (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24769\"\u003e#24769\u003c/a\u003e, \u003ca href=\"https://github.com/nihalmenon\"\u003e\u003ccode\u003e@​nihalmenon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.15.0\u003c/h2\u003e\n\u003cp\u003eMLflow 3.15.0 includes several major features and improvements\u003c/p\u003e\n\u003ch3\u003eMajor New Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e🧩 \u003ca href=\"https://mlflow.org/docs/latest/genai/mcp-registry/\"\u003eMCP Registry\u003c/a\u003e\u003c/strong\u003e: A centralized catalog for registering, versioning, and sharing Model Context Protocol servers — with semantic-versioned configs, promotable aliases, tags, auto-discovered tools, and ready-made connection instructions for Claude Code and \u003ccode\u003e.mcp.json\u003c/code\u003e. Manage it from the UI, REST API, or Python!\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e🤖 MLflow Assistant enhancements\u003c/strong\u003e: The in-app AI assistant now supports multiple LLM providers (Claude Code, Codex, and OpenAI-compatible/Gateway endpoints) chosen from a single settings page, displays live per-session token usage and estimated cost in the composer, and is easier to set up — \u003ccode\u003emlflow agent setup\u003c/code\u003e can enable it in one prompt, with API keys stored securely in the Gateway's LLM Connections.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e🗂️ Sharable table views\u003c/strong\u003e: Save named views of the Runs table — capturing columns, order, widths, filters, and sort — and share them by URL.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚡ Proxy-less artifact upload/download via presigned URLs\u003c/strong\u003e: Large artifact transfers can now bypass the tracking server and talk directly to cloud storage (e.g. S3) through presigned URLs, cutting server load and timeouts on big files. We fall back to proxied transfer automatically for backward compatibility.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e🖼️ Multi-modal attachments in LLM judges\u003c/strong\u003e: \u003ccode\u003e{{ trace }}\u003c/code\u003e judges created with \u003ccode\u003emake_judge()\u003c/code\u003e can now \u003cem\u003esee\u003c/em\u003e images captured in trace spans via a new \u003ccode\u003eget_span_image\u003c/code\u003e tool, which fetches attachments as base64 data URLs and passes them to multimodal models (Anthropic, Gemini, and OpenAI-compatible via litellm) — enabling evaluation of vision tasks, screenshots, and other visual content.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther Assorted Features \u0026amp; Improvements:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Tracing / Tracking] Add Pydantic AI 2.x autologging support (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24721\"\u003e#24721\u003c/a\u003e, \u003ca href=\"https://github.com/B-Step62\"\u003e\u003ccode\u003e@​B-Step62\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracing / UI] [3/3] Add action recommendation for low-value issue detection result (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24580\"\u003e#24580\u003c/a\u003e, \u003ca href=\"https://github.com/B-Step62\"\u003e\u003ccode\u003e@​B-Step62\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Gateway] Support per-endpoint budget policies in the AI Gateway (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24370\"\u003e#24370\u003c/a\u003e, \u003ca href=\"https://github.com/joelrobin18\"\u003e\u003ccode\u003e@​joelrobin18\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Evaluation / Gateway] Add \u003ccode\u003esap-ai-core:/\u003c/code\u003e provider for SAP AI Core Orchestration v2 with \u003ccode\u003eextra_headers\u003c/code\u003e support (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24356\"\u003e#24356\u003c/a\u003e, \u003ca href=\"https://github.com/shivamxtech\"\u003e\u003ccode\u003e@​shivamxtech\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Model Registry] [Model Registry] Migrate UC model artifact download to native temp-creds (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24576\"\u003e#24576\u003c/a\u003e, \u003ca href=\"https://github.com/AknA13\"\u003e\u003ccode\u003e@​AknA13\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Gateway / Tracing / UI] [2/3] Simplify issue detection start modal (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24579\"\u003e#24579\u003c/a\u003e, \u003ca href=\"https://github.com/B-Step62\"\u003e\u003ccode\u003e@​B-Step62\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracing / UI] [1/3] Run issue detection in the background (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24578\"\u003e#24578\u003c/a\u003e, \u003ca href=\"https://github.com/B-Step62\"\u003e\u003ccode\u003e@​B-Step62\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracing] [BUG] Fix otel parent context propagation (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24444\"\u003e#24444\u003c/a\u003e, \u003ca href=\"https://github.com/iyashk\"\u003e\u003ccode\u003e@​iyashk\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Model Registry] [Model Registry] Gate UC model-registry client on native \u003ccode\u003e/api/2.1\u003c/code\u003e endpoints (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24517\"\u003e#24517\u003c/a\u003e, \u003ca href=\"https://github.com/AknA13\"\u003e\u003ccode\u003e@​AknA13\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Docs / Tracking] Enable artifacts-only mode with workspaces (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24452\"\u003e#24452\u003c/a\u003e, \u003ca href=\"https://github.com/kramaranya\"\u003e\u003ccode\u003e@​kramaranya\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracing / UI] Stop eagerly prefetching full neighboring traces in tracing UI (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24411\"\u003e#24411\u003c/a\u003e, \u003ca href=\"https://github.com/DaoDaoNoCode\"\u003e\u003ccode\u003e@​DaoDaoNoCode\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Docs / Gateway] Authenticate OpenAI-protocol coding agents through the RBAC gateway (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24294\"\u003e#24294\u003c/a\u003e, \u003ca href=\"https://github.com/joshuawong-db\"\u003e\u003ccode\u003e@​joshuawong-db\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mlflow/mlflow/blob/master/CHANGELOG.md\"\u003emlflow-skinny's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.15.2 (2026-08-25)\u003c/h2\u003e\n\u003cp\u003eMLflow 3.15.2 is a patch release that includes several major features and improvements.\u003c/p\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Evaluation] Support immutable evaluation dataset versions (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24845\"\u003e#24845\u003c/a\u003e, \u003ca href=\"https://github.com/danielseong1\"\u003e\u003ccode\u003e@​danielseong1\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Evaluation] Add scorer_ensemble primitive for combining scorer results (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24749\"\u003e#24749\u003c/a\u003e, \u003ca href=\"https://github.com/alkispoly-db\"\u003e\u003ccode\u003e@​alkispoly-db\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Evaluation] Preserve base judge invocation flow in MemAlign aligned judges (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24883\"\u003e#24883\u003c/a\u003e, \u003ca href=\"https://github.com/veronicalyu320\"\u003e\u003ccode\u003e@​veronicalyu320\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracking] Pre-import \u003ccode\u003edatabricks.sdk\u003c/code\u003e in Databricks to avoid telemetry deadlock (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24841\"\u003e#24841\u003c/a\u003e, \u003ca href=\"https://github.com/aaronteo-db\"\u003e\u003ccode\u003e@​aaronteo-db\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Build / Tracking] Align \u003ccode\u003eruns.status\u003c/code\u003e constraint metadata (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24890\"\u003e#24890\u003c/a\u003e, \u003ca href=\"https://github.com/joshuawong-db\"\u003e\u003ccode\u003e@​joshuawong-db\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.15.1 (2026-08-03)\u003c/h2\u003e\n\u003cp\u003eMLflow 3.15.1 is a patch release that includes bug fixes and documentation updates.\u003c/p\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Model Registry] Skip \u003ccode\u003eenv_pack\u003c/code\u003e on ARM client images (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24762\"\u003e#24762\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24835\"\u003e#24835\u003c/a\u003e, \u003ca href=\"https://github.com/qyc\"\u003e\u003ccode\u003e@​qyc\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Scoring / Tracking] Harden version parsing against missing/non-PEP440 versions on Databricks Serverless (+ lint rule) (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24799\"\u003e#24799\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24813\"\u003e#24813\u003c/a\u003e, \u003ca href=\"https://github.com/PattaraS\"\u003e\u003ccode\u003e@​PattaraS\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDocumentation updates:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Docs] Clarify scorer versioning documentation (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24769\"\u003e#24769\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24805\"\u003e#24805\u003c/a\u003e, \u003ca href=\"https://github.com/nihalmenon\"\u003e\u003ccode\u003e@​nihalmenon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.15.0 (2026-07-31)\u003c/h2\u003e\n\u003cp\u003eMLflow 3.15.0 includes several major features and improvements\u003c/p\u003e\n\u003ch3\u003eMajor New Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e🧩 \u003ca href=\"https://mlflow.org/docs/latest/genai/mcp-registry/\"\u003eMCP Registry\u003c/a\u003e\u003c/strong\u003e: A centralized catalog for registering, versioning, and sharing Model Context Protocol servers — with semantic-versioned configs, promotable aliases, tags, auto-discovered tools, and ready-made connection instructions for Claude Code and \u003ccode\u003e.mcp.json\u003c/code\u003e. Manage it from the UI, REST API, or Python!\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e🤖 MLflow Assistant enhancements\u003c/strong\u003e: The in-app AI assistant now supports multiple LLM providers (Claude Code, Codex, and OpenAI-compatible/Gateway endpoints) chosen from a single settings page, displays live per-session token usage and estimated cost in the composer, and is easier to set up — \u003ccode\u003emlflow agent setup\u003c/code\u003e can enable it in one prompt, with API keys stored securely in the Gateway's LLM Connections.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e🗂️ Sharable table views\u003c/strong\u003e: Save named views of the Runs table — capturing columns, order, widths, filters, and sort — and share them by URL.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚡ Proxy-less artifact upload/download via presigned URLs\u003c/strong\u003e: Large artifact transfers can now bypass the tracking server and talk directly to cloud storage (e.g. S3) through presigned URLs, cutting server load and timeouts on big files. We fall back to proxied transfer automatically for backward compatibility.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e🖼️ Multi-modal attachments in LLM judges\u003c/strong\u003e: \u003ccode\u003e{{ trace }}\u003c/code\u003e judges created with \u003ccode\u003emake_judge()\u003c/code\u003e can now \u003cem\u003esee\u003c/em\u003e images captured in trace spans via a new \u003ccode\u003eget_span_image\u003c/code\u003e tool, which fetches attachments as base64 data URLs and passes them to multimodal models (Anthropic, Gemini, and OpenAI-compatible via litellm) — enabling evaluation of vision tasks, screenshots, and other visual content.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther Assorted Features \u0026amp; Improvements:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Tracing / Tracking] Add Pydantic AI 2.x autologging support (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24721\"\u003e#24721\u003c/a\u003e, \u003ca href=\"https://github.com/B-Step62\"\u003e\u003ccode\u003e@​B-Step62\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracing / UI] [3/3] Add action recommendation for low-value issue detection result (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24580\"\u003e#24580\u003c/a\u003e, \u003ca href=\"https://github.com/B-Step62\"\u003e\u003ccode\u003e@​B-Step62\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Gateway] Support per-endpoint budget policies in the AI Gateway (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24370\"\u003e#24370\u003c/a\u003e, \u003ca href=\"https://github.com/joelrobin18\"\u003e\u003ccode\u003e@​joelrobin18\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Evaluation / Gateway] Add \u003ccode\u003esap-ai-core:/\u003c/code\u003e provider for SAP AI Core Orchestration v2 with \u003ccode\u003eextra_headers\u003c/code\u003e support (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24356\"\u003e#24356\u003c/a\u003e, \u003ca href=\"https://github.com/shivamxtech\"\u003e\u003ccode\u003e@​shivamxtech\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Model Registry] [Model Registry] Migrate UC model artifact download to native temp-creds (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24576\"\u003e#24576\u003c/a\u003e, \u003ca href=\"https://github.com/AknA13\"\u003e\u003ccode\u003e@​AknA13\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Gateway / Tracing / UI] [2/3] Simplify issue detection start modal (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24579\"\u003e#24579\u003c/a\u003e, \u003ca href=\"https://github.com/B-Step62\"\u003e\u003ccode\u003e@​B-Step62\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracing / UI] [1/3] Run issue detection in the background (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24578\"\u003e#24578\u003c/a\u003e, \u003ca href=\"https://github.com/B-Step62\"\u003e\u003ccode\u003e@​B-Step62\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracing] [BUG] Fix otel parent context propagation (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24444\"\u003e#24444\u003c/a\u003e, \u003ca href=\"https://github.com/iyashk\"\u003e\u003ccode\u003e@​iyashk\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/ca15da96555ef1ef80a61393bf8559ffe5c2e8df\"\u003e\u003ccode\u003eca15da9\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003ebuild-docs\u003c/code\u003e workflow for publishing release docs (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24857\"\u003e#24857\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/25331\"\u003e#25331\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/b2af1074494c2e9ca3892324e5b115db9f634186\"\u003e\u003ccode\u003eb2af107\u003c/code\u003e\u003c/a\u003e Bump version to 3.15.2 (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/25327\"\u003e#25327\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/e3efd508b8bacc4f072a5508a0dc3a38901dedbd\"\u003e\u003ccode\u003ee3efd50\u003c/code\u003e\u003c/a\u003e Backport runs.status constraint metadata alignment (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24890\"\u003e#24890\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/878e786d8710a914ee3d36e1fcc7356923560291\"\u003e\u003ccode\u003e878e786\u003c/code\u003e\u003c/a\u003e Backport MLFLOW_TRACE_ARCHIVAL_CONFIG delenv in workspace store tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/c2e884846cf5a713fc2fbca0c92299e17ee83fb5\"\u003e\u003ccode\u003ec2e8848\u003c/code\u003e\u003c/a\u003e Pin litellm\u0026lt;1.97 in test-requirements for genai job\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/dd646e32b042c297f44c9c18dbcb01af04711fc3\"\u003e\u003ccode\u003edd646e3\u003c/code\u003e\u003c/a\u003e Backport httpx2 lock assertion for unpinned openai\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/dde2279d3e06d3de9d9d532cccca6c16266bcfad\"\u003e\u003ccode\u003edde2279\u003c/code\u003e\u003c/a\u003e Pin ag2\u0026lt;1 and litellm\u0026lt;1.97 to fix branch-3.15 CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/d5198d714ed0ef98bcfb90c02fc53f54617b7da4\"\u003e\u003ccode\u003ed5198d7\u003c/code\u003e\u003c/a\u003e Preserve base judge invocation flow in MemAlign aligned judges (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24883\"\u003e#24883\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/fb67e7d0d6041467652f0557ef17161636c0965d\"\u003e\u003ccode\u003efb67e7d\u003c/code\u003e\u003c/a\u003e [GenAI] Support immutable evaluation dataset versions (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24845\"\u003e#24845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/0b363e612f9fc59b8c4ac5f557d2abdedabc32bf\"\u003e\u003ccode\u003e0b363e6\u003c/code\u003e\u003c/a\u003e Pre-import \u003ccode\u003edatabricks.sdk\u003c/code\u003e in Databricks to avoid telemetry deadlock (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24841\"\u003e#24841\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mlflow/mlflow/compare/v3.14.0...v3.15.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.13.4 to 2.13.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pydantic/pydantic/releases\"\u003epydantic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.5 (2026-08-28)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow reuse of validators when plugins are set by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13535\"\u003e#13535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal on some \u003ccode\u003epydantic-core\u003c/code\u003e struct fields by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13624\"\u003e#13624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13629\"\u003e#13629\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCount validated model fields once in smart unions by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13731\"\u003e#13731\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/pydantic/pydantic/blob/v2.13.5/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.5 (2026-08-28)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.13.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow reuse of validators when plugins are set by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13535\"\u003e#13535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal on some \u003ccode\u003epydantic-core\u003c/code\u003e struct fields by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13624\"\u003e#13624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13629\"\u003e#13629\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCount validated model fields once in smart unions by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13731\"\u003e#13731\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/001dea020e0809844e5b17666432c9135a976f46\"\u003e\u003ccode\u003e001dea0\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003epypa/gh-action-pypi-publish\u003c/code\u003e action to v1.14.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/558379fee957fad25858e33596146c72d5674843\"\u003e\u003ccode\u003e558379f\u003c/code\u003e\u003c/a\u003e Bump twine to v7.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/2cfd5d3d2ae721ea882c045f83b7f7a4003aab01\"\u003e\u003ccode\u003e2cfd5d3\u003c/code\u003e\u003c/a\u003e Do not check for docs build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a735bee5c64e1fe50785c376adaf1275e752b8ac\"\u003e\u003ccode\u003ea735bee\u003c/code\u003e\u003c/a\u003e Fix more Clippy lints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7eed4a16b87afaced4d0eafae230453de3410d64\"\u003e\u003ccode\u003e7eed4a1\u003c/code\u003e\u003c/a\u003e Fix Clippy 0.1.95 warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/b353bbb20a4989b4c033e2be2b4a40d36178b16a\"\u003e\u003ccode\u003eb353bbb\u003c/code\u003e\u003c/a\u003e Prepare release v2.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/63d2cccd6e760da6bbc7fe81a53cb2bde3768f5e\"\u003e\u003ccode\u003e63d2ccc\u003c/code\u003e\u003c/a\u003e Count validated model fields once in smart unions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a53ec2ed342fda4e6aa3684399d04ea57be9a6e4\"\u003e\u003ccode\u003ea53ec2e\u003c/code\u003e\u003c/a\u003e Speed up PyPy CI tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/d65e0f96e890ca82f4b66a15d5b3bd65af2c661c\"\u003e\u003ccode\u003ed65e0f9\u003c/code\u003e\u003c/a\u003e Workaround circular import error in Mypy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/47a6dbf8ad6216211bd0df6ec5c2c6c6ed905b72\"\u003e\u003ccode\u003e47a6dbf\u003c/code\u003e\u003c/a\u003e Fix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.13.4...v2.13.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry-sdk` from 2.66.1 to 2.68.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/releases\"\u003esentry-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.68.1\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003eenable_logs\u003c/code\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e(logs) Don't stop sending auto-collected logs when \u003ccode\u003eenable_logs=True\u003c/code\u003e by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7237\"\u003e#7237\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eIf you have \u003ccode\u003eenable_logs\u003c/code\u003e set to \u003ccode\u003eTrue\u003c/code\u003e, our logging integrations for the standard library logging module as well as Loguru will auto-collect logs and send them to Sentry as Sentry logs by default, preserving old behavior. Turning automatic collection off for a specific integration can still be achieved using the \u003ccode\u003ecapture_sentry_logs\u003c/code\u003e integration option.\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.logging import LoggingIntegration\nfrom sentry_sdk.integrations.loguru import LoguruIntegration\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\nenable_logs=True,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nLoggingIntegration(capture_sentry_logs=True),\u003cbr /\u003e\nLoguruIntegration(capture_sentry_logs=False),\u003cbr /\u003e\n],\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003ePlease note that the \u003ccode\u003eenable_logs\u003c/code\u003e option is deprecated and will be removed in the next major release. The \u003ccode\u003esentry_sdk.logger.X\u003c/code\u003e API now works regardless of it, and auto-collection can be opted into via the \u003ccode\u003ecapture_sentry_logs\u003c/code\u003e integration-level options, which are \u003ccode\u003eFalse\u003c/code\u003e by default, unless you have \u003ccode\u003eenable_logs=True\u003c/code\u003e. We've added this compatibility layer to make the transition to a \u003ccode\u003eenable_logs\u003c/code\u003e-free world easier.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes 🐛\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e(django) Add \u003ccode\u003efailed_request_status_codes\u003c/code\u003e by \u003ca href=\"https://github.com/mgaligniana\"\u003e\u003ccode\u003e@​mgaligniana\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7140\"\u003e#7140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(anthropic) Gate \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7207\"\u003e#7207\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(google_genai) Gate streaming \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7210\"\u003e#7210\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(langchain) Use \u003ccode\u003egen_ai.tool.definitions\u003c/code\u003e attribute when data collection is enabled by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7204\"\u003e#7204\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(langgraph,huggingface_hub) Gate \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7208\"\u003e#7208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(openai) Gate \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7205\"\u003e#7205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(openai_agents) Gate \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7209\"\u003e#7209\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.68.0\u003c/h2\u003e\n\u003ch3\u003eImportant\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eWe're making \u003ccode\u003eenable_logs\u003c/code\u003e and \u003ccode\u003eenable_metrics\u003c/code\u003e no-op with this release (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7177\"\u003e#7177\u003c/a\u003e), and they'll be dropped in the next major.\u003c/p\u003e\n\u003cp\u003ePreviously, \u003ccode\u003eenable_logs\u003c/code\u003e also controlled automatic logs collection from the logging and Loguru integrations. These integrations now get an integration-level \u003ccode\u003ecapture_sentry_logs\u003c/code\u003e boolean option to allow for more control over the auto-collection. These options are \u003ccode\u003eFalse\u003c/code\u003e by default, i.e., \u003cstrong\u003enothing is auto-collected without your explicit opt-in\u003c/strong\u003e.\u003c/p\u003e\n\u003ch4\u003eAction Needed\u003c/h4\u003e\n\u003cp\u003eIf you had \u003ccode\u003eenable_logs\u003c/code\u003e set to \u003ccode\u003eTrue\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eIf you were using the \u003ccode\u003esentry_sdk.logger.X\u003c/code\u003e API, no action necessary, the API will just work.\u003c/li\u003e\n\u003cli\u003eIf you were auto-collecting logs from either \u003ccode\u003eLoggingIntegration\u003c/code\u003e or \u003ccode\u003eLoguruIntegration\u003c/code\u003e, the auto-collection \u003cstrong\u003ewill be turned off in this release\u003c/strong\u003e. You can switch auto-collection on explicitly with:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.logging import LoggingIntegration\nfrom sentry_sdk.integrations.loguru import LoguruIntegration\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md\"\u003esentry-sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.68.1\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003eenable_logs\u003c/code\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e(logs) Don't stop sending auto-collected logs when \u003ccode\u003eenable_logs=True\u003c/code\u003e by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7237\"\u003e#7237\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eIf you have \u003ccode\u003eenable_logs\u003c/code\u003e set to \u003ccode\u003eTrue\u003c/code\u003e, our logging integrations for the standard library logging module as well as Loguru will auto-collect logs and send them to Sentry as Sentry logs by default, preserving old behavior. Turning automatic collection off for a specific integration can still be achieved using the \u003ccode\u003ecapture_sentry_logs\u003c/code\u003e integration option.\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.logging import LoggingIntegration\nfrom sentry_sdk.integrations.loguru import LoguruIntegration\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\nenable_logs=True,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nLoggingIntegration(capture_sentry_logs=True),\u003cbr /\u003e\nLoguruIntegration(capture_sentry_logs=False),\u003cbr /\u003e\n],\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003ePlease note that the \u003ccode\u003eenable_logs\u003c/code\u003e option is deprecated and will be removed in the next major release. The \u003ccode\u003esentry_sdk.logger.X\u003c/code\u003e API now works regardless of it, and auto-collection can be opted into via the \u003ccode\u003ecapture_sentry_logs\u003c/code\u003e integration-level options, which are \u003ccode\u003eFalse\u003c/code\u003e by default, unless you have \u003ccode\u003eenable_logs=True\u003c/code\u003e. We've added this compatibility layer to make the transition to a \u003ccode\u003eenable_logs\u003c/code\u003e-free world easier.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes 🐛\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e(django) Add \u003ccode\u003efailed_request_status_codes\u003c/code\u003e by \u003ca href=\"https://github.com/mgaligniana\"\u003e\u003ccode\u003e@​mgaligniana\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7140\"\u003e#7140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(anthropic) Gate \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7207\"\u003e#7207\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(google_genai) Gate streaming \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7210\"\u003e#7210\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(langchain) Use \u003ccode\u003egen_ai.tool.definitions\u003c/code\u003e attribute when data collection is enabled by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7204\"\u003e#7204\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(langgraph,huggingface_hub) Gate \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7208\"\u003e#7208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(openai) Gate \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7205\"\u003e#7205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(openai_agents) Gate \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7209\"\u003e#7209\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.68.0\u003c/h2\u003e\n\u003ch3\u003eImportant\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eWe're making \u003ccode\u003eenable_logs\u003c/code\u003e and \u003ccode\u003eenable_metrics\u003c/code\u003e no-op with this release (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7177\"\u003e#7177\u003c/a\u003e), and they'll be dropped in the next major.\u003c/p\u003e\n\u003cp\u003ePreviously, \u003ccode\u003eenable_logs\u003c/code\u003e also controlled automatic logs collection from the logging and Loguru integrations. These integrations now get an integration-level \u003ccode\u003ecapture_sentry_logs\u003c/code\u003e boolean option to allow for more control over the auto-collection. These options are \u003ccode\u003eFalse\u003c/code\u003e by default, i.e., \u003cstrong\u003enothing is auto-collected without your explicit opt-in\u003c/strong\u003e.\u003c/p\u003e\n\u003ch4\u003eAction Needed\u003c/h4\u003e\n\u003cp\u003eIf you had \u003ccode\u003eenable_logs\u003c/code\u003e set to \u003ccode\u003eTrue\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eIf you were using the \u003ccode\u003esentry_sdk.logger.X\u003c/code\u003e API, no action necessary, the API will just work.\u003c/li\u003e\n\u003cli\u003eIf you were auto-collecting logs from either \u003ccode\u003eLoggingIntegration\u003c/code\u003e or \u003ccode\u003eLoguruIntegration\u003c/code\u003e, the auto-collection \u003cstrong\u003ewill be turned off in this release\u003c/strong\u003e. You can switch auto-collection on explicitly with:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003e\u003c/code\u003e\u003c/pre\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/getsentry/sentry-python/commit/98f7d91809e71ed5a7b827f8b4f9acfc7ac1bae0\"\u003e\u003ccode\u003e98f7d91\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/8f886ff9b784da7c45f51a0dfbe42c7838e68c42\"\u003e\u003ccode\u003e8f886ff\u003c/code\u003e\u003c/a\u003e release: 2.68.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/df4ec02a1b4bfc50f6218908fe497dd0ec566801\"\u003e\u003ccode\u003edf4ec02\u003c/code\u003e\u003c/a\u003e fix(logs): Don't stop sending auto-collected logs when \u003ccode\u003eenable_logs=True\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/e32031816394208bce58c050ff563bfde8d7b228\"\u003e\u003ccode\u003ee320318\u003c/code\u003e\u003c/a\u003e test(pyramid): Add tests for data_collection gating of request body (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/7218\"\u003e#7218\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/7b8a3857122d0a9c69aca784bd730bb0dcf729f6\"\u003e\u003ccode\u003e7b8a385\u003c/code\u003e\u003c/a\u003e test(bottle): Add tests for data_collection gating of request body (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/7217\"\u003e#7217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/cbcadc9cba1295fb78a90a2823d6fbd36bce1ba3\"\u003e\u003ccode\u003ecbcadc9\u003c/code\u003e\u003c/a\u003e test(sanic): Add tests for data_collection gating of request body (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/7216\"\u003e#7216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/e42c798e0cd549b42bc748a53c7e16c2763ec427\"\u003e\u003ccode\u003ee42c798\u003c/code\u003e\u003c/a\u003e feat(tornado): Gate request body collection on data_collection option (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/7215\"\u003e#7215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/d05bb60e0d9ecc66b2cc8b62ba0cfc0eaa343088\"\u003e\u003ccode\u003ed05bb60\u003c/code\u003e\u003c/a\u003e test(django): Add tests for data_collection gating of request body (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/7213\"\u003e#7213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/bcce67b1a6869229a0c74bcd93e4b8bcfde5cc7a\"\u003e\u003ccode\u003ebcce67b\u003c/code\u003e\u003c/a\u003e feat(wsgi): Gate request body collection on data_collection option (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/7212\"\u003e#7212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/41220c4adba83c307aabae28057db830808adb3a\"\u003e\u003ccode\u003e41220c4\u003c/code\u003e\u003c/a\u003e fix(google_genai): Gate streaming \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, no...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-python/compare/2.66.1...2.68.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `datasets` from 5.0.0 to 5.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/datasets/releases\"\u003edatasets's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.0.1\u003c/h2\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix version string in \u003cstrong\u003einit\u003c/strong\u003e.py by \u003ca href=\"https://github.com/qgallouedec\"\u003e\u003ccode\u003e@​qgallouedec\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8244\"\u003ehuggingface/datasets#8244\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix conda build by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8250\"\u003ehuggingface/datasets#8250\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix JSON loader schema inference for files starting with a UTF-8 BOM (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8241\"\u003e#8241\u003c/a\u003e) by \u003ca href=\"https://github.com/archievi\"\u003e\u003ccode\u003e@​archievi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8243\"\u003ehuggingface/datasets#8243\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport hermes traces by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8255\"\u003ehuggingface/datasets#8255\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix batch(by_column=...) crashing after shard/shuffle/split by \u003ca href=\"https://github.com/pkooij\"\u003e\u003ccode\u003e@​pkooij\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8259\"\u003ehuggingface/datasets#8259\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix traces streaming by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8277\"\u003ehuggingface/datasets#8277\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003esupport droid agent traces by \u003ca href=\"https://github.com/cfahlgren1\"\u003e\u003ccode\u003e@​cfahlgren1\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8263\"\u003ehuggingface/datasets#8263\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix CI: commit operation equality (hfh 1.20.0) and pytest parametrize collection error by \u003ca href=\"https://github.com/Wauplin\"\u003e\u003ccode\u003e@​Wauplin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8283\"\u003ehuggingface/datasets#8283\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix lance auth by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8301\"\u003ehuggingface/datasets#8301\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix symlink-following arbitrary file write in archive extraction by \u003ca href=\"https://github.com/AAtomical\"\u003e\u003ccode\u003e@​AAtomical\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8303\"\u003ehuggingface/datasets#8303\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBug Fix: Resuming Twice Resets the Dataloader by \u003ca href=\"https://github.com/francesco-bertolotti\"\u003e\u003ccode\u003e@​francesco-bertolotti\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8295\"\u003ehuggingface/datasets#8295\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump fsspec and simpler wds compr by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8337\"\u003ehuggingface/datasets#8337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: validate Arrow IPC record batches by \u003ca href=\"https://github.com/XciD\"\u003e\u003ccode\u003e@​XciD\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8350\"\u003ehuggingface/datasets#8350\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake the dataset fingerprint independent of Arrow chunking by \u003ca href=\"https://github.com/SuryanshSS1011\"\u003e\u003ccode\u003e@​SuryanshSS1011\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8339\"\u003ehuggingface/datasets#8339\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix casting a nullable LargeList to a different inner type by \u003ca href=\"https://github.com/vineethsaivs\"\u003e\u003ccode\u003e@​vineethsaivs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8346\"\u003ehuggingface/datasets#8346\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: replace AutoFeatureExtractor with AutoImageProcessor in image preprocessing docs by \u003ca href=\"https://github.com/gautamkishore\"\u003e\u003ccode\u003e@​gautamkishore\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8326\"\u003ehuggingface/datasets#8326\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix column drop in Arrow path of axis=1 concatenation by \u003ca href=\"https://github.com/ebarkhordar\"\u003e\u003ccode\u003e@​ebarkhordar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8342\"\u003ehuggingface/datasets#8342\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRaise on length mismatch in batched IterableDataset.map by \u003ca href=\"https://github.com/sohumt123\"\u003e\u003ccode\u003e@​sohumt123\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8332\"\u003ehuggingface/datasets#8332\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix require_storage_embed recursing into require_storage_cast by \u003ca href=\"https://github.com/vineethsaivs\"\u003e\u003ccode\u003e@​vineethsaivs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8349\"\u003ehuggingface/datasets#8349\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix path traversal via metadata file_name in folder-based builders by \u003ca href=\"https://github.com/Kaif10\"\u003e\u003ccode\u003e@​Kaif10\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8325\"\u003ehuggingface/datasets#8325\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport batched=True in Dataset.to_dict by \u003ca href=\"https://github.com/vineethsaivs\"\u003e\u003ccode\u003e@​vineethsaivs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8333\"\u003ehuggingface/datasets#8333\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix hdf5 external files by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8355\"\u003ehuggingface/datasets#8355\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eremove bad require_storage test by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8357\"\u003ehuggingface/datasets#8357\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eensure fiels are in repo by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8356\"\u003ehuggingface/datasets#8356\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep flat numeric columns with nulls numeric in numpy format by \u003ca href=\"https://github.com/ebarkhordar\"\u003e\u003ccode\u003e@​ebarkhordar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8352\"\u003ehuggingface/datasets#8352\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix bucket dataset card handling and push metadata accounting by \u003ca href=\"https://github.com/pjh4993\"\u003e\u003ccode\u003e@​pjh4993\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8354\"\u003ehuggingface/datasets#8354\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix CSV loader dropping on_bad_lines/encoding_errors on pandas 2.0-2.2 by \u003ca href=\"https://github.com/ebarkhordar\"\u003e\u003ccode\u003e@​ebarkhordar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8358\"\u003ehuggingface/datasets#8358\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep integers on the python read path for fixed-shape ArrayXD columns with nulls by \u003ca href=\"https://github.com/ebarkhordar\"\u003e\u003ccode\u003e@​ebarkhordar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8363\"\u003ehuggingface/datasets#8363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRebatch arrow source before formatting in IterableDataset.filter to fix resume data loss by \u003ca href=\"https://github.com/ebarkhordar\"\u003e\u003ccode\u003e@​ebarkhordar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8360\"\u003ehuggingface/datasets#8360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDecode Json() columns in Dataset.to_pandas() by \u003ca href=\"https://github.com/ebarkhordar\"\u003e\u003ccode\u003e@​ebarkhordar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8344\"\u003ehuggingface/datasets#8344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix buckets on windows by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8369\"\u003ehuggingface/datasets#8369\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DatasetDict.push_to_hub leaving removed splits in the dataset card by \u003ca href=\"https://github.com/pjh4993\"\u003e\u003ccode\u003e@​pjh4993\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8367\"\u003ehuggingface/datasets#8367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreserve nullable integer columns in to_json/to_csv/to_sql by \u003ca href=\"https://github.com/ebarkhordar\"\u003e\u003ccode\u003e@​ebarkhordar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8366\"\u003ehuggingface/datasets#8366\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocs\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix duplicate \u0026quot;to\u0026quot; in IterableDataset push-to-hub example by \u003ca href=\"https://github.com/DaoyuanLi2816\"\u003e\u003ccode\u003e@​DaoyuanLi2816\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8252\"\u003ehuggingface/datasets#8252\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify dataset creation vs loading workflows in create_dataset tutorial by \u003ca href=\"https://github.com/zanvari\"\u003e\u003ccode\u003e@​zanvari\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8235\"\u003ehuggingface/datasets#8235\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/DaoyuanLi2816\"\u003e\u003ccode\u003e@​DaoyuanLi2816\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8252\"\u003ehuggingface/datasets#8252\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zanvari\"\u003e\u003ccode\u003e@​zanvari\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8235\"\u003ehuggingface/datasets#8235\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/archievi\"\u003e\u003ccode\u003e@​archievi\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8243\"\u003ehuggingface/datasets#8243\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pkooij\"\u003e\u003ccode\u003e@​pkooij\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8259\"\u003ehuggingface/datasets#8259\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AAtomical\"\u003e\u003ccode\u003e@​AAtomical\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8303\"\u003ehuggingface/datasets#8303\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/francesco-bertolotti\"\u003e\u003ccode\u003e@​francesco-bertolotti\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8295\"\u003ehuggingface/datasets#8295\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/XciD\"\u003e\u003ccode\u003e@​XciD\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8350\"\u003ehuggingface/datasets#8350\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SuryanshSS1011\"\u003e\u003ccode\u003e@​SuryanshSS1011\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8339\"\u003ehuggingface/datasets#8339\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vineethsaivs\"\u003e\u003ccode\u003e@​vineethsaivs\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8346\"\u003ehuggingface/datasets#8346\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/huggingface/datasets/commit/921c2a7c0c9494e86fd145e03f68d12fa4ef90a2\"\u003e\u003ccode\u003e921c2a7\u003c/code\u003e\u003c/a\u003e release: 5.0.1 (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8370\"\u003e#8370\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/c6fc5cdbf0a527b0ebd7a74fc73274a0fa3b8cb2\"\u003e\u003ccode\u003ec6fc5cd\u003c/code\u003e\u003c/a\u003e Preserve nullable integer columns in to_json/to_csv/to_sql (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8366\"\u003e#8366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/6747b871de3c8ae5aabc97b17251bfac2d8d9ee5\"\u003e\u003ccode\u003e6747b87\u003c/code\u003e\u003c/a\u003e Fix DatasetDict.push_to_hub leaving removed splits in the dataset card (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8367\"\u003e#8367\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/b305031c4ec070e5e657049abaa70659883958e2\"\u003e\u003ccode\u003eb305031\u003c/code\u003e\u003c/a\u003e fix buckets on windows (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8369\"\u003e#8369\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/030a3e540e8e5cc850c01b0ea3bc0db448255567\"\u003e\u003ccode\u003e030a3e5\u003c/code\u003e\u003c/a\u003e Decode Json() columns in Dataset.to_pandas() (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8344\"\u003e#8344\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/0f207a0a60d63f64d985844044c33ff7cdd4d14f\"\u003e\u003ccode\u003e0f207a0\u003c/code\u003e\u003c/a\u003e Rebatch arrow source before formatting in IterableDataset.filter to fix resum...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/adad35d93ec636ac47d66088c6faadc7d4f0730b\"\u003e\u003ccode\u003eadad35d\u003c/code\u003e\u003c/a\u003e Keep integers on the python read path for fixed-shape ArrayXD columns with nu...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/89667468df606540b4da9280dd974297d9c08734\"\u003e\u003ccode\u003e8966746\u003c/code\u003e\u003c/a\u003e Fix CSV loader dropping on_bad_lines/encoding_errors on pandas 2.0-2.2 (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8358\"\u003e#8358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/b8e861a26be89e232ccd869f698aa08caa779148\"\u003e\u003ccode\u003eb8e861a\u003c/code\u003e\u003c/a\u003e Fix bucket dataset card handling and push metadata accounting (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8354\"\u003e#8354\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/521a590f9b642908c3eb116eb77db9d5512126e9\"\u003e\u003ccode\u003e521a590\u003c/code\u003e\u003c/a\u003e Keep flat numeric columns with nulls numeric in numpy format (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8352\"\u003e#8352\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/datasets/compare/5.0.0...5.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyarrow` from 25.0.0 to 25.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/apache/arrow/releases\"\u003epyarrow's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eApache Arrow 25.0.1\u003c/h2\u003e\n\u003cp\u003eRelease Notes URL: \u003ca href=\"https://arrow.apache.org/release/25.0.1.html\"\u003ehttps://arrow.apache.org/release/25.0.1.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eApache Arrow 25.0.1 RC1\u003c/h2\u003e\n\u003cp\u003eRelease Notes: Release Candidate: 25.0.1 RC1\u003c/p\u003e\n\u003ch2\u003eApache Arrow 25.0.1 RC0\u003c/h2\u003e\n\u003cp\u003eRelease Notes: Release Candidate: 25.0.1 RC0\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/apache/arrow/commit/beccec0d0c451b7aa3e4530416ac431b3c035c69\"\u003e\u003ccode\u003ebeccec0\u003c/code\u003e\u003c/a\u003e MINOR: [Release] Update versions for 25.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/7bdf01ada82ff9ee76155227bf09f2949187bd2c\"\u003e\u003ccode\u003e7bdf01a\u003c/code\u003e\u003c/a\u003e MINOR: [Release] Update .deb/.rpm changelogs for 25.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/91dbae1f71772dff7f7d07817fcff6f47c2645e0\"\u003e\u003ccode\u003e91dbae1\u003c/code\u003e\u003c/a\u003e MINOR: [Release] Update CHANGELOG.md for 25.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/849d4634e7784d568477f5e159a13b003a7dff4c\"\u003e\u003ccode\u003e849d463\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50808\"\u003eGH-50808\u003c/a\u003e: [Python] Narrow Feather deprecation to V1 format (\u003ca href=\"https://redirect.github.com/apache/arrow/issues/50685\"\u003e#50685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/e70ebf50f0b7a67f3892a307d1dc583e51411bf2\"\u003e\u003ccode\u003ee70ebf5\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50600\"\u003eGH-50600\u003c/a\u003e: [Release] Pin Python version in Conda verification\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/f5037be3f02318738713500f83fc6aef37002f1b\"\u003e\u003ccode\u003ef5037be\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50578\"\u003eGH-50578\u003c/a\u003e: [C++][FlightRPC][ODBC] Always return SQL_NO_DATA from GetMoreResult...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/149158986337257eed43392ee04a2680504de77c\"\u003e\u003ccode\u003e1491589\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50503\"\u003eGH-50503\u003c/a\u003e: [Parquet] Remove SVE128 unpack (\u003ca href=\"https://redirect.github.com/apache/arrow/issues/50611\"\u003e#50611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/d1eaaedef3c7b05668e620fee1478fc884f36296\"\u003e\u003ccode\u003ed1eaaed\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50326\"\u003eGH-50326\u003c/a\u003e: [Python] Convert arrays to Python objects without per-element Scala...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/fe141358b2783f2b85eaa982834aece0cb90c5b1\"\u003e\u003ccode\u003efe14135\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50428\"\u003eGH-50428\u003c/a\u003e: [C++] Better mimalloc configuration on macOS (\u003ca href=\"https://redirect.github.com/apache/arrow/issues/50549\"\u003e#50549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/8fb632a2eebdaf5ff230a797e587a4c3359f9fac\"\u003e\u003ccode\u003e8fb632a\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50383\"\u003eGH-50383\u003c/a\u003e: [Release] Remove deprecated -f flag on conda create environment (\u003ca href=\"https://redirect.github.com/apache/arrow/issues/5\"\u003e#5\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/apache/arrow/compare/apache-arrow-25.0.0...apache-arrow-25.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.25.1 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.25.1...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gitpython` from 3.1.57 to 3.1.61\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gitpython-developers/GitPython/releases\"\u003egitpython's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.1.61\u003c/h2\u003e\n\u003cp\u003eFix accidental removal of exploitable regex in \u003ccode\u003eActor\u003c/code\u003e by bringing it back, and deprecating it.\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix repository discovery precedence by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2218\"\u003egitpython-developers/GitPython#2218\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: wait for git daemon to listen before connecting by \u003ca href=\"https://github.com/Vogtinator\"\u003e\u003ccode\u003e@​Vogtinator\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2219\"\u003egitpython-developers/GitPython#2219\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: restore Actor.name_email_regex by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2221\"\u003egitpython-developers/GitPython#2221\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/Vogtinator\"\u003e\u003ccode\u003e@​Vogtinator\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2219\"\u003egitpython-developers/GitPython#2219\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gitpython-developers/GitPython/compare/3.1.60...3.1.61\"\u003ehttps://github.com/gitpython-developers/GitPython/compare/3.1.60...3.1.61\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.1.60 Security\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eprepare changelog prior to release by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2212\"\u003egitpython-developers/GitPython#2212\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreserve Git config escape semantics by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2213\"\u003egitpython-developers/GitPython#2213\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHarden diff path and actor identity parsing by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2215\"\u003egitpython-developers/GitPython#2215\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire explicit opt-in for filesystem diffs by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2217\"\u003egitpython-developers/GitPython#2217\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gitpython-developers/GitPython/compare/3.1.59...3.1.60\"\u003ehttps://github.com/gitpython-developers/GitPython/compare/3.1.59...3.1.60\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.1.59 - Security\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eprepare changelog for upcoming release by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2207\"\u003egitpython-developers/GitPython#2207\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBlock file-reading Git options by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2208\"\u003egitpython-developers/GitPython#2208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eindex: write blobs via git hash-object, not gitdb's odb.store by \u003ca href=\"https://github.com/caroescm\"\u003e\u003ccode\u003e@​caroescm\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2209\"\u003egitpython-developers/GitPython#2209\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBlock separate git directories during clone by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2210\"\u003egitpython-developers/GitPython#2210\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: harden config parsing boundaries by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2211\"\u003egitpython-developers/GitPython#2211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erepo.index.add()\u003c/code\u003e now respects worktree filters  \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2209\"\u003egitpython-developers/GitPython#2209\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gitpython-developers/GitPython/compare/3.1.58...3.1.59\"\u003ehttps://github.com/gitpython-developers/GitPython/compare/3.1.58...3.1.59\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.1.58 - Security and Fixes\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etest: allow Python startup before timeout by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2195\"\u003egitpython-developers/GitPython#2195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eResolve Windows hook Bash through PATH by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e i...\n\n_Description has been truncated_","html_url":"https://github.com/microsoft/physical-ai-toolchain/pull/1463","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fphysical-ai-toolchain/issues/1463","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1463/packages"},{"uuid":"5355854093","node_id":"PR_kwDOUHlKes8AAAABCS106w","number":10,"state":"open","title":"build(deps): bump the minor-update group across 1 directory with 185 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-05T05:30:00.000Z","updated_at":"2026-09-05T05:30:09.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"minor-update","update_count":185,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"transformers","old_version":"5.14.1","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"huggingface-hub","old_version":"1.27.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.1","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"fastapi","old_version":"0.136.3","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"starlette","old_version":"1.3.1","new_version":"1.6.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"prometheus-fastapi-instrumentator","old_version":"8.0.2","new_version":"8.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"pyzmq","old_version":"27.1.0","new_version":"27.2.0","repository_url":"https://github.com/zeromq/pyzmq"},{"name":"python-json-logger","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"pybase64","old_version":"1.4.3","new_version":"1.5.0","repository_url":"https://github.com/mayeut/pybase64"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions-ai","old_version":"0.4.13","new_version":"0.5.1"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"torchcodec","old_version":"0.14.0+cu130","new_version":"0.16.0","repository_url":"https://github.com/pytorch/torchcodec"},{"name":"auto-round-lib","old_version":"0.14.2","new_version":"0.15.0","repository_url":"https://github.com/intel/auto-round"},{"name":"tpu-inference","old_version":"0.26.0","new_version":"0.28.0","repository_url":"https://github.com/vllm-project/tpu-inference"},{"name":"pynvvideocodec","old_version":"2.0.4","new_version":"2.2.2"},{"name":"nvidia-cutlass-dsl","old_version":"4.6.2","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.8","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.86","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.86","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"cohere","old_version":"7.0.8","new_version":"7.1.1","repository_url":"https://github.com/cohere-ai/cohere-python"},{"name":"cohere-melody","old_version":"0.9.0","new_version":"0.13.4","repository_url":"https://github.com/cohere-ai/melody"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.0","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.3.0","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.0","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi-cloud-cli","old_version":"0.21.0","new_version":"0.24.0","repository_url":"https://github.com/fastapilabs/fastapi-cloud-cli"},{"name":"fastar","old_version":"0.11.0","new_version":"0.12.0","repository_url":"https://github.com/DoctorJohn/fastar"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"h11","old_version":"0.14.0","new_version":"0.16.0","repository_url":"https://github.com/python-hyper/h11"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"idna","old_version":"3.10","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.15.0","new_version":"0.16.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema-rs","old_version":"0.46.5","new_version":"0.52.1","repository_url":"https://github.com/Stranger6667/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llguidance","old_version":"1.7.6","new_version":"1.8.0","repository_url":"https://github.com/microsoft/llguidance"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.1.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.20.0.48","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.1","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.29.7","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"peft","old_version":"0.19.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.7","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pydantic-settings","old_version":"2.14.2","new_version":"2.15.0","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pyrate-limiter","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/vutran1710/PyrateLimiter"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"rignore","old_version":"0.7.6","new_version":"0.8.1"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"schemathesis","old_version":"4.21.6","new_version":"4.25.2","repository_url":"https://github.com/schemathesis/schemathesis"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"sentry-sdk","old_version":"2.63.0","new_version":"2.68.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"triton","old_version":"3.7.1","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.26.8","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.1","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.5","repository_url":"https://github.com/astral-sh/ruff"},{"name":"zentorch","old_version":"2.11.0.0","new_version":"2.13.0.0","repository_url":"https://github.com/amd/ZenDNN-pytorch-plugin"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 185 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [transformers](https://github.com/huggingface/transformers) | `5.14.1` | `5.16.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.27.0` | `1.29.0` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.1` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.136.3` | `0.141.1` |\n| [starlette](https://github.com/Kludex/starlette) | `1.3.1` | `1.6.0` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `8.0.2` | `8.1.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [pyzmq](https://github.com/zeromq/pyzmq) | `27.1.0` | `27.2.0` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `4.1.0` | `4.2.0` |\n| [pybase64](https://github.com/mayeut/pybase64) | `1.4.3` | `1.5.0` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| opentelemetry-semantic-conventions-ai | `0.4.13` | `0.5.1` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [torchcodec](https://github.com/pytorch/torchcodec) | `0.14.0+cu130` | `0.16.0` |\n| [auto-round-lib](https://github.com/intel/auto-round) | `0.14.2` | `0.15.0` |\n| [tpu-inference](https://github.com/vllm-project/tpu-inference) | `0.26.0` | `0.28.0` |\n| pynvvideocodec | `2.0.4` | `2.2.2` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.6.2` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.8` | `0.2.6` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.86` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.86` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| [cohere](https://github.com/cohere-ai/cohere-python) | `7.0.8` | `7.1.1` |\n| [cohere-melody](https://github.com/cohere-ai/melody) | `0.9.0` | `0.13.4` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.0` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.3.0` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.0` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi-cloud-cli](https://github.com/fastapilabs/fastapi-cloud-cli) | `0.21.0` | `0.24.0` |\n| [fastar](https://github.com/DoctorJohn/fastar) | `0.11.0` | `0.12.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.19` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.15.0` | `0.16.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonschema-rs](https://github.com/Stranger6667/jsonschema) | `0.46.5` | `0.52.1` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llguidance](https://github.com/microsoft/llguidance) | `1.7.6` | `1.8.0` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.1.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.20.0.48` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.1` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.29.7` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [peft](https://github.com/huggingface/peft) | `0.19.1` | `0.20.0` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.7` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.14.2` | `2.15.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pyrate-limiter](https://github.com/vutran1710/PyrateLimiter) | `4.4.0` | `4.5.0` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| rignore | `0.7.6` | `0.8.1` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [schemathesis](https://github.com/schemathesis/schemathesis) | `4.21.6` | `4.25.2` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.63.0` | `2.68.1` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [triton](https://github.com/triton-lang/triton) | `3.7.1` | `3.8.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.26.8` | `0.27.2` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.1` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.5` |\n| [zentorch](https://github.com/amd/ZenDNN-pytorch-plugin) | `2.11.0.0` | `2.13.0.0` |\n\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 5.14.1 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\n\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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.14.1...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.27.0 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\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/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.27.0...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e⚡ Performance — measured locally on this Mac, not lifted from PRs\u003c/h2\u003e\n\u003cp\u003eRun with \u003ccode\u003ecargo bench --bench \u0026lt;name\u0026gt; -- --save-baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.22.2\u003c/code\u003e, then \u003ccode\u003e--baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.23.1\u003c/code\u003e. Numbers are point-in-time wall clock on a single laptop; relative deltas are what matters, absolute numbers will differ on CI hardware.\u003c/p\u003e\n\u003ch3\u003eAdded-vocabulary deserialize — the headline win (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1999\"\u003e#1999\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003e\u003ccode\u003ebench: improve added_vocab_deserialize to reflect real-world workloads\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2000\"\u003e#2000\u003c/a\u003e) is now representative of how transformers actually loads tokenizer.json files. The combined effect of \u003ccode\u003edaachorse\u003c/code\u003e for the matching automaton plus the normalize-on-insert refactor is enormous on this workload:\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~410 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e248 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.1 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e273 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~395 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e235 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.4 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e290 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e400k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~15 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e980 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−94%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eReal-world impact: loading a Llama-3-style tokenizer with a large set of added tokens dropped from \u0026quot;noticeable pause\u0026quot; to \u0026quot;instant\u0026quot;.\u003c/p\u003e\n\u003ch3\u003eBPE encode\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch, no cache\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e530 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e446 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−16%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch\u003c/code\u003e (cached)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e690 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e685 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode\u003c/code\u003e (single)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.95 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.94 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (small)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e32.6 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e31.5 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−3%\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (big)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.01 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e988 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−2%\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eThe BPE per-thread cache PR (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e) shows much larger wins on highly-parallel workloads (+47–62% at 88+ threads on a server box, per the PR's own measurements on Vera). Single-thread batch numbers above are flat or slightly improved because cache-hit overhead was already low without contention.\u003c/p\u003e\n\u003ch3\u003eLlama-3 encode\u003c/h3\u003e\n\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/huggingface/tokenizers/commit/7f1623b90b5adfb9bc327d4c3468d2f70bbce262\"\u003e\u003ccode\u003e7f1623b\u003c/code\u003e\u003c/a\u003e Bump version to 0.23.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bbe43ad73d8fc8932b9d0e657ddee3cd70c649a4\"\u003e\u003ccode\u003ebbe43ad\u003c/code\u003e\u003c/a\u003e ci: release workflow fixes (node + python) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2043\"\u003e#2043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/ab0c5d8fc13eb1c5001d9c06806635e2b5a42e9f\"\u003e\u003ccode\u003eab0c5d8\u003c/code\u003e\u003c/a\u003e Fix node release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2034\"\u003e#2034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/decd8e07dad15f296c0adc2bc3a560f62d3de2eb\"\u003e\u003ccode\u003edecd8e0\u003c/code\u003e\u003c/a\u003e bindings/python: free-threaded Python (3.14t) support (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2041\"\u003e#2041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/3992692d483bf3177219b52cb101b1bb055c18e6\"\u003e\u003ccode\u003e3992692\u003c/code\u003e\u003c/a\u003e update for release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2033\"\u003e#2033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bcdd25b97fcd78549903082ecf3ddd87d42c456b\"\u003e\u003ccode\u003ebcdd25b\u003c/code\u003e\u003c/a\u003e BPE cache: per-thread read-through cache to avoid RwLock atomics on hits (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/618eb383f43e207139eb5cdb9bca17796b5e9bd7\"\u003e\u003ccode\u003e618eb38\u003c/code\u003e\u003c/a\u003e Bump follow-redirects in /tokenizers/examples/unstable_wasm/www (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2024\"\u003e#2024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b6b1688bef2e87efc91af18edf7ac38b4d2dfbe6\"\u003e\u003ccode\u003eb6b1688\u003c/code\u003e\u003c/a\u003e chore: bump doc-builder SHA for PR upload workflow (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2025\"\u003e#2025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/19015d6b44aa3896626de5092e4171aed1b56d5b\"\u003e\u003ccode\u003e19015d6\u003c/code\u003e\u003c/a\u003e fix: use uvx --with cairosvg instead of uv pip install --system (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2021\"\u003e#2021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/efbcc68e321c364c8f9541f1c93a158df54d7da4\"\u003e\u003ccode\u003eefbcc68\u003c/code\u003e\u003c/a\u003e Ci benchmarks (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2019\"\u003e#2019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `fastapi` from 0.136.3 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15093\"\u003e#15093\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.10\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling sequences with nested Annotated types. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14874\"\u003e#14874\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Accept any base test failure as regression. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16092\"\u003e#16092\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Preserve pytest exit code in regression check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16091\"\u003e#16091\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Test PR regressions against base code. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16090\"\u003e#16090\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.9\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eexclude_defaults\u003c/code\u003e not propagated to dict keys and values in \u003ccode\u003ejsonable_encoder\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16043\"\u003e#16043\u003c/a\u003e by \u003ca href=\"https://github.com/MBGrao\"\u003e\u003ccode\u003e@​MBGrao\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\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/fastapi/fastapi/commit/95f8322ee1dcda7ceace7b1c4f6c9915b36d748f\"\u003e\u003ccode\u003e95f8322\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16106\"\u003e#16106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f137944c435cff4e4b30ea7d12855ea88ddb868c\"\u003e\u003ccode\u003ef137944\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d62354434b2e508fe89024213b220ca8e67dea5e\"\u003e\u003ccode\u003ed623544\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for background tasks and head...\n\n_Description has been truncated_","html_url":"https://github.com/Entrpi/vllm-glm-5.3-flash-spark/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Entrpi%2Fvllm-glm-5.3-flash-spark/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"},{"uuid":"5355478249","node_id":"PR_kwDOTx9lYc8AAAABCSjYaA","number":10,"state":"open","title":"Bump the minor-update group across 1 directory with 172 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-05T04:10:37.000Z","updated_at":"2026-09-05T04:10:47.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-update","update_count":172,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"transformers","old_version":"5.5.3","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.1","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"safetensors","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/huggingface/safetensors"},{"name":"fastapi","old_version":"0.128.0","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"tpu-inference","old_version":"0.20.0","new_version":"0.28.0","repository_url":"https://github.com/vllm-project/tpu-inference"},{"name":"fastsafetensors","old_version":"0.2.2","new_version":"0.3.3","repository_url":"https://github.com/foundation-model-stack/fastsafetensors"},{"name":"nvidia-cutlass-dsl","old_version":"4.5.2","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.2","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"anyio","old_version":"4.6.2.post1","new_version":"4.14.2","repository_url":"https://github.com/agronholm/anyio"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"arrow","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/arrow-py/arrow"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"bitsandbytes","old_version":"0.49.2","new_version":"0.50.2","repository_url":"https://github.com/bitsandbytes-foundation/bitsandbytes"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.86","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.86","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.1.7","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.0","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.2","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.0","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"h11","old_version":"0.14.0","new_version":"0.16.0","repository_url":"https://github.com/python-hyper/h11"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"harfile","old_version":"0.3.0","new_version":"0.5.0","repository_url":"https://github.com/schemathesis/harfile"},{"name":"hf-xet","old_version":"1.4.3","new_version":"1.6.0","repository_url":"https://github.com/huggingface/xet-core"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"huggingface-hub","old_version":"1.10.2","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"hypothesis-graphql","old_version":"0.11.1","new_version":"0.13.1","repository_url":"https://github.com/Stranger6667/hypothesis-graphql"},{"name":"idna","old_version":"3.10","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonpointer","old_version":"3.0.0","new_version":"3.1.1","repository_url":"https://github.com/stefankoegl/python-json-pointer"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.0.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.19.0.56","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.0","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.28.9","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"peft","old_version":"0.18.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.7","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-subtests","old_version":"0.14.1","new_version":"0.15.0","repository_url":"https://github.com/pytest-dev/pytest-subtests"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"tomli","old_version":"2.2.1","new_version":"2.4.1","repository_url":"https://github.com/hukkin/tomli"},{"name":"triton","old_version":"3.6.0","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.15.2","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.1","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.5","repository_url":"https://github.com/astral-sh/ruff"},{"name":"zentorch","old_version":"2.11.0.0","new_version":"2.13.0.0","repository_url":"https://github.com/amd/ZenDNN-pytorch-plugin"},{"name":"helion","old_version":"1.0.0","new_version":"1.4.0","repository_url":"https://github.com/pytorch/helion"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 172 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [transformers](https://github.com/huggingface/transformers) | `5.5.3` | `5.16.1` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.1` |\n| [safetensors](https://github.com/huggingface/safetensors) | `0.7.0` | `0.8.0` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.128.0` | `0.141.1` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [tpu-inference](https://github.com/vllm-project/tpu-inference) | `0.20.0` | `0.28.0` |\n| [fastsafetensors](https://github.com/foundation-model-stack/fastsafetensors) | `0.2.2` | `0.3.3` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.5.2` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.2` | `0.2.6` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.6.2.post1` | `4.14.2` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [arrow](https://github.com/arrow-py/arrow) | `1.3.0` | `1.4.0` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [bitsandbytes](https://github.com/bitsandbytes-foundation/bitsandbytes) | `0.49.2` | `0.50.2` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.86` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.86` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.1.7` | `8.5.0` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.0` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.2` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.0` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [harfile](https://github.com/schemathesis/harfile) | `0.3.0` | `0.5.0` |\n| [hf-xet](https://github.com/huggingface/xet-core) | `1.4.3` | `1.6.0` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.10.2` | `1.29.0` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [hypothesis-graphql](https://github.com/Stranger6667/hypothesis-graphql) | `0.11.1` | `0.13.1` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.19` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonpointer](https://github.com/stefankoegl/python-json-pointer) | `3.0.0` | `3.1.1` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.0.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.19.0.56` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.0` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.28.9` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [peft](https://github.com/huggingface/peft) | `0.18.1` | `0.20.0` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.7` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-subtests](https://github.com/pytest-dev/pytest-subtests) | `0.14.1` | `0.15.0` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [tomli](https://github.com/hukkin/tomli) | `2.2.1` | `2.4.1` |\n| [triton](https://github.com/triton-lang/triton) | `3.6.0` | `3.8.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.15.2` | `0.27.2` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.1` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.5` |\n| [zentorch](https://github.com/amd/ZenDNN-pytorch-plugin) | `2.11.0.0` | `2.13.0.0` |\n| [helion](https://github.com/pytorch/helion) | `1.0.0` | `1.4.0` |\n\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 5.5.3 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\n\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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.5.3...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e⚡ Performance — measured locally on this Mac, not lifted from PRs\u003c/h2\u003e\n\u003cp\u003eRun with \u003ccode\u003ecargo bench --bench \u0026lt;name\u0026gt; -- --save-baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.22.2\u003c/code\u003e, then \u003ccode\u003e--baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.23.1\u003c/code\u003e. Numbers are point-in-time wall clock on a single laptop; relative deltas are what matters, absolute numbers will differ on CI hardware.\u003c/p\u003e\n\u003ch3\u003eAdded-vocabulary deserialize — the headline win (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1999\"\u003e#1999\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003e\u003ccode\u003ebench: improve added_vocab_deserialize to reflect real-world workloads\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2000\"\u003e#2000\u003c/a\u003e) is now representative of how transformers actually loads tokenizer.json files. The combined effect of \u003ccode\u003edaachorse\u003c/code\u003e for the matching automaton plus the normalize-on-insert refactor is enormous on this workload:\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~410 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e248 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.1 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e273 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~395 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e235 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.4 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e290 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e400k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~15 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e980 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−94%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eReal-world impact: loading a Llama-3-style tokenizer with a large set of added tokens dropped from \u0026quot;noticeable pause\u0026quot; to \u0026quot;instant\u0026quot;.\u003c/p\u003e\n\u003ch3\u003eBPE encode\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch, no cache\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e530 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e446 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−16%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch\u003c/code\u003e (cached)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e690 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e685 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode\u003c/code\u003e (single)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.95 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.94 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (small)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e32.6 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e31.5 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−3%\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (big)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.01 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e988 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−2%\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eThe BPE per-thread cache PR (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e) shows much larger wins on highly-parallel workloads (+47–62% at 88+ threads on a server box, per the PR's own measurements on Vera). Single-thread batch numbers above are flat or slightly improved because cache-hit overhead was already low without contention.\u003c/p\u003e\n\u003ch3\u003eLlama-3 encode\u003c/h3\u003e\n\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/huggingface/tokenizers/commit/7f1623b90b5adfb9bc327d4c3468d2f70bbce262\"\u003e\u003ccode\u003e7f1623b\u003c/code\u003e\u003c/a\u003e Bump version to 0.23.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bbe43ad73d8fc8932b9d0e657ddee3cd70c649a4\"\u003e\u003ccode\u003ebbe43ad\u003c/code\u003e\u003c/a\u003e ci: release workflow fixes (node + python) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2043\"\u003e#2043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/ab0c5d8fc13eb1c5001d9c06806635e2b5a42e9f\"\u003e\u003ccode\u003eab0c5d8\u003c/code\u003e\u003c/a\u003e Fix node release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2034\"\u003e#2034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/decd8e07dad15f296c0adc2bc3a560f62d3de2eb\"\u003e\u003ccode\u003edecd8e0\u003c/code\u003e\u003c/a\u003e bindings/python: free-threaded Python (3.14t) support (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2041\"\u003e#2041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/3992692d483bf3177219b52cb101b1bb055c18e6\"\u003e\u003ccode\u003e3992692\u003c/code\u003e\u003c/a\u003e update for release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2033\"\u003e#2033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bcdd25b97fcd78549903082ecf3ddd87d42c456b\"\u003e\u003ccode\u003ebcdd25b\u003c/code\u003e\u003c/a\u003e BPE cache: per-thread read-through cache to avoid RwLock atomics on hits (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/618eb383f43e207139eb5cdb9bca17796b5e9bd7\"\u003e\u003ccode\u003e618eb38\u003c/code\u003e\u003c/a\u003e Bump follow-redirects in /tokenizers/examples/unstable_wasm/www (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2024\"\u003e#2024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b6b1688bef2e87efc91af18edf7ac38b4d2dfbe6\"\u003e\u003ccode\u003eb6b1688\u003c/code\u003e\u003c/a\u003e chore: bump doc-builder SHA for PR upload workflow (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2025\"\u003e#2025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/19015d6b44aa3896626de5092e4171aed1b56d5b\"\u003e\u003ccode\u003e19015d6\u003c/code\u003e\u003c/a\u003e fix: use uvx --with cairosvg instead of uv pip install --system (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2021\"\u003e#2021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/efbcc68e321c364c8f9541f1c93a158df54d7da4\"\u003e\u003ccode\u003eefbcc68\u003c/code\u003e\u003c/a\u003e Ci benchmarks (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2019\"\u003e#2019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `safetensors` from 0.7.0 to 0.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/safetensors/releases\"\u003esafetensors's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.8.0\u003c/h2\u003e\n\u003ch2\u003eNews\u003c/h2\u003e\n\u003cp\u003esafetensors joins the PyTorch foundation!\u003c/p\u003e\n\n\u003cp\u003eRead more on that: \u003ca href=\"https://huggingface.co/blog/safetensors-joins-pytorch-foundation\"\u003ehttps://huggingface.co/blog/safetensors-joins-pytorch-foundation\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eWhat's changed\u003c/h2\u003e\n\u003cp\u003eSafetensors 0.8.0 brings direct to Metal loading on Apple Silicon, GIL-free serialization, broader hardware and dtype coverage, and a stronger Python API.\u003c/p\u003e\n\u003ch3\u003eBreaking\u003c/h3\u003e\n\u003cp\u003eThe \u003ccode\u003eserialize\u003c/code\u003e and \u003ccode\u003eserialize_file\u003c/code\u003e functions now release the GIL during writes, enabling true multithreaded saves from Python. Their input contract has also changed: tensor metadata is now passed via a \u003ccode\u003eTensorSpec\u003c/code\u003e class (exported from safetensors) instead of plain dicts, making API more explicit and robust to misinputs. This is a breaking change for anyone calling the low-level \u003ccode\u003eserialize\u003c/code\u003e / \u003ccode\u003eserialize_file\u003c/code\u003e API directly; the high-level wrappers (\u003ccode\u003esafetensors.torch\u003c/code\u003e, \u003ccode\u003esafetensors.numpy\u003c/code\u003e, \u003ccode\u003esafetensors.paddle\u003c/code\u003e) are updated internally and their public API is unchanged.\u003c/p\u003e\n\u003cp\u003eThe minimum supported Python version is now 3.10 (was 3.9). Python 3.9 reached end-of-life in October 2025.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eTensorIndexer::Narrow\u003c/code\u003e now carries a \u003ccode\u003estep: NonZeroUsize\u003c/code\u003e parameter, so a slice is now \u003ccode\u003estart:stop:step\u003c/code\u003e. This is a fix as this silent error was hidden behind the \u003ccode\u003eStorage::Torch\u003c/code\u003e variant which offloaded slicing logic to torch directly.\u003c/p\u003e\n\u003ch3\u003eCI\u003c/h3\u003e\n\u003cp\u003eOn the platform side, this release adds Windows ARM64 wheel builds, riscv64 Linux wheels, and CI has been hardened with pinned GitHub Actions SHAs.\u003c/p\u003e\n\u003cp\u003eAlso dropped the anaconda CI we had as there's already an automatic tracker via conda-forge.\u003c/p\u003e\n\u003ch3\u003eNew features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDirect MPS load on Apple Silicon: tensors are directly loaded in an \u003ccode\u003eMTLBuffer\u003c/code\u003e and handed to the frameworks that support it (only torch atm) via DLPack, skipping needless copies.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003ebackend\u003c/code\u003e parameter introduced, for the addition of the \u003ccode\u003epread\u003c/code\u003e backend. We now support loading files via \u003ccode\u003epread(2)\u003c/code\u003e syscall instead of just mmap. Useful for specific archs/platforms.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eget_slice\u003c/code\u003e now handles ellipsis \u003ccode\u003e[...]\u003c/code\u003e and strided slices \u003ccode\u003e[:, ::8]\u003c/code\u003e wherever safetensors does the slicing itself (\u003ccode\u003epread\u003c/code\u003e for any framework, MPS, and \u003ccode\u003emmap\u003c/code\u003e outside torch/paddle), which silently dropped the step or rejected \u003ccode\u003e...\u003c/code\u003e before.\u003c/li\u003e\n\u003cli\u003eMUSA device support for MooreThreads GPUs.\u003c/li\u003e\n\u003cli\u003eNew dtype support includes \u003ccode\u003efloat8_e4m3fnuz\u003c/code\u003e and \u003ccode\u003efloat8_e5m2fnuz\u003c/code\u003e (AMD FNUZ FP8 formats).\u003c/li\u003e\n\u003cli\u003eThe reader is now explicitly lenient about leading whitespace in the JSON header, which keeps the door open for future page-aligned writes.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements/perf\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFile writes on macOS now use \u003ccode\u003eF_NOCACHE\u003c/code\u003e for direct I/O, yielding roughly 30% faster \u003ccode\u003esave_file\u003c/code\u003e on Apple Silicon.\u003c/li\u003e\n\u003cli\u003eThe packaging dependency has been dropped from the \u003ccode\u003e[torch]\u003c/code\u003e extra, replaced by a simple \u003ccode\u003ehasattr\u003c/code\u003e probe for efficiency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd arm64 windows support by \u003ca href=\"https://github.com/finnagin\"\u003e\u003ccode\u003e@​finnagin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/678\"\u003esafetensors/safetensors#678\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(backend): support musa backend for MooreThreads GPU by \u003ca href=\"https://github.com/caizhi-mt\"\u003e\u003ccode\u003e@​caizhi-mt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/671\"\u003esafetensors/safetensors#671\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd gil free serialize_file(serialize_file_threadable) by \u003ca href=\"https://github.com/TomQunChao\"\u003e\u003ccode\u003e@​TomQunChao\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/679\"\u003esafetensors/safetensors#679\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: remove outdated comment by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/685\"\u003esafetensors/safetensors#685\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add direct io write fast path on macos by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/687\"\u003esafetensors/safetensors#687\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: keep dropped reference to tensor moved from gpu to cpu by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/689\"\u003esafetensors/safetensors#689\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: bump torch to \u003ccode\u003e2.4\u003c/code\u003e by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/710\"\u003esafetensors/safetensors#710\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eContribution guide security by \u003ca href=\"https://github.com/LysandreJik\"\u003e\u003ccode\u003e@​LysandreJik\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/712\"\u003esafetensors/safetensors#712\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\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/safetensors/safetensors/blob/main/RELEASE.md\"\u003esafetensors's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e0.8.0-dev.0 → 0.8.0\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\nUpdate lockfiles again:\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003ecargo check\ncd bindings/python \u0026amp;amp;\u0026amp;amp; uv lock\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;p\u0026gt;Commit:\u0026lt;/p\u0026gt;\n\u0026lt;pre\u0026gt;\u0026lt;code\u0026gt;Set version to 0.8.0\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;p\u0026gt;The Python version is not set in \u0026lt;code\u0026gt;pyproject.toml\u0026lt;/code\u0026gt; directly — maturin reads it from \u0026lt;code\u0026gt;bindings/python/Cargo.toml\u0026lt;/code\u0026gt; at build time.\u0026lt;/p\u0026gt;\n\u0026lt;h3\u0026gt;4. Create the release on GitHub\u0026lt;/h3\u0026gt;\n\u0026lt;p\u0026gt;Go to the \u0026lt;a href=\u0026quot;https://github.com/huggingface/safetensors/releases\u0026quot;\u0026gt;GitHub Releases page\u0026lt;/a\u0026gt; and draft a new release:\u0026lt;/p\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;strong\u0026gt;Choose the release branch\u0026lt;/strong\u0026gt; (e.g. \u0026lt;code\u0026gt;git_v0.8.0\u0026lt;/code\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;strong\u0026gt;Create a new tag\u0026lt;/strong\u0026gt; on publish: \u0026lt;code\u0026gt;v0.8.0\u0026lt;/code\u0026gt;\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;strong\u0026gt;Generate release notes\u0026lt;/strong\u0026gt; from the previous tag (e.g. \u0026lt;code\u0026gt;v0.7.0\u0026lt;/code\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Add any notable highlights at the top of the generated notes\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;Structure for manual notes:\u0026lt;/p\u0026gt;\n\u0026lt;pre lang=\u0026quot;markdown\u0026quot;\u0026gt;\u0026lt;code\u0026gt;## Breaking changes\n- ...\n\n## New features\n- ...\n\n## Bug fixes\n- ...\n\n## Internal / CI\n- ...\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;p\u0026gt;Click \u0026lt;strong\u0026gt;Publish release\u0026lt;/strong\u0026gt;. This creates the tag, which triggers the three release workflows.\u0026lt;/p\u0026gt;\n\u0026lt;h3\u0026gt;5. Monitor the CI\u0026lt;/h3\u0026gt;\n\u0026lt;p\u0026gt;The tag triggers two workflow runs in the \u0026lt;a href=\u0026quot;https://github.com/huggingface/safetensors/actions\u0026quot;\u0026gt;Actions tab\u0026lt;/a\u0026gt;:\u0026lt;/p\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;strong\u0026gt;CI\u0026lt;/strong\u0026gt; (Python release) — builds wheels for every platform × Python version, uploads to PyPI. Can take up to over 30 minutes.\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;!-- raw HTML omitted --\u0026gt;\n\u0026lt;/blockquote\u0026gt;\n\u0026lt;p\u0026gt;... (truncated)\u0026lt;/p\u0026gt;\n\u0026lt;/details\u0026gt;\n\u0026lt;details\u0026gt;\n\u0026lt;summary\u0026gt;Commits\u0026lt;/summary\u0026gt;\n\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/a406ca3e7a90598be0cd05a50069cb9bf5ef6ba6\u0026quot;\u0026gt;\u0026lt;code\u0026gt;a406ca3\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix(release): move crates.io to trusted publisher OIDC\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/d0368d14c0a417fb2ca2a6627e9513d17f74f9b7\u0026quot;\u0026gt;\u0026lt;code\u0026gt;d0368d1\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; feat: \u0026lt;code\u0026gt;0.8.0\u0026lt;/code\u0026gt;\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/5ec3ec14c506d09598df6d96f36cd9a4ea94aafa\u0026quot;\u0026gt;\u0026lt;code\u0026gt;5ec3ec1\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix(release): move to pypi trusted publisher OIDC (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/778\u0026quot;\u0026gt;#778\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/e37dc536ce598ef1d71a9ad712987571f2f05808\u0026quot;\u0026gt;\u0026lt;code\u0026gt;e37dc53\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; feat: bump main to \u0026lt;code\u0026gt;0.9.0-dev.0\u0026lt;/code\u0026gt; (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/777\u0026quot;\u0026gt;#777\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/6e32aa7b029d323238233110c1cdecae22cbe564\u0026quot;\u0026gt;\u0026lt;code\u0026gt;6e32aa7\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; refactor: replace \u0026lt;code\u0026gt;_host_alias_storage\u0026lt;/code\u0026gt; w/ \u0026lt;code\u0026gt;MTLBuffer\u0026lt;/code\u0026gt; (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/767\u0026quot;\u0026gt;#767\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/24b0b2857fef49be734b9ab72ce97c09bb25f5b9\u0026quot;\u0026gt;\u0026lt;code\u0026gt;24b0b28\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix: write to tempfile + rename to preserve mmap source (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/764\u0026quot;\u0026gt;#764\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/73132135947275c5dda135438e4c2e4bd70a2b10\u0026quot;\u0026gt;\u0026lt;code\u0026gt;7313213\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Update free-threading tests for Python 3.14 (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/699\u0026quot;\u0026gt;#699\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/e9091e13ec359e9e5b8b45413fcbe340444dde1c\u0026quot;\u0026gt;\u0026lt;code\u0026gt;e9091e1\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; feat: add \u0026lt;code\u0026gt;backend\u0026lt;/code\u0026gt; with pread file (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/760\u0026quot;\u0026gt;#760\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/1b0fe9c6acf3ac2ec7f4a0fd13bccfc0b65ce765\u0026quot;\u0026gt;\u0026lt;code\u0026gt;1b0fe9c\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix(ci): security audit slack message format (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/757\u0026quot;\u0026gt;#757\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/7efac22872a53ae3b30a15f8e786404322f10458\u0026quot;\u0026gt;\u0026lt;code\u0026gt;7efac22\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; [MPS] Fast load of the tensors (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/756\u0026quot;\u0026gt;#756\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Additional commits viewable in \u0026lt;a href=\u0026quot;https://github.com/huggingface/safetensors/compare/v0.7.0...v0.8.0\u0026quot;\u0026gt;compare view\u0026lt;/a\u0026gt;\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;/details\u0026gt;\n\n\u0026lt;br /\u0026gt;\u003c/code\u003e\u003c/pre\u003e\n\nUpdates `fastapi` from 0.128.0 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"htt...\n\n_Description has been truncated_","html_url":"https://github.com/yadongtan/vllm_study/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/yadongtan%2Fvllm_study/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"},{"uuid":"5353318085","node_id":"PR_kwDOQji8y88AAAABCQ3zkA","number":450,"state":"open","title":"build(deps): Bump the pip-sidecar-patch-minor group across 1 directory with 17 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-04T21:39:08.000Z","updated_at":"2026-09-04T21:43:52.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): Bump","group_name":"pip-sidecar-patch-minor","update_count":17,"packages":[{"name":"kokoro-onnx","old_version":"0.5.0","new_version":"0.6.1","repository_url":"https://github.com/thewh1teagle/kokoro-onnx"},{"name":"onnxruntime","old_version":"1.28.0","new_version":"1.29.0","repository_url":"https://github.com/microsoft/onnxruntime"},{"name":"scipy","old_version":"1.18.0","new_version":"1.18.1","repository_url":"https://github.com/scipy/scipy"},{"name":"speechbrain","old_version":"1.1.0","new_version":"1.1.1","repository_url":"https://github.com/speechbrain/speechbrain"},{"name":"huggingface-hub","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"ctranslate2","old_version":"4.8.1","new_version":"4.8.2","repository_url":"https://github.com/OpenNMT/CTranslate2"},{"name":"filelock","old_version":"3.32.2","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"idna","old_version":"3.18","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"joblib","old_version":"1.5.3","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"numpy","old_version":"2.5.1","new_version":"2.5.2","repository_url":"https://github.com/numpy/numpy"},{"name":"platformdirs","old_version":"4.11.0","new_version":"4.11.7","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"protobuf","old_version":"7.35.1","new_version":"7.36.1","repository_url":"https://github.com/protocolbuffers/protobuf"},{"name":"pygments","old_version":"2.20.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"regex","old_version":"2026.7.19","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"typer","old_version":"0.27.1","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"nvidia-cudnn-cu12","old_version":"9.24.0.43","new_version":"9.25.1.1"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-sidecar-patch-minor group with 17 updates in the /sidecar directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [kokoro-onnx](https://github.com/thewh1teagle/kokoro-onnx) | `0.5.0` | `0.6.1` |\n| [onnxruntime](https://github.com/microsoft/onnxruntime) | `1.28.0` | `1.29.0` |\n| [scipy](https://github.com/scipy/scipy) | `1.18.0` | `1.18.1` |\n| [speechbrain](https://github.com/speechbrain/speechbrain) | `1.1.0` | `1.1.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.26.0` | `1.29.0` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| [ctranslate2](https://github.com/OpenNMT/CTranslate2) | `4.8.1` | `4.8.2` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.32.2` | `3.32.5` |\n| [idna](https://github.com/kjd/idna) | `3.18` | `3.19` |\n| [joblib](https://github.com/joblib/joblib) | `1.5.3` | `1.6.0` |\n| [numpy](https://github.com/numpy/numpy) | `2.5.1` | `2.5.2` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.11.0` | `4.11.7` |\n| [protobuf](https://github.com/protocolbuffers/protobuf) | `7.35.1` | `7.36.1` |\n| [pygments](https://github.com/pygments/pygments) | `2.20.0` | `2.21.0` |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.7.19` | `2026.9.3` |\n| [typer](https://github.com/fastapi/typer) | `0.27.1` | `0.27.2` |\n| [nvidia-cudnn-cu12](https://developer.nvidia.com/cuda-zone) | `9.24.0.43` | `9.25.1.1` |\n\n\nUpdates `kokoro-onnx` from 0.5.0 to 0.6.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/thewh1teagle/kokoro-onnx/releases\"\u003ekokoro-onnx's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003emodel-files\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003ekokoro-v0_19.onnx\u003c/code\u003e: (310MB): optimized f32 version from \u003ca href=\"https://github.com/taylorchu/kokoro-onnx/releases/tag/v0.1.0\"\u003etaylorchu/kokoro-onnx\u003c/a\u003e\n\u003ccode\u003ekokoro-v0_19.fp16.onnx\u003c/code\u003e: (169MB): optimized f16 version from \u003ca href=\"https://github.com/taylorchu/kokoro-onnx/releases/tag/v0.1.0\"\u003etaylorchu/kokoro-onnx\u003c/a\u003e\n\u003ccode\u003ekokoro-v0_19.int8.onnx\u003c/code\u003e: (88MB): optimized int8 version from \u003ca href=\"https://github.com/taylorchu/kokoro-onnx/releases/tag/v0.1.0\"\u003etaylorchu/kokoro-onnx\u003c/a\u003e\n\u003ccode\u003evoices.bin\u003c/code\u003e: npz (numpy) key value pairs of style vectors contains the following voices (26):\u003c/p\u003e\n\u003cpre lang=\"console\"\u003e\u003ccode\u003eaf_alloy, af_aoede, af_bella, af_jessica, af_kore, af_nicole, af_nova, af_river, af_sarah, af_sky, am_adam, am_echo, am_eric, am_fenrir, am_liam, am_michael, am_onyx, am_puck, bf_alice, bf_emma, bf_isabella, bf_lily, bm_daniel, bm_fable, bm_george, bm_lewis\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/thewh1teagle/kokoro-onnx/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `onnxruntime` from 1.28.0 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/onnxruntime/releases\"\u003eonnxruntime's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eONNX Runtime v1.29.0\u003c/h2\u003e\n\u003ch2\u003eAnnouncements \u0026amp; Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eonnxruntime-web has announced the deprecation of WebGL and JSEP. The native WebGPU EP is the recommended path going forward. See the deprecation and migration plans for details (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29716\"\u003e#29716\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31683\"\u003e#31683\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003ePOSIX telemetry is now available on Linux, macOS, Android, and iOS when ONNX Runtime is built with telemetry enabled. It does not change the public ABI, WebAssembly remains telemetry-free, and setting \u003ccode\u003eORT_DISABLE_TELEMETRY=1\u003c/code\u003e before initialization disables non-Windows telemetry for the process (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/27379\"\u003e#27379\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29872\"\u003e#29872\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eThe unused internal \u003ccode\u003eonnxruntime/python/tools/tensorrt\u003c/code\u003e dashboard tooling was removed. This does not affect the TensorRT Execution Provider APIs (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29395\"\u003e#29395\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSecurity Fixes\u003c/h2\u003e\n\u003ch3\u003ePath, bounds, and input validation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a path traversal vulnerability in TensorRT and NvTensorRTRTX engine refitting by making external-data path validation unconditional (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29396\"\u003e#29396\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eValidated the CPU MoE \u003ccode\u003ek\u003c/code\u003e attribute against the number of experts and fixed a CPU \u003ccode\u003eTensorScatter\u003c/code\u003e security issue (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29907\"\u003e#29907\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29916\"\u003e#29916\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded missing rank, shape, and parameter validation for pooling, LSTM and DynamicQuantizeLSTM, Sampling, FeatureVectorizer, SkipLayerNorm, QLinearConv, Whisper decoding, RNN activations, GridSample, contrib \u003ccode\u003eRange\u003c/code\u003e, and \u003ccode\u003eCropAndResize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29254\"\u003e#29254\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29255\"\u003e#29255\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29265\"\u003e#29265\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29579\"\u003e#29579\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29595\"\u003e#29595\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29605\"\u003e#29605\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29871\"\u003e#29871\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31636\"\u003e#31636\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31671\"\u003e#31671\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31675\"\u003e#31675\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31676\"\u003e#31676\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31684\"\u003e#31684\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eHardened CUDA indexing and buffer handling in GridSample, transpose, GatherBlockQuantized, InstanceNormalization, LayerNorm/RMSNorm, BeamSearch, DeformConv, AveragePool, and MaxPool (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29581\"\u003e#29581\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29631\"\u003e#29631\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29638\"\u003e#29638\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31640\"\u003e#31640\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31642\"\u003e#31642\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31644\"\u003e#31644\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31645\"\u003e#31645\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31647\"\u003e#31647\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31650\"\u003e#31650\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed packed sub-byte tensor over-copying in \u003ccode\u003eOrtApi::GetValue\u003c/code\u003e and validated DML constant tensor byte sizes (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29157\"\u003e#29157\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31665\"\u003e#31665\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSupply chain and tooling\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated npm lockfiles, refreshed the Next.js end-to-end fixture lockfile for security advisories, and upgraded \u003ccode\u003eadm-zip\u003c/code\u003e for \u003ccode\u003eonnxruntime-node\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29827\"\u003e#29827\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29926\"\u003e#29926\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31192\"\u003e#31192\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Features\u003c/h2\u003e\n\u003ch3\u003eCore APIs \u0026amp; Runtime\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDefault intra-op and inter-op thread-pool sizes can now be set with \u003ccode\u003eORT_INTRA_OP_NUM_THREADS\u003c/code\u003e and \u003ccode\u003eORT_INTER_OP_NUM_THREADS\u003c/code\u003e. Explicit thread settings still take precedence, and \u003ccode\u003e0\u003c/code\u003e preserves machine-sized defaults (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29688\"\u003e#29688\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded weightless-model support for all initializer types, allowed zero-input \u003ccode\u003eEpContext\u003c/code\u003e nodes, and wired maximum-shape inference into workspace estimation (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29607\"\u003e#29607\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29799\"\u003e#29799\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31613\"\u003e#31613\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded ONNX-domain support for rotary embedding and a fused \u003ccode\u003eMRotaryEmbedding\u003c/code\u003e contrib operator for Qwen mRoPE variants (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29261\"\u003e#29261\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31728\"\u003e#31728\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded multi-shape profiling to \u003ccode\u003eonnxruntime_perf_test\u003c/code\u003e through \u003ccode\u003e--data_shape\u003c/code\u003e, plus verbose graph-transformer tracing and broader inference-session error-path coverage (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29555\"\u003e#29555\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29558\"\u003e#29558\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29569\"\u003e#29569\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29571\"\u003e#29571\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eExecution Provider ABI \u0026amp; Plugin EPs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWebGPU now supports device-free compile-only sessions for offline graph transformation (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29681\"\u003e#29681\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eExpanded CUDA plugin EP packaging and testing, including Windows ARM64 package and size options, updated package outputs, and aligned architecture selections across Python, C API, TensorRT, Node.js, and plugin packages (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31635\"\u003e#31635\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31722\"\u003e#31722\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31992\"\u003e#31992\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved plugin lifecycle handling by unloading failed EP library loads and fixing allocator-deleter lifetime (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29634\"\u003e#29634\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29770\"\u003e#29770\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eExecution Provider Updates\u003c/h2\u003e\n\u003ch3\u003eNVIDIA CUDA EP\u003c/h3\u003e\n\u003ch4\u003eAttention and decoding\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ePagedAttention\u003c/code\u003e with quantized KV cache, XQA decode, MLA, QK-Norm, and head-sink support (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29912\"\u003e#29912\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eExtended quantized KV-cache support with attention sinks, independent and per-channel scales, sliding-window cache support, and a fused K/V dequantization launch (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29900\"\u003e#29900\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29904\"\u003e#29904\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31480\"\u003e#31480\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a cuDNN SDPA decode tier to the standard ONNX \u003ccode\u003eAttention\u003c/code\u003e CUDA kernel and enabled cuDNN SDPA for contrib \u003ccode\u003eAttention\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29715\"\u003e#29715\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29717\"\u003e#29717\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eattention_bias\u003c/code\u003e support to the GroupQueryAttention unfused path and \u003ccode\u003estate_window\u003c/code\u003e support to LinearAttention and CausalConvWithState for MTP (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29525\"\u003e#29525\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31157\"\u003e#31157\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed LinearAttention on GPUs with limited shared memory (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31982\"\u003e#31982\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eMoE and quantized GEMM\u003c/h4\u003e\n\u003c!-- 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/microsoft/onnxruntime/commit/2e2543fbe9fae542f921d47a72d21d5a4ef0b710\"\u003e\u003ccode\u003e2e2543f\u003c/code\u003e\u003c/a\u003e [CUDA] Update cuda archs in packaging pipelines (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31992\"\u003e#31992\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/9b174a42fcf8fb41d6f5f99f7102b8f650b5558f\"\u003e\u003ccode\u003e9b174a4\u003c/code\u003e\u003c/a\u003e [CUDA] Add GatedAdd contrib operator (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31835\"\u003e#31835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/a29da16687ecb3ab665a1dbdadf3f958559f376b\"\u003e\u003ccode\u003ea29da16\u003c/code\u003e\u003c/a\u003e Validate SkipLayerNorm prepacked lengths (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31676\"\u003e#31676\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/831fa2fe2b89cfd59506927e6125015e8fca1ab6\"\u003e\u003ccode\u003e831fa2f\u003c/code\u003e\u003c/a\u003e Validate whisper beginning_timestamp_token_id bounds (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31636\"\u003e#31636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/3cee186058ef3712d420bbd3c2f2e4cc2feea773\"\u003e\u003ccode\u003e3cee186\u003c/code\u003e\u003c/a\u003e Handle RNN activation parameters safely (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31675\"\u003e#31675\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/37d79e38a5f513427a961c328b117f6fd2959e43\"\u003e\u003ccode\u003e37d79e3\u003c/code\u003e\u003c/a\u003e Harden CUDA fp16 transpose index math against int overflow (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31644\"\u003e#31644\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/45bdd4c47284b619549fbba6bc2012b6ed7f218a\"\u003e\u003ccode\u003e45bdd4c\u003c/code\u003e\u003c/a\u003e Validate QLinearConv bias size against output channels (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31684\"\u003e#31684\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/f5de4c394598e91846d01bed500d1253efeee73b\"\u003e\u003ccode\u003ef5de4c3\u003c/code\u003e\u003c/a\u003e Fix TfIdfVectorizer weight indexing semantics (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31649\"\u003e#31649\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/d3abafc3d78d6f4a0842b25de3a2d62eea6445cc\"\u003e\u003ccode\u003ed3abafc\u003c/code\u003e\u003c/a\u003e Validate FeatureVectorizer batch sizes (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31671\"\u003e#31671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/1441b36d045d8ceb0d6b52793c181b2c86d8cfa7\"\u003e\u003ccode\u003e1441b36\u003c/code\u003e\u003c/a\u003e [WebGPU] Add MRotaryEmbedding support (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31976\"\u003e#31976\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/onnxruntime/compare/v1.28.0...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `scipy` from 1.18.0 to 1.18.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/scipy/scipy/releases\"\u003escipy's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eSciPy 1.18.1 Release Notes\u003c/h1\u003e\n\u003cp\u003eSciPy \u003ccode\u003e1.18.1\u003c/code\u003e is a bug-fix release with no new features\ncompared to \u003ccode\u003e1.18.0\u003c/code\u003e. This release includes binaries on\nPyPI for Python \u003ccode\u003e3.15\u003c/code\u003e, and the minimum required version\nof the GCC toolchain has been increased to \u003ccode\u003e10.3.0\u003c/code\u003e.\u003c/p\u003e\n\u003ch1\u003eAuthors\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eName (commits)\u003c/li\u003e\n\u003cli\u003eWasim Akram (2) +\u003c/li\u003e\n\u003cli\u003eJake Bowhay (1)\u003c/li\u003e\n\u003cli\u003eMichael Bratsch (1)\u003c/li\u003e\n\u003cli\u003eDietrich Brunn (1)\u003c/li\u003e\n\u003cli\u003eEvgeni Burovski (1)\u003c/li\u003e\n\u003cli\u003eAadya Chinubhai (1)\u003c/li\u003e\n\u003cli\u003eLucas Colley (3)\u003c/li\u003e\n\u003cli\u003eTekin Ertekin (1) +\u003c/li\u003e\n\u003cli\u003eFuyugithub (2) +\u003c/li\u003e\n\u003cli\u003eRalf Gommers (11)\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu (1)\u003c/li\u003e\n\u003cli\u003eIjtihed Kilani (1) +\u003c/li\u003e\n\u003cli\u003eAndrew Nelson (2)\u003c/li\u003e\n\u003cli\u003eIlhan Polat (1)\u003c/li\u003e\n\u003cli\u003eTyler Reddy (39)\u003c/li\u003e\n\u003cli\u003eromao05 (1) +\u003c/li\u003e\n\u003cli\u003eMichael Simacek (1) +\u003c/li\u003e\n\u003cli\u003eJacob Vanderplas (2)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eA total of 18 people contributed to this release.\nPeople with a \u0026quot;+\u0026quot; by their names contributed a patch for the first time.\nThis list of names is automatically generated, and may not be fully complete.\u003c/p\u003e\n\u003cp\u003eNote that the source and binary assets associated with this release were published to PyPI using \u003ca href=\"https://docs.pypi.org/trusted-publishers/\"\u003etrusted publishing\u003c/a\u003e, and so the trusted assets and their hashes are made available more securely at \u003ca href=\"https://pypi.org/project/scipy/1.18.1/\"\u003ehttps://pypi.org/project/scipy/1.18.1/\u003c/a\u003e rather than providing them here in a less secure manner.\u003c/p\u003e\n\u003cp\u003eA complete list of issues and pull requests associated with this release is available in the associated \u003ca href=\"https://github.com/scipy/scipy/releases/download/v1.18.1/README.txt\"\u003e\u003ccode\u003eREADME.txt\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/e4e854eaa8f18d807cd3496028e257e36caa93cc\"\u003e\u003ccode\u003ee4e854e\u003c/code\u003e\u003c/a\u003e REL: SciPy 1.18.1 rel commit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/3c8e5f83e56996ae853e34ff80d87a1ad0758186\"\u003e\u003ccode\u003e3c8e5f8\u003c/code\u003e\u003c/a\u003e BLD, MAINT: pythran bounds for \u003ccode\u003e1.18.1\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/scipy/scipy/issues/25978\"\u003e#25978\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/54c0f956656ba02daf9b1c48af9b089656c9d4cf\"\u003e\u003ccode\u003e54c0f95\u003c/code\u003e\u003c/a\u003e BLD, MAINT: pythran bounds for \u003ccode\u003e1.18.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/45a355d11e858ef76f5f2975f06f276115beb5ef\"\u003e\u003ccode\u003e45a355d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/scipy/scipy/issues/25884\"\u003e#25884\u003c/a\u003e from tylerjereddy/treddy_backports_1.18.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/a717e28c89e40c22edabcb8d64dd41d537f63683\"\u003e\u003ccode\u003ea717e28\u003c/code\u003e\u003c/a\u003e DOC: PR 25884 revisions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/bb489c02a6b5e094646609051936128265e12692\"\u003e\u003ccode\u003ebb489c0\u003c/code\u003e\u003c/a\u003e DOC: PR 25884 revisions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/09bca241fe2f4f2f23b5a3f43a285a7a2c79fe26\"\u003e\u003ccode\u003e09bca24\u003c/code\u003e\u003c/a\u003e BLD: package: pin meson on win-64 to avoid clang-cl bug (\u003ca href=\"https://redirect.github.com/scipy/scipy/issues/25913\"\u003e#25913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/095fe563cc65e121cea2493c1f1ad22018b5e25e\"\u003e\u003ccode\u003e095fe56\u003c/code\u003e\u003c/a\u003e DOC, BLD: PR 25884 revisions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/e66ea6414cbd718fe86751dcd23533b44f19588a\"\u003e\u003ccode\u003ee66ea64\u003c/code\u003e\u003c/a\u003e DOC: update minimum GCC version in toolchain roadmap\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/c0216532f619338e75842b7802b52c128c40e94f\"\u003e\u003ccode\u003ec021653\u003c/code\u003e\u003c/a\u003e TST: tolerance bumps and skips on 32-bit platforms\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/scipy/scipy/compare/v1.18.0...v1.18.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `speechbrain` from 1.1.0 to 1.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/speechbrain/speechbrain/releases\"\u003espeechbrain's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eRecipes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/da704dd9fd710df5c6c93ea2d31a028837d93d85\"\u003eda704dd\u003c/a\u003e]: FocalCodec-Stream [ICASSP 2026] (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3050\"\u003e#3050\u003c/a\u003e) (Luca Della Libera) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3050\"\u003e#3050\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix incorrect parameter description in load_data_json (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3053\"\u003e#3053\u003c/a\u003e) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3053\"\u003e#3053\u003c/a\u003e (\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/2827a48d4b471d76b22a7e8c46ee5b94ae0f90ea\"\u003eBimochan raj kunwar\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/830d60112e70391c06d5956ef30c82b300af773b\"\u003e830d601\u003c/a\u003e]: add markdown files for agentic models (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3048\"\u003e#3048\u003c/a\u003e) (Adel Moumen) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3048\"\u003e#3048\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSecurity\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/22a616646a493871401461f80b2d5cf564cb2850\"\u003e22a6166\u003c/a\u003e]: Use safeloader to load checkpoint meta files (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3067\"\u003e#3067\u003c/a\u003e) (Peter Plantinga) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3067\"\u003e#3067\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003emel_spectogram should be mel_spectrogram (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3063\"\u003e#3063\u003c/a\u003e) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3063\"\u003e#3063\u003c/a\u003e (\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/2bafd45d6fb8eb4eb67f42533267a9df89a8986e\"\u003eAccess\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eWindows-incompatible python's inspect file guard in LazyModule (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3065\"\u003e#3065\u003c/a\u003e) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3065\"\u003e#3065\u003c/a\u003e (\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/3d6d2daed93f886405d4d81cb045521ccb7a0d2f\"\u003eNeed-an-AwP\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDecoder input tensor dimension error (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3049\"\u003e#3049\u003c/a\u003e) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3049\"\u003e#3049\u003c/a\u003e (\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/d4316ecab7cddb8fefcdc181a2fe6559a4dffd78\"\u003eParas\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/9c826ef3937bac885c8a6ca86c6889a30f256fb5\"\u003e9c826ef\u003c/a\u003e]: Add hooks to ensure saving of kmeans model works correctly (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3047\"\u003e#3047\u003c/a\u003e) (Peter Plantinga) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3047\"\u003e#3047\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/8a89ebad72af734b75bbd37565ae96a6819e146b\"\u003e8a89eba\u003c/a\u003e]: Fix device handling for MPS (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3055\"\u003e#3055\u003c/a\u003e) (flexthink) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3055\"\u003e#3055\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/d0d15bbb6578af683aa15c4214e0ac0c98108071\"\u003ed0d15bb\u003c/a\u003e]: Fix incorrect documented defaults for HF wrapper freeze/output_norm (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3060\"\u003e#3060\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3062\"\u003e#3062\u003c/a\u003e) (Deeksha Manjunath) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3062\"\u003e#3062\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/e5cb1f65b940634215650aa1171e0440d0808123\"\u003ee5cb1f6\u003c/a\u003e]: Fix \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3033\"\u003e#3033\u003c/a\u003e: Fix closure variable bug in classification_error (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3061\"\u003e#3061\u003c/a\u003e) (Nandana Dileep) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3061\"\u003e#3061\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/841e205321029dec56c0354cda51bd2c2c6c29eb\"\u003e841e205\u003c/a\u003e]: Fix LoRA adapter support for convolutional layers (fixes \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3056\"\u003e#3056\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3064\"\u003e#3064\u003c/a\u003e) (oly) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3064\"\u003e#3064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/dff42eeb0cc5d5fd5fcd648a9d5fc162f7cd1fea\"\u003edff42ee\u003c/a\u003e]: fix float columns being converted to string in from_csv (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3043\"\u003e#3043\u003c/a\u003e) (Novikov Kirill) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3043\"\u003e#3043\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/d9ee175897cbd31593456098c7c33b55b53d0379\"\u003ed9ee175\u003c/a\u003e]: Fix LengthsCapable containers dropping lengths for wav_lens-named layers (fixes \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/2986\"\u003e#2986\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3068\"\u003e#3068\u003c/a\u003e) (oly) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3068\"\u003e#3068\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/825d024659ec6d2b35f6a7206825de4b69d53404\"\u003e825d024\u003c/a\u003e]: Fixed TransformerST bug with ASR masks (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/2984\"\u003e#2984\u003c/a\u003e) (Filip Gębala) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/2984\"\u003e#2984\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/speechbrain/speechbrain/commit/89ead74d163463d30c62329a09cfdb4c54f5abc1\"\u003e\u003ccode\u003e89ead74\u003c/code\u003e\u003c/a\u003e Update version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/1fbb135f303d9fc6627d9a839ef9a23d2f0d1fe0\"\u003e\u003ccode\u003e1fbb135\u003c/code\u003e\u003c/a\u003e Fix ruff errors from merged PRs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/825d024659ec6d2b35f6a7206825de4b69d53404\"\u003e\u003ccode\u003e825d024\u003c/code\u003e\u003c/a\u003e Fixed TransformerST bug with ASR masks (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/2984\"\u003e#2984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/830d60112e70391c06d5956ef30c82b300af773b\"\u003e\u003ccode\u003e830d601\u003c/code\u003e\u003c/a\u003e add markdown files for agentic models (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3048\"\u003e#3048\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/d9ee175897cbd31593456098c7c33b55b53d0379\"\u003e\u003ccode\u003ed9ee175\u003c/code\u003e\u003c/a\u003e Fix LengthsCapable containers dropping lengths for wav_lens-named layers (fix...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/dff42eeb0cc5d5fd5fcd648a9d5fc162f7cd1fea\"\u003e\u003ccode\u003edff42ee\u003c/code\u003e\u003c/a\u003e fix float columns being converted to string in from_csv (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3043\"\u003e#3043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/e400a03a7036bece22a883158f762cbe6051fc01\"\u003e\u003ccode\u003ee400a03\u003c/code\u003e\u003c/a\u003e Fix ruff errors from merged PRs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/d4316ecab7cddb8fefcdc181a2fe6559a4dffd78\"\u003e\u003ccode\u003ed4316ec\u003c/code\u003e\u003c/a\u003e fix: Decoder input tensor dimension error (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3049\"\u003e#3049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/841e205321029dec56c0354cda51bd2c2c6c29eb\"\u003e\u003ccode\u003e841e205\u003c/code\u003e\u003c/a\u003e Fix LoRA adapter support for convolutional layers (fixes \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3056\"\u003e#3056\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3064\"\u003e#3064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/3d6d2daed93f886405d4d81cb045521ccb7a0d2f\"\u003e\u003ccode\u003e3d6d2da\u003c/code\u003e\u003c/a\u003e fix: Windows-incompatible python's inspect file guard in LazyModule (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3065\"\u003e#3065\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/speechbrain/speechbrain/compare/v1.1.0...v1.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.26.0 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.26.0...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `click` from 8.4.2 to 8.5.0\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.5.0\u003c/h2\u003e\n\u003cp\u003eThis is the Click 8.5.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.5.0/\"\u003ehttps://pypi.org/project/click/8.5.0/\u003c/a\u003e\nChanges:  \u003ca href=\"https://click.palletsprojects.com/page/changes/#version-8-5-0\"\u003ehttps://click.palletsprojects.com/page/changes/#version-8-5-0\u003c/a\u003e\nMilestone \u003ca href=\"https://github.com/pallets/click/milestone/33\"\u003ehttps://github.com/pallets/click/milestone/33\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd built-in shell completion support for PowerShell (Windows PowerShell\n5.1+ and pwsh 7+) alongside the existing \u003ccode\u003ebash\u003c/code\u003e, \u003ccode\u003ezsh\u003c/code\u003e, and \u003ccode\u003efish\u003c/code\u003e\ncompleters. Use \u003ccode\u003e_FOO_BAR_COMPLETE=powershell_source foo-bar\u003c/code\u003e to generate\nthe completion script. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2672\"\u003e#2672\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3637\"\u003e#3637\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupported versions of Windows enable ANSI terminal styles by default.\nColorama is no longer a dependency and is not used. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2986\"\u003e#2986\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3505\"\u003e#3505\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e{class}\u003ccode\u003eArgument\u003c/code\u003e accepts a \u003ccode\u003ehelp\u003c/code\u003e parameter, and help output includes\na \u003ccode\u003ePositional arguments\u003c/code\u003e section when argument help is available. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2983\"\u003e#2983\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3473\"\u003e#3473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003econfirm()\u003c/code\u003e and \u003ccode\u003eprompt()\u003c/code\u003e strip ANSI color and style codes from the\nprompt when the output stream does not support them, matching \u003ccode\u003eecho()\u003c/code\u003e.\nThis stripping was lost in \u003ccode\u003e8.4.0\u003c/code\u003e when \u003ca href=\"https://redirect.github.com/pallets/click/issues/2969\"\u003e#2969\u003c/a\u003e began writing the\nprompt with \u003ccode\u003einput()\u003c/code\u003e directly. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3572\"\u003e#3572\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3653\"\u003e#3653\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e{class}\u003ccode\u003ePath\u003c/code\u003e with \u003ccode\u003eallow_dash=True\u003c/code\u003e no longer triggers a \u003ccode\u003eBytesWarning\u003c/code\u003e,\nan error under \u003ccode\u003epython -bb\u003c/code\u003e, when checking a value against the \u003ccode\u003e-\u003c/code\u003e\nconvention. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2877\"\u003e#2877\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3642\"\u003e#3642\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd {func}\u003ccode\u003ecustom_version_option\u003c/code\u003e, a \u003ccode\u003e--version\u003c/code\u003e option whose output is\nproduced by a callback, covering cases {func}\u003ccode\u003eversion_option\u003c/code\u003e intentionally\ndoes not. The feature set of {func}\u003ccode\u003eversion_option\u003c/code\u003e is now frozen; see\n[discussion \u003ca href=\"https://redirect.github.com/pallets/click/issues/3527\"\u003e#3527\u003c/a\u003e](\u003ca href=\"https://github.com/pallets/click/discussions/3527\"\u003ehttps://github.com/pallets/click/discussions/3527\u003c/a\u003e). \u003ca href=\"https://redirect.github.com/pallets/click/issues/3581\"\u003e#3581\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003estyle()\u003c/code\u003e and \u003ccode\u003esecho()\u003c/code\u003e no longer silently drop the 256-color index \u003ccode\u003e0\u003c/code\u003e\n(black) passed as \u003ccode\u003efg\u003c/code\u003e or \u003ccode\u003ebg\u003c/code\u003e, and now validate color arguments. Invalid\ncolors raise a \u003ccode\u003eValueError\u003c/code\u003e instead of a \u003ccode\u003eTypeError\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3677\"\u003e#3677\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eThe automatic help option stores its value under the reserved name\n\u003ccode\u003e_click_default_help\u003c/code\u003e instead of \u003ccode\u003ehelp\u003c/code\u003e, so a parameter named \u003ccode\u003ehelp\u003c/code\u003e no\nlonger breaks parsing. The new name is visible in\n{meth}\u003ccode\u003eCommand.to_info_dict\u003c/code\u003e output. Parameters that overwrite each other's\nvalue trigger a warning: an argument sharing its name with another\nparameter, or any parameter claiming the reserved name. Options may still\nshare a name to compete for the same value (feature switches).\n\u003ca href=\"https://redirect.github.com/pallets/click/issues/2819\"\u003e#2819\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3678\"\u003e#3678\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eunstyle\u003c/code\u003e and the ANSI handling behind help-text wrapping now strip the full\nCSI escape-sequence grammar. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3681\"\u003e#3681\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStreamline \u003ccode\u003eOption\u003c/code\u003e flag handling: the flag-kind, type, lazy-default and\nvalidation steps in \u003ccode\u003eOption.__init__\u003c/code\u003e move into focused helpers, and\n\u003ccode\u003eflag_value\u003c/code\u003e and \u003ccode\u003edefault\u003c/code\u003e keep their unset sentinel at construction\n(resolved lazily on read) so \u003ccode\u003eis UNSET\u003c/code\u003e reliably tells a user-supplied value\nfrom an auto-derived one. Runtime behavior is unchanged, but\n{meth}\u003ccode\u003eParameter.to_info_dict\u003c/code\u003e now resolves \u003ccode\u003edefault=True\u003c/code\u003e on a feature\nswitch to its \u003ccode\u003eflag_value\u003c/code\u003e, matching what the function receives at call\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/click/blob/main/CHANGES.md\"\u003eclick's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 8.5.0\u003c/h2\u003e\n\u003cp\u003eReleased 2026-08-24\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd built-in shell completion support for PowerShell (Windows PowerShell\n5.1+ and pwsh 7+) alongside the existing \u003ccode\u003ebash\u003c/code\u003e, \u003ccode\u003ezsh\u003c/code\u003e, and \u003ccode\u003efish\u003c/code\u003e\ncompleters. Use \u003ccode\u003e_FOO_BAR_COMPLETE=powershell_source foo-bar\u003c/code\u003e to generate\nthe completion script. {issue}\u003ccode\u003e2672\u003c/code\u003e {pr}\u003ccode\u003e3637\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eSupported versions of Windows enable ANSI terminal styles by default.\nColorama is no longer a dependency and is not used. {issue}\u003ccode\u003e2986\u003c/code\u003e {pr}\u003ccode\u003e3505\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e{class}\u003ccode\u003eArgument\u003c/code\u003e accepts a \u003ccode\u003ehelp\u003c/code\u003e parameter, and help output includes\na \u003ccode\u003ePositional arguments\u003c/code\u003e section when argument help is available. {issue}\u003ccode\u003e2983\u003c/code\u003e {pr}\u003ccode\u003e3473\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003econfirm()\u003c/code\u003e and \u003ccode\u003eprompt()\u003c/code\u003e strip ANSI color and style codes from the\nprompt when the output stream does not support them, matching \u003ccode\u003eecho()\u003c/code\u003e.\nThis stripping was lost in \u003ccode\u003e8.4.0\u003c/code\u003e when {pr}\u003ccode\u003e2969\u003c/code\u003e began writing the\nprompt with \u003ccode\u003einput()\u003c/code\u003e directly. {issue}\u003ccode\u003e3572\u003c/code\u003e {pr}\u003ccode\u003e3653\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFix test failures when using pytest \u0026gt;= 9.1. {pr}\u003ccode\u003e3656\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e{class}\u003ccode\u003ePath\u003c/code\u003e with \u003ccode\u003eallow_dash=True\u003c/code\u003e no longer triggers a \u003ccode\u003eBytesWarning\u003c/code\u003e,\nan error under \u003ccode\u003epython -bb\u003c/code\u003e, when checking a value against the \u003ccode\u003e-\u003c/code\u003e\nconvention. {issue}\u003ccode\u003e2877\u003c/code\u003e {pr}\u003ccode\u003e3642\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd {func}\u003ccode\u003ecustom_version_option\u003c/code\u003e, a \u003ccode\u003e--version\u003c/code\u003e option whose output is\nproduced by a callback, covering cases {func}\u003ccode\u003eversion_option\u003c/code\u003e intentionally\ndoes not. The feature set of {func}\u003ccode\u003eversion_option\u003c/code\u003e is now frozen; see\n[discussion \u003ca href=\"https://redirect.github.com/pallets/click/issues/3527\"\u003e#3527\u003c/a\u003e](\u003ca href=\"https://github.com/pallets/click/discussions/3527\"\u003ehttps://github.com/pallets/click/discussions/3527\u003c/a\u003e). {pr}\u003ccode\u003e3581\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003estyle()\u003c/code\u003e and \u003ccode\u003esecho()\u003c/code\u003e no longer silently drop the 256-color index \u003ccode\u003e0\u003c/code\u003e\n(black) passed as \u003ccode\u003efg\u003c/code\u003e or \u003ccode\u003ebg\u003c/code\u003e, and now validate color arguments. Invalid\ncolors raise a \u003ccode\u003eValueError\u003c/code\u003e instead of a \u003ccode\u003eTypeError\u003c/code\u003e. {pr}\u003ccode\u003e3677\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe automatic help option stores its value under the reserved name\n\u003ccode\u003e_click_default_help\u003c/code\u003e instead of \u003ccode\u003ehelp\u003c/code\u003e, so a parameter named \u003ccode\u003ehelp\u003c/code\u003e no\nlonger breaks parsing. The new name is visible in\n{meth}\u003ccode\u003eCommand.to_info_dict\u003c/code\u003e output. Parameters that overwrite each other's\nvalue trigger a warning: an argument sharing its name with another\nparameter, or any parameter claiming the reserved name. Options may still\nshare a name to compete for the same value (feature switches).\n{issue}\u003ccode\u003e2819\u003c/code\u003e {pr}\u003ccode\u003e3678\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eunstyle\u003c/code\u003e and the ANSI handling behind help-text wrapping now strip the full\nCSI escape-sequence grammar. {pr}\u003ccode\u003e3681\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eStreamline \u003ccode\u003eOption\u003c/code\u003e flag handling: the flag-kind, type, lazy-default and\nvalidation steps in \u003ccode\u003eOption.__init__\u003c/code\u003e move into focused helpers, and\n\u003ccode\u003eflag_value\u003c/code\u003e and \u003ccode\u003edefault\u003c/code\u003e keep their unset sentinel at construction\n(resolved lazily on read) so \u003ccode\u003eis UNSET\u003c/code\u003e reliably tells a user-supplied value\nfrom an auto-derived one. Runtime behavior is unchanged, but\n{meth}\u003ccode\u003eParameter.to_info_dict\u003c/code\u003e now resolves \u003ccode\u003edefault=True\u003c/code\u003e on a feature\nswitch to its \u003ccode\u003eflag_value\u003c/code\u003e, matching what the function receives at call\ntime. {pr}\u003ccode\u003e3641\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e{func}\u003ccode\u003eget_binary_stream\u003c/code\u003e and {func}\u003ccode\u003eget_text_stream\u003c/code\u003e are deprecated and\nwill be removed in Click 9.0. {issue}\u003ccode\u003e3481\u003c/code\u003e {pr}\u003ccode\u003e3695\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe following \u003ccode\u003eclick.utils\u003c/code\u003e names were never intentionally public and are\nnow private (\u003ccode\u003e_\u003c/code\u003e-prefixed). The old names remain available with a\n\u003ccode\u003eDeprecationWarning\u003c/code\u003e until Click 9.0: \u003ccode\u003eLazyFile\u003c/code\u003e, \u003ccode\u003eKeepOpenFile\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/pallets/click/commit/8b19813f2bfca99f1018a587a8cf54fc959f2e5d\"\u003e\u003ccode\u003e8b19813\u003c/code\u003e\u003c/a\u003e Release version 8.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/2c8cd3ac958a7eb316d67f2d316c27086c4c0369\"\u003e\u003ccode\u003e2c8cd3a\u003c/code\u003e\u003c/a\u003e Add FAQ entry about \u003ccode\u003eUnicodeEncodeError\u003c/code\u003e on Windows (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3778\"\u003e#3778\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/131c86aadddfa5cb6dca8339c9d6294c4eacb8ac\"\u003e\u003ccode\u003e131c86a\u003c/code\u003e\u003c/a\u003e Add FAQ entry about \u003ccode\u003eUnicodeEncodeError\u003c/code\u003e on Windows\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/e1fd5946ab26aaf372009eaff1acf947140b40fb\"\u003e\u003ccode\u003ee1fd594\u003c/code\u003e\u003c/a\u003e Add support of \u003ccode\u003epathlib.Path\u003c/code\u003e to \u003ccode\u003eedit\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3781\"\u003e#3781\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/a1d87858abd77fa8e3ffc204670ccd75b96c4781\"\u003e\u003ccode\u003ea1d8785\u003c/code\u003e\u003c/a\u003e Add support of \u003ccode\u003epathlib.Path\u003c/code\u003e to \u003ccode\u003eedit\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/2103e157683c5e4cadc8ee1838df526a54bde9a4\"\u003e\u003ccode\u003e2103e15\u003c/code\u003e\u003c/a\u003e Forward all user's parameters set in \u003ccode\u003ePAGER\u003c/code\u003e and improve flag detection (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3777\"\u003e#3777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/a6256bfb5971d5e58585fe7b6c656134e1ade5a4\"\u003e\u003ccode\u003ea6256bf\u003c/code\u003e\u003c/a\u003e Forwards all user's parameters set in \u003ccode\u003ePAGER\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/61b69e967e525bd502f5bf42def4d551e761fe0e\"\u003e\u003ccode\u003e61b69e9\u003c/code\u003e\u003c/a\u003e Resolve the pager command once, in \u003ccode\u003e_pager_contextmanager\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3776\"\u003e#3776\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/9835b0f7612d1b1ea180a975fd6d24cf16791ba8\"\u003e\u003ccode\u003e9835b0f\u003c/code\u003e\u003c/a\u003e Resolve the pager command once, in \u003ccode\u003e_pager_contextmanager\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/f36d58bbd7f188178de2d4fe1d0292c510375ca7\"\u003e\u003ccode\u003ef36d58b\u003c/code\u003e\u003c/a\u003e Refactor pager stream handling (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3767\"\u003e#3767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets/click/compare/8.4.2...8.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ctranslate2` from 4.8.1 to 4.8.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/OpenNMT/CTranslate2/releases\"\u003ectranslate2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.8.2\u003c/h2\u003e\n\u003ch3\u003eFixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImport Python converters and specs lazily to avoid loading torch for inference-only use (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2080\"\u003e#2080\u003c/a\u003e) by \u003ca href=\"https://github.com/Anai-Guo\"\u003e\u003ccode\u003e@​Anai-Guo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix out-of-bounds reads in StorageView index validation (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2073\"\u003e#2073\u003c/a\u003e) by \u003ca href=\"https://github.com/jordimas\"\u003e\u003ccode\u003e@​jordimas\u003c/code\u003e\u003c/a\u003e, reported by Nathan Keys (Halo Forge Labs)\u003c/li\u003e\n\u003cli\u003eUpdate cxxopts to v3.3.1 for GCC 15 compatibility (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2084\"\u003e#2084\u003c/a\u003e) by \u003ca href=\"https://github.com/bekard\"\u003e\u003ccode\u003e@​bekard\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eValidate model variable sizes before allocation (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2091\"\u003e#2091\u003c/a\u003e) by \u003ca href=\"https://github.com/jordimas\"\u003e\u003ccode\u003e@​jordimas\u003c/code\u003e\u003c/a\u003e, reported by Hyeonbell\u003c/li\u003e\n\u003cli\u003eCheck StorageView reserve byte size before allocation (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2094\"\u003e#2094\u003c/a\u003e) by \u003ca href=\"https://github.com/infinityscroll\"\u003e\u003ccode\u003e@​infinityscroll\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove the runtime dependency on setuptools (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2096\"\u003e#2096\u003c/a\u003e) by \u003ca href=\"https://github.com/Ravencentric\"\u003e\u003ccode\u003e@​Ravencentric\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/OpenNMT/CTranslate2/blob/master/CHANGELOG.md\"\u003ectranslate2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/OpenNMT/CTranslate2/releases/tag/v4.8.2\"\u003ev4.8.2\u003c/a\u003e (2026-08-31)\u003c/h2\u003e\n\u003ch3\u003eFixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImport Python converters and specs lazily to avoid loading torch for inference-only use (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2080\"\u003e#2080\u003c/a\u003e) by \u003ca href=\"https://github.com/Anai-Guo\"\u003e\u003ccode\u003e@​Anai-Guo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix out-of-bounds reads in StorageView index validation (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2073\"\u003e#2073\u003c/a\u003e) by \u003ca href=\"https://github.com/jordimas\"\u003e\u003ccode\u003e@​jordimas\u003c/code\u003e\u003c/a\u003e, reported by Nathan Keys (Halo Forge Labs)\u003c/li\u003e\n\u003cli\u003eUpdate cxxopts to v3.3.1 for GCC 15 compatibility (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2084\"\u003e#2084\u003c/a\u003e) by \u003ca href=\"https://github.com/bekard\"\u003e\u003ccode\u003e@​bekard\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eValidate model variable sizes before allocation (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2091\"\u003e#2091\u003c/a\u003e) by \u003ca href=\"https://github.com/jordimas\"\u003e\u003ccode\u003e@​jordimas\u003c/code\u003e\u003c/a\u003e, reported by Hyeonbell\u003c/li\u003e\n\u003cli\u003eCheck StorageView reserve byte size before allocation (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2094\"\u003e#2094\u003c/a\u003e) by \u003ca href=\"https://github.com/infinityscroll\"\u003e\u003ccode\u003e@​infinityscroll\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove the runtime dependency on setuptools (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2096\"\u003e#2096\u003c/a\u003e) by \u003ca href=\"https://github.com/Ravencentric\"\u003e\u003ccode\u003e@​Ravencentric\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/OpenNMT/CTranslate2/commit/d44d2d069eb88c7b7804da864c10c201501cb4a9\"\u003e\u003ccode\u003ed44d2d0\u003c/code\u003e\u003c/a\u003e Version 4.8.2 with CHANGELOG (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2095\"\u003e#2095\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OpenNMT/CTranslate2/commit/f842545c930a6a5de020c58e34a83b2112f397a7\"\u003e\u003ccode\u003ef842545\u003c/code\u003e\u003c/a\u003e remove runtime dependency on setuptools (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2096\"\u003e#2096\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OpenNMT/CTranslate2/commit/af0453f5704ae59a6615f4eaa3c0c1bae40a647c\"\u003e\u003ccode\u003eaf0453f\u003c/code\u003e\u003c/a\u003e Check StorageView reserve byte size before allocation (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2094\"\u003e#2094\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OpenNMT/CTranslate2/commit/0cc7ea3043875aa096cd4ac9a0ac9de846ac767e\"\u003e\u003ccode\u003e0cc7ea3\u003c/code\u003e\u003c/a\u003e Validate model variable sizes before allocation (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2091\"\u003e#2091\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OpenNMT/CTranslate2/commit/6419e4c1e22bac8185aa75b93a9e032aaba6f2f2\"\u003e\u003ccode\u003e6419e4c\u003c/code\u003e\u003c/a\u003e update cxxopts to v3.3.1 (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2084\"\u003e#2084\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OpenNMT/CTranslate2/commit/3c57ed1781ee4d88fbe7c3d62f22d96ea583077d\"\u003e\u003ccode\u003e3c57ed1\u003c/code\u003e\u003c/a\u003e fix(python): import converters and specs lazily so inference does not load to...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OpenNMT/CTranslate2/commit/a93c2bfb8af9c702f42f355f17a29952289d1d1f\"\u003e\u003ccode\u003ea93c2bf\u003c/code\u003e\u003c/a\u003e Check lower ranks in storage_view (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2073\"\u003e#2073\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/OpenNMT/CTranslate2/compare/v4.8.1...v4.8.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `filelock` from 3.32.2 to 3.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/py-filelock/releases\"\u003efilelock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.32.5\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🧪 test(fork): report where a stalled fork stops by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/715\"\u003etox-dev/filelock#715\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📝 docs: say that mode is read-only in the thread-local section by \u003ca href=\"https://github.com/Gares95\"\u003e\u003ccode\u003e@​Gares95\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/716\"\u003etox-dev/filelock#716\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(lease): clear token after failed acquire by \u003ca href=\"https://github.com/lprnmns\"\u003e\u003ccode\u003e@​lprnmns\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/721\"\u003etox-dev/filelock#721\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/lprnmns\"\u003e\u003ccode\u003e@​lprnmns\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/721\"\u003etox-dev/filelock#721\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.32.4...3.32.5\"\u003ehttps://github.com/tox-dev/filelock/compare/3.32.4...3.32.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.32.4\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 fix: retry transient denials on open and claim read by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/705\"\u003etox-dev/filelock#705\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 test: deflake six scheduled-run failures by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/704\"\u003etox-dev/filelock#704\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 test: cover a reclaimed private record for real by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/706\"\u003etox-dev/filelock#706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 test(fork): fork once the event loop has closed by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/714\"\u003etox-dev/filelock#714\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 chore: batch dependency updates weekly on Tuesday by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/713\"\u003etox-dev/filelock#713\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eescape the hostname every marker publishes by \u003ca href=\"https://github.com/dxbjavid\"\u003e\u003ccode\u003e@​dxbjavid\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/709\"\u003etox-dev/filelock#709\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.32.3...3.32.4\"\u003ehttps://github.com/tox-dev/filelock/compare/3.32.3...3.32.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.32.3\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🧪 test(strict): deflake close-fault injections on graalpy by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/697\"\u003etox-dev/filelock#697\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📄 docs: publish llms.txt from the docs build by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/700\"\u003etox-dev/filelock#700\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(fork): survive audit events during interpreter shutdown by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/703\"\u003etox-dev/filelock#703\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.32.2...3.32.3\"\u003ehttps://github.com/tox-dev/filelock/compare/3.32.2...3.32.3\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/filelock/blob/main/docs/changelog.rst\"\u003efilelock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e###########\nChangelog\n###########\u003c/p\u003e\n\u003cp\u003e.. towncrier-draft-entries:: Unreleased\u003c/p\u003e\n\u003cp\u003e.. towncrier release notes start\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.5 (2026-08-31)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eSoftFileLease.token\u003c/code\u003e and \u003ccode\u003eAsyncSoftFileLease.token\u003c/code\u003e now read \u003ccode\u003eNone\u003c/code\u003e after a failed acquisition, so a contender\nturned away by a live holder no longer reports a token for a claim it never published. :pr:\u003ccode\u003e721\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eDocument that \u003ccode\u003emode\u003c/code\u003e has no setter: unlike \u003ccode\u003epoll_interval\u003c/code\u003e, \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003eblocking\u003c/code\u003e and \u003ccode\u003elifetime\u003c/code\u003e, it is fixed at construction and \u003ccode\u003elock.mode = ...\u003c/code\u003e raises \u003ccode\u003eAttributeError\u003c/code\u003e. :pr:\u003ccode\u003e716\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.4 (2026-08-23)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eStrictSoftFileLock\u003c/code\u003e always retries a claim read whose first attempt reports the claim as pending, so a first read\nthat itself outlasts the retry grace no longer fails closed on a claim it could have read. :pr:\u003ccode\u003e705\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eWindowsFileLock\u003c/code\u003e waits out a transient \u003ccode\u003eSTATUS_ACCESS_DENIED\u003c/code\u003e from \u003ccode\u003eNtCreateFile\u003c/code\u003e for up to half a second\nbefore raising \u003ccode\u003ePermissionError\u003c/code\u003e, since a peer unlinking the lock file as it releases can answer that for a moment; a\nreal denial still fails fast. :pr:\u003ccode\u003e705\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eEvery lock class now escapes the hostname it publishes, so a host whose \u003ccode\u003esocket.gethostname()\u003c/code\u003e carries a space, a\nnewline or a byte outside UTF-8 no longer writes a marker it reads back as malformed. Such a host used to lose a held\n\u003ccode\u003eSoftReadWriteLock\u003c/code\u003e read slot to a peer and could not take a write slot or a \u003ccode\u003eStrictSoftFileLock\u003c/code\u003e at all. :pr:\u003ccode\u003e709\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.3 (2026-08-13)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003eThe fork-safety audit hook no longer prints \u003ccode\u003eException ignored in audit hook\u003c/code\u003e with a \u003ccode\u003eTypeError\u003c/code\u003e when an audit\nevent fires during interpreter shutdown, after CPython has already cleared the module globals. :pr:\u003ccode\u003e701\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.2 (2026-07-29)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003eA \u003ccode\u003eSoftReadWriteLock\u003c/code\u003e or \u003ccode\u003eSoftFileLease\u003c/code\u003e acquire whose heartbeat thread fails to start now unlinks its marker and\nhands the claim back, instead of leaving an unrefreshed marker a peer takes while the caller believes it still holds\nthe lock. :pr:\u003ccode\u003e691\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.1 (2026-07-26)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003eCanceling an \u003ccode\u003eAsyncSoftReadWriteLock\u003c/code\u003e acquire now releases the claim instead of leaking a marker whose heartbeat\nwedges every contender. :pr:\u003ccode\u003e686\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/1585dfef9355a5c77d4a9498cc34d3a98056fdb9\"\u003e\u003ccode\u003e1585dfe\u003c/code\u003e\u003c/a\u003e Release 3.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/00177c32686e60bc5ef9875b5841867ea08d4558\"\u003e\u003ccode\u003e00177c3\u003c/code\u003e\u003c/a\u003e 🐛 fix(lease): clear token after failed acquire (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/721\"\u003e#721\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/5aeb9b6a5fe1e86dcb1c44a927aefffd607b17b0\"\u003e\u003ccode\u003e5aeb9b6\u003c/code\u003e\u003c/a\u003e 📝 docs: say that mode is read-only in the thread-local section (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/716\"\u003e#716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/2634dd1dcc597b319770df027491f16d07662952\"\u003e\u003ccode\u003e2634dd1\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/720\"\u003e#720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/37dccf0276f6db1520db9e3482fdf0446c14276e\"\u003e\u003ccode\u003e37dccf0\u003c/code\u003e\u003c/a\u003e 🧪 test(fork): report where a stalled fork stops (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/715\"\u003e#715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/cb493d6684ed5d2f923384633c86fef12e29bce2\"\u003e\u003ccode\u003ecb493d6\u003c/code\u003e\u003c/a\u003e Release 3.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/fe07a11a7133ddd104322eb79d3c59f966b4ba15\"\u003e\u003ccode\u003efe07a11\u003c/code\u003e\u003c/a\u003e escape the hostname every marker publishes (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/709\"\u003e#709\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/232732f49ed9d230802f527ad60b5d5ad1202a56\"\u003e\u003ccode\u003e232732f\u003c/code\u003e\u003c/a\u003e 🔧 chore: batch dependency updates weekly on Tuesday (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/713\"\u003e#713\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/2966eb51431ff8ac19eb2bec4e0b67c328437c48\"\u003e\u003ccode\u003e2966eb5\u003c/code\u003e\u003c/a\u003e 🧪 test(fork): fork once the event loop has closed (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/714\"\u003e#714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/61511ebc1cc5d40b28f8584f1078e63f2d63fb02\"\u003e\u003ccode\u003e61511eb\u003c/code\u003e\u003c/a\u003e build(deps): bump astral-sh/setup-uv from 10.0.0 to 10.0.1 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/712\"\u003e#712\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tox-dev/py-filelock/compare/3.32.2...3.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `idna` from 3.18 to 3.19\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kjd/idna/releases\"\u003eidna's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.19\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRestore the \u003ccode\u003estd3_rules\u003c/code\u003e option, which had no effect since changes\nto UTS \u003ca href=\"https://redirect.github.com/kjd/idna/issues/46\"\u003e#46\u003c/a\u003e processing in Unicode 16. Note that \u003ccode\u003euts46_remap()\u003c/code\u003e\ndefaults to enabling STD3 rules, so direct callers will see input\ncontaining non-LDH ASCII characters rejected again.\u003c/li\u003e\n\u003cli\u003ePerformance improvements to UTS \u003ca href=\"https://redirect.github.com/kjd/idna/issues/46\"\u003e#46\u003c/a\u003e mapping, particularly for\nASCII-only domains.\u003c/li\u003e\n\u003cli\u003eTest on free-threaded CPython with the GIL disabled and document\nthread safety.\u003c/li\u003e\n\u003cli\u003eExpose the Unicode version of the generated tables as\n\u003ccode\u003eidna.unicode_version\u003c/code\u003e, and show it in \u003ccode\u003eidna --version\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ecode\u003c/code\u003e, \u003ccode\u003etext\u003c/code\u003e, \u003ccode\u003ecodepoint\u003c/code\u003e and \u003ccode\u003eposition\u003c/code\u003e attributes to\n\u003ccode\u003eIDNAError\u003c/code\u003e so that the failed rule and the offending character can\nbe identified without parsing the exception message.\u003c/li\u003e\n\u003cli\u003eThe deprecated \u003ccode\u003etransitional\u003c/code\u003e argument to \u003ccode\u003eencode()\u003c/code\u003e and\n\u003ccode\u003euts46_remap()\u003c/code\u003e is now completely ignored, and gives a deprecation warning\nfor the latter.\u003c/li\u003e\n\u003cli\u003eReject A-labels that are not the canonical Punycode encoding of\ntheir U-label.\u003c/li\u003e\n\u003cli\u003eFix CONTEXTJ violations raising \u003ccode\u003eIDNAError\u003c/code\u003e instead of\n\u003ccode\u003eInvalidCodepointContext\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eConsistently raise \u003ccode\u003eIDNAError\u003c/code\u003e for empty labels and non-ASCII bytes\npassed to label helper functions and the incremental codec.\u003c/li\u003e\n\u003cli\u003eAdd property-based tests, extended fuzzing targets, coverage\nmeasurement, and CI checks that the data tables match the generator\noutput.\u003c/li\u003e\n\u003cli\u003eVarious code quality and tooling improvements.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to stefan6419846, LouieLuNZ, and Salvatore Corvaglia for\ncontributions to this release.\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/kjd/idna/blob/master/HISTORY.md\"\u003eidna's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.19 (2026-08-18)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRestore the \u003ccode\u003estd3_rules\u003c/code\u003e option, which had no effect since changes\nto UTS \u003ca href=\"https://redirect.github.com/kjd/idna/issues/46\"\u003e#46\u003c/a\u003e processing in Unicode 16. Note that \u003ccode\u003euts46_remap()\u003c/code\u003e\ndefaults to enabling STD3 rules, so direct callers will see input\ncontaining non-LDH ASCII characters rejected again.\u003c/li\u003e\n\u003cli\u003ePerformance improvements to UTS \u003ca href=\"https://redirect.github.com/kjd/idna/issues/46\"\u003e#46\u003c/a\u003e mapping, particularly for\nASCII-only domains.\u003c/li\u003e\n\u003cli\u003eTest on free-threaded CPython with the GIL disabled and document\nthread safety.\u003c/li\u003e\n\u003cli\u003eExpose the Unicode version of the generated tables as\n\u003ccode\u003eidna.unicode_version\u003c/code\u003e, and show it in \u003ccode\u003eidna --version\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ecode\u003c/code\u003e, \u003ccode\u003etext\u003c/code\u003e, \u003ccode\u003ecodepoint\u003c/code\u003e and \u003ccode\u003eposition\u003c/code\u003e attributes to\n\u003ccode\u003eIDNAError\u003c/code\u003e so that the failed rule and the offending character can\nbe identified without parsing the exception message.\u003c/li\u003e\n\u003cli\u003eThe deprecated \u003ccode\u003etransiti...\n\n_Description has been truncated_","html_url":"https://github.com/Prekzursil/Reframe/pull/450","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Prekzursil%2FReframe/issues/450","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/450/packages"},{"uuid":"5351977869","node_id":"PR_kwDOUGq5rs8AAAABCPyjvw","number":15,"state":"open","title":"Bump the minor-update group across 1 directory with 184 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-04T19:03:51.000Z","updated_at":"2026-09-04T19:04:04.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-update","update_count":184,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"transformers","old_version":"5.15.0","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"huggingface-hub","old_version":"1.27.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.1","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"fastapi","old_version":"0.136.3","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"starlette","old_version":"1.3.1","new_version":"1.6.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"prometheus-fastapi-instrumentator","old_version":"8.0.2","new_version":"8.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"pyzmq","old_version":"27.1.0","new_version":"27.2.0","repository_url":"https://github.com/zeromq/pyzmq"},{"name":"python-json-logger","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"pybase64","old_version":"1.4.3","new_version":"1.5.0","repository_url":"https://github.com/mayeut/pybase64"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions-ai","old_version":"0.4.13","new_version":"0.5.1"},{"name":"triton","old_version":"3.7.1","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"torchcodec","old_version":"0.14.0+cu130","new_version":"0.16.0","repository_url":"https://github.com/pytorch/torchcodec"},{"name":"auto-round-lib","old_version":"0.14.2","new_version":"0.15.0","repository_url":"https://github.com/intel/auto-round"},{"name":"tpu-inference","old_version":"0.26.0","new_version":"0.28.0","repository_url":"https://github.com/vllm-project/tpu-inference"},{"name":"pynvvideocodec","old_version":"2.0.4","new_version":"2.2.2"},{"name":"nvidia-cutlass-dsl","old_version":"4.6.2","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.8","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.85","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.85","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"cohere","old_version":"7.0.8","new_version":"7.1.1","repository_url":"https://github.com/cohere-ai/cohere-python"},{"name":"cohere-melody","old_version":"0.9.0","new_version":"0.13.4","repository_url":"https://github.com/cohere-ai/melody"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.0","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.3.0","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.0","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi-cloud-cli","old_version":"0.21.0","new_version":"0.24.0","repository_url":"https://github.com/fastapilabs/fastapi-cloud-cli"},{"name":"fastar","old_version":"0.11.0","new_version":"0.12.0","repository_url":"https://github.com/DoctorJohn/fastar"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"h11","old_version":"0.14.0","new_version":"0.16.0","repository_url":"https://github.com/python-hyper/h11"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"idna","old_version":"3.10","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.15.0","new_version":"0.16.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema-rs","old_version":"0.46.5","new_version":"0.52.1","repository_url":"https://github.com/Stranger6667/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llguidance","old_version":"1.7.6","new_version":"1.8.0","repository_url":"https://github.com/microsoft/llguidance"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.1.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.20.0.48","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.1","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.29.7","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"peft","old_version":"0.19.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.7","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pydantic-settings","old_version":"2.14.2","new_version":"2.15.0","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pyrate-limiter","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/vutran1710/PyrateLimiter"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"rignore","old_version":"0.7.6","new_version":"0.8.1"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"schemathesis","old_version":"4.21.6","new_version":"4.25.2","repository_url":"https://github.com/schemathesis/schemathesis"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"sentry-sdk","old_version":"2.63.0","new_version":"2.68.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.26.8","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.1","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.5","repository_url":"https://github.com/astral-sh/ruff"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 184 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [transformers](https://github.com/huggingface/transformers) | `5.15.0` | `5.16.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.27.0` | `1.29.0` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.1` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.136.3` | `0.141.1` |\n| [starlette](https://github.com/Kludex/starlette) | `1.3.1` | `1.6.0` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `8.0.2` | `8.1.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [pyzmq](https://github.com/zeromq/pyzmq) | `27.1.0` | `27.2.0` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `4.1.0` | `4.2.0` |\n| [pybase64](https://github.com/mayeut/pybase64) | `1.4.3` | `1.5.0` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| opentelemetry-semantic-conventions-ai | `0.4.13` | `0.5.1` |\n| [triton](https://github.com/triton-lang/triton) | `3.7.1` | `3.8.0` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [torchcodec](https://github.com/pytorch/torchcodec) | `0.14.0+cu130` | `0.16.0` |\n| [auto-round-lib](https://github.com/intel/auto-round) | `0.14.2` | `0.15.0` |\n| [tpu-inference](https://github.com/vllm-project/tpu-inference) | `0.26.0` | `0.28.0` |\n| pynvvideocodec | `2.0.4` | `2.2.2` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.6.2` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.8` | `0.2.6` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.85` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.85` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| [cohere](https://github.com/cohere-ai/cohere-python) | `7.0.8` | `7.1.1` |\n| [cohere-melody](https://github.com/cohere-ai/melody) | `0.9.0` | `0.13.4` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.0` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.3.0` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.0` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi-cloud-cli](https://github.com/fastapilabs/fastapi-cloud-cli) | `0.21.0` | `0.24.0` |\n| [fastar](https://github.com/DoctorJohn/fastar) | `0.11.0` | `0.12.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.19` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.15.0` | `0.16.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonschema-rs](https://github.com/Stranger6667/jsonschema) | `0.46.5` | `0.52.1` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llguidance](https://github.com/microsoft/llguidance) | `1.7.6` | `1.8.0` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.1.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.20.0.48` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.1` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.29.7` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [peft](https://github.com/huggingface/peft) | `0.19.1` | `0.20.0` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.7` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.14.2` | `2.15.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pyrate-limiter](https://github.com/vutran1710/PyrateLimiter) | `4.4.0` | `4.5.0` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| rignore | `0.7.6` | `0.8.1` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [schemathesis](https://github.com/schemathesis/schemathesis) | `4.21.6` | `4.25.2` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.63.0` | `2.68.1` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.26.8` | `0.27.2` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.1` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.5` |\n\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 5.15.0 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\n\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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.15.0...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.27.0 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\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/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.27.0...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e⚡ Performance — measured locally on this Mac, not lifted from PRs\u003c/h2\u003e\n\u003cp\u003eRun with \u003ccode\u003ecargo bench --bench \u0026lt;name\u0026gt; -- --save-baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.22.2\u003c/code\u003e, then \u003ccode\u003e--baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.23.1\u003c/code\u003e. Numbers are point-in-time wall clock on a single laptop; relative deltas are what matters, absolute numbers will differ on CI hardware.\u003c/p\u003e\n\u003ch3\u003eAdded-vocabulary deserialize — the headline win (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1999\"\u003e#1999\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003e\u003ccode\u003ebench: improve added_vocab_deserialize to reflect real-world workloads\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2000\"\u003e#2000\u003c/a\u003e) is now representative of how transformers actually loads tokenizer.json files. The combined effect of \u003ccode\u003edaachorse\u003c/code\u003e for the matching automaton plus the normalize-on-insert refactor is enormous on this workload:\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~410 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e248 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.1 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e273 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~395 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e235 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.4 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e290 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e400k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~15 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e980 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−94%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eReal-world impact: loading a Llama-3-style tokenizer with a large set of added tokens dropped from \u0026quot;noticeable pause\u0026quot; to \u0026quot;instant\u0026quot;.\u003c/p\u003e\n\u003ch3\u003eBPE encode\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch, no cache\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e530 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e446 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−16%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch\u003c/code\u003e (cached)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e690 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e685 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode\u003c/code\u003e (single)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.95 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.94 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (small)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e32.6 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e31.5 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−3%\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (big)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.01 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e988 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−2%\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eThe BPE per-thread cache PR (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e) shows much larger wins on highly-parallel workloads (+47–62% at 88+ threads on a server box, per the PR's own measurements on Vera). Single-thread batch numbers above are flat or slightly improved because cache-hit overhead was already low without contention.\u003c/p\u003e\n\u003ch3\u003eLlama-3 encode\u003c/h3\u003e\n\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/huggingface/tokenizers/commit/7f1623b90b5adfb9bc327d4c3468d2f70bbce262\"\u003e\u003ccode\u003e7f1623b\u003c/code\u003e\u003c/a\u003e Bump version to 0.23.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bbe43ad73d8fc8932b9d0e657ddee3cd70c649a4\"\u003e\u003ccode\u003ebbe43ad\u003c/code\u003e\u003c/a\u003e ci: release workflow fixes (node + python) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2043\"\u003e#2043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/ab0c5d8fc13eb1c5001d9c06806635e2b5a42e9f\"\u003e\u003ccode\u003eab0c5d8\u003c/code\u003e\u003c/a\u003e Fix node release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2034\"\u003e#2034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/decd8e07dad15f296c0adc2bc3a560f62d3de2eb\"\u003e\u003ccode\u003edecd8e0\u003c/code\u003e\u003c/a\u003e bindings/python: free-threaded Python (3.14t) support (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2041\"\u003e#2041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/3992692d483bf3177219b52cb101b1bb055c18e6\"\u003e\u003ccode\u003e3992692\u003c/code\u003e\u003c/a\u003e update for release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2033\"\u003e#2033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bcdd25b97fcd78549903082ecf3ddd87d42c456b\"\u003e\u003ccode\u003ebcdd25b\u003c/code\u003e\u003c/a\u003e BPE cache: per-thread read-through cache to avoid RwLock atomics on hits (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/618eb383f43e207139eb5cdb9bca17796b5e9bd7\"\u003e\u003ccode\u003e618eb38\u003c/code\u003e\u003c/a\u003e Bump follow-redirects in /tokenizers/examples/unstable_wasm/www (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2024\"\u003e#2024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b6b1688bef2e87efc91af18edf7ac38b4d2dfbe6\"\u003e\u003ccode\u003eb6b1688\u003c/code\u003e\u003c/a\u003e chore: bump doc-builder SHA for PR upload workflow (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2025\"\u003e#2025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/19015d6b44aa3896626de5092e4171aed1b56d5b\"\u003e\u003ccode\u003e19015d6\u003c/code\u003e\u003c/a\u003e fix: use uvx --with cairosvg instead of uv pip install --system (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2021\"\u003e#2021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/efbcc68e321c364c8f9541f1c93a158df54d7da4\"\u003e\u003ccode\u003eefbcc68\u003c/code\u003e\u003c/a\u003e Ci benchmarks (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2019\"\u003e#2019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `fastapi` from 0.136.3 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15093\"\u003e#15093\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.10\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling sequences with nested Annotated types. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14874\"\u003e#14874\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Accept any base test failure as regression. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16092\"\u003e#16092\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Preserve pytest exit code in regression check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16091\"\u003e#16091\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Test PR regressions against base code. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16090\"\u003e#16090\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.9\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eexclude_defaults\u003c/code\u003e not propagated to dict keys and values in \u003ccode\u003ejsonable_encoder\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16043\"\u003e#16043\u003c/a\u003e by \u003ca href=\"https://github.com/MBGrao\"\u003e\u003ccode\u003e@​MBGrao\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\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/fastapi/fastapi/commit/95f8322ee1dcda7ceace7b1c4f6c9915b36d748f\"\u003e\u003ccode\u003e95f8322\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16106\"\u003e#16106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f137944c435cff4e4b30ea7d12855ea88ddb868c\"\u003e\u003ccode\u003ef137944\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d62354434b2e508fe89024213b220ca8e67dea5e\"\u003e\u003ccode\u003ed623544\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for background tasks and headers from dependencies in `app.fron...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fast...\n\n_Description has been truncated_","html_url":"https://github.com/yhfgyyf/vllm-GLM-5.3-Flash-sm120/pull/15","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/yhfgyyf%2Fvllm-GLM-5.3-Flash-sm120/issues/15","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/15/packages"},{"uuid":"5345626334","node_id":"PR_kwDOTLZMFM8AAAABCKrS0g","number":393,"state":"open","title":"chore(deps): bump huggingface-hub from 1.25.1 to 1.29.0","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-04T07:46:19.000Z","updated_at":"2026-09-04T22:04:07.435Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"huggingface-hub","old_version":"1.25.1","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"}],"path":null,"ecosystem":"pip"},"body":"Bumps [huggingface-hub](https://github.com/huggingface/huggingface_hub) from 1.25.1 to 1.29.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.25.1...v1.29.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=huggingface-hub\u0026package-manager=pip\u0026previous-version=1.25.1\u0026new-version=1.29.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e\n\n\u003c!-- This is an auto-generated comment: release notes by coderabbit.ai --\u003e\n\n## Summary by CodeRabbit\n\n* **Chores**\n  * Updated the Hugging Face Hub package used by the Power Suite GUI to version 1.29.0.\n  * Updated the Web Profile B runtime to Hugging Face Hub version 1.29.0, including refreshed package verification hashes.\n\n\u003c!-- end of auto-generated comment: release notes by coderabbit.ai --\u003e","html_url":"https://github.com/weby-homelab/power-framework/pull/393","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/weby-homelab%2Fpower-framework/issues/393","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/393/packages"},{"uuid":"5343417516","node_id":"PR_kwDOToXI7s8AAAABCI8HDw","number":20,"state":"open","title":"Bump the minor-update group across 1 directory with 187 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-04T02:14:11.000Z","updated_at":"2026-09-04T02:14:28.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-update","update_count":187,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"transformers","old_version":"5.14.1","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.1","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"fastapi","old_version":"0.136.3","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"starlette","old_version":"1.3.1","new_version":"1.6.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"prometheus-fastapi-instrumentator","old_version":"8.0.2","new_version":"8.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"pyzmq","old_version":"27.1.0","new_version":"27.2.0","repository_url":"https://github.com/zeromq/pyzmq"},{"name":"python-json-logger","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"pybase64","old_version":"1.4.3","new_version":"1.5.0","repository_url":"https://github.com/mayeut/pybase64"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions-ai","old_version":"0.4.13","new_version":"0.5.1"},{"name":"tpu-inference","old_version":"0.25.0","new_version":"0.28.0","repository_url":"https://github.com/vllm-project/tpu-inference"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"peft","old_version":"0.19.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"idna","old_version":"3.10","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.5","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.5","repository_url":"https://github.com/astral-sh/ruff"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"bitsandbytes","old_version":"0.49.2","new_version":"0.50.2","repository_url":"https://github.com/bitsandbytes-foundation/bitsandbytes"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.85","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.85","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"cohere-melody","old_version":"0.9.0","new_version":"0.13.4","repository_url":"https://github.com/cohere-ai/melody"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.0","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.3.0","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.0","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi-cloud-cli","old_version":"0.21.0","new_version":"0.24.0","repository_url":"https://github.com/fastapilabs/fastapi-cloud-cli"},{"name":"fastar","old_version":"0.11.0","new_version":"0.12.0","repository_url":"https://github.com/DoctorJohn/fastar"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"h11","old_version":"0.14.0","new_version":"0.16.0","repository_url":"https://github.com/python-hyper/h11"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"hf-xet","old_version":"1.5.1","new_version":"1.6.0","repository_url":"https://github.com/huggingface/xet-core"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"huggingface-hub","old_version":"1.22.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.15.0","new_version":"0.16.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema-rs","old_version":"0.46.5","new_version":"0.52.1","repository_url":"https://github.com/Stranger6667/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llguidance","old_version":"1.7.6","new_version":"1.8.0","repository_url":"https://github.com/microsoft/llguidance"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.1.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.20.0.48","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.1","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.29.7","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pydantic-settings","old_version":"2.14.2","new_version":"2.15.0","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pyrate-limiter","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/vutran1710/PyrateLimiter"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"rignore","old_version":"0.7.6","new_version":"0.8.1"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"schemathesis","old_version":"4.21.6","new_version":"4.25.2","repository_url":"https://github.com/schemathesis/schemathesis"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"sentry-sdk","old_version":"2.63.0","new_version":"2.68.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"torchcodec","old_version":"0.14.0+cu130","new_version":"0.16.0","repository_url":"https://github.com/pytorch/torchcodec"},{"name":"triton","old_version":"3.7.1","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.26.8","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.1","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"auto-round-lib","old_version":"0.14.2","new_version":"0.15.0","repository_url":"https://github.com/intel/auto-round"},{"name":"pynvvideocodec","old_version":"2.0.4","new_version":"2.2.2"},{"name":"nvidia-cutlass-dsl","old_version":"4.6.0","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.8","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"zentorch","old_version":"2.11.0.0","new_version":"2.13.0.0","repository_url":"https://github.com/amd/ZenDNN-pytorch-plugin"},{"name":"helion","old_version":"1.1.0","new_version":"1.4.0","repository_url":"https://github.com/pytorch/helion"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 187 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [transformers](https://github.com/huggingface/transformers) | `5.14.1` | `5.16.1` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.1` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.136.3` | `0.141.1` |\n| [starlette](https://github.com/Kludex/starlette) | `1.3.1` | `1.6.0` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `8.0.2` | `8.1.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [pyzmq](https://github.com/zeromq/pyzmq) | `27.1.0` | `27.2.0` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `4.1.0` | `4.2.0` |\n| [pybase64](https://github.com/mayeut/pybase64) | `1.4.3` | `1.5.0` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| opentelemetry-semantic-conventions-ai | `0.4.13` | `0.5.1` |\n| [tpu-inference](https://github.com/vllm-project/tpu-inference) | `0.25.0` | `0.28.0` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [peft](https://github.com/huggingface/peft) | `0.19.1` | `0.20.0` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.19` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.5` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.5` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [bitsandbytes](https://github.com/bitsandbytes-foundation/bitsandbytes) | `0.49.2` | `0.50.2` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.85` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.85` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [cohere-melody](https://github.com/cohere-ai/melody) | `0.9.0` | `0.13.4` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.0` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.3.0` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.0` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi-cloud-cli](https://github.com/fastapilabs/fastapi-cloud-cli) | `0.21.0` | `0.24.0` |\n| [fastar](https://github.com/DoctorJohn/fastar) | `0.11.0` | `0.12.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [hf-xet](https://github.com/huggingface/xet-core) | `1.5.1` | `1.6.0` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.22.0` | `1.29.0` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.15.0` | `0.16.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonschema-rs](https://github.com/Stranger6667/jsonschema) | `0.46.5` | `0.52.1` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llguidance](https://github.com/microsoft/llguidance) | `1.7.6` | `1.8.0` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.1.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.20.0.48` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.1` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.29.7` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.14.2` | `2.15.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pyrate-limiter](https://github.com/vutran1710/PyrateLimiter) | `4.4.0` | `4.5.0` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| rignore | `0.7.6` | `0.8.1` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [schemathesis](https://github.com/schemathesis/schemathesis) | `4.21.6` | `4.25.2` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.63.0` | `2.68.1` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [torchcodec](https://github.com/pytorch/torchcodec) | `0.14.0+cu130` | `0.16.0` |\n| [triton](https://github.com/triton-lang/triton) | `3.7.1` | `3.8.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.26.8` | `0.27.2` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.1` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [auto-round-lib](https://github.com/intel/auto-round) | `0.14.2` | `0.15.0` |\n| pynvvideocodec | `2.0.4` | `2.2.2` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.6.0` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.8` | `0.2.6` |\n| [zentorch](https://github.com/amd/ZenDNN-pytorch-plugin) | `2.11.0.0` | `2.13.0.0` |\n| [helion](https://github.com/pytorch/helion) | `1.1.0` | `1.4.0` |\n\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 5.14.1 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\n\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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.14.1...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e⚡ Performance — measured locally on this Mac, not lifted from PRs\u003c/h2\u003e\n\u003cp\u003eRun with \u003ccode\u003ecargo bench --bench \u0026lt;name\u0026gt; -- --save-baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.22.2\u003c/code\u003e, then \u003ccode\u003e--baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.23.1\u003c/code\u003e. Numbers are point-in-time wall clock on a single laptop; relative deltas are what matters, absolute numbers will differ on CI hardware.\u003c/p\u003e\n\u003ch3\u003eAdded-vocabulary deserialize — the headline win (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1999\"\u003e#1999\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003e\u003ccode\u003ebench: improve added_vocab_deserialize to reflect real-world workloads\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2000\"\u003e#2000\u003c/a\u003e) is now representative of how transformers actually loads tokenizer.json files. The combined effect of \u003ccode\u003edaachorse\u003c/code\u003e for the matching automaton plus the normalize-on-insert refactor is enormous on this workload:\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~410 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e248 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.1 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e273 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~395 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e235 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.4 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e290 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e400k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~15 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e980 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−94%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eReal-world impact: loading a Llama-3-style tokenizer with a large set of added tokens dropped from \u0026quot;noticeable pause\u0026quot; to \u0026quot;instant\u0026quot;.\u003c/p\u003e\n\u003ch3\u003eBPE encode\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch, no cache\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e530 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e446 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−16%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch\u003c/code\u003e (cached)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e690 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e685 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode\u003c/code\u003e (single)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.95 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.94 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (small)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e32.6 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e31.5 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−3%\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (big)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.01 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e988 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−2%\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eThe BPE per-thread cache PR (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e) shows much larger wins on highly-parallel workloads (+47–62% at 88+ threads on a server box, per the PR's own measurements on Vera). Single-thread batch numbers above are flat or slightly improved because cache-hit overhead was already low without contention.\u003c/p\u003e\n\u003ch3\u003eLlama-3 encode\u003c/h3\u003e\n\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/huggingface/tokenizers/commit/7f1623b90b5adfb9bc327d4c3468d2f70bbce262\"\u003e\u003ccode\u003e7f1623b\u003c/code\u003e\u003c/a\u003e Bump version to 0.23.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bbe43ad73d8fc8932b9d0e657ddee3cd70c649a4\"\u003e\u003ccode\u003ebbe43ad\u003c/code\u003e\u003c/a\u003e ci: release workflow fixes (node + python) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2043\"\u003e#2043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/ab0c5d8fc13eb1c5001d9c06806635e2b5a42e9f\"\u003e\u003ccode\u003eab0c5d8\u003c/code\u003e\u003c/a\u003e Fix node release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2034\"\u003e#2034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/decd8e07dad15f296c0adc2bc3a560f62d3de2eb\"\u003e\u003ccode\u003edecd8e0\u003c/code\u003e\u003c/a\u003e bindings/python: free-threaded Python (3.14t) support (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2041\"\u003e#2041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/3992692d483bf3177219b52cb101b1bb055c18e6\"\u003e\u003ccode\u003e3992692\u003c/code\u003e\u003c/a\u003e update for release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2033\"\u003e#2033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bcdd25b97fcd78549903082ecf3ddd87d42c456b\"\u003e\u003ccode\u003ebcdd25b\u003c/code\u003e\u003c/a\u003e BPE cache: per-thread read-through cache to avoid RwLock atomics on hits (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/618eb383f43e207139eb5cdb9bca17796b5e9bd7\"\u003e\u003ccode\u003e618eb38\u003c/code\u003e\u003c/a\u003e Bump follow-redirects in /tokenizers/examples/unstable_wasm/www (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2024\"\u003e#2024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b6b1688bef2e87efc91af18edf7ac38b4d2dfbe6\"\u003e\u003ccode\u003eb6b1688\u003c/code\u003e\u003c/a\u003e chore: bump doc-builder SHA for PR upload workflow (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2025\"\u003e#2025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/19015d6b44aa3896626de5092e4171aed1b56d5b\"\u003e\u003ccode\u003e19015d6\u003c/code\u003e\u003c/a\u003e fix: use uvx --with cairosvg instead of uv pip install --system (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2021\"\u003e#2021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/efbcc68e321c364c8f9541f1c93a158df54d7da4\"\u003e\u003ccode\u003eefbcc68\u003c/code\u003e\u003c/a\u003e Ci benchmarks (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2019\"\u003e#2019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `fastapi` from 0.136.3 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15093\"\u003e#15093\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.10\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling sequences with nested Annotated types. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14874\"\u003e#14874\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Accept any base test failure as regression. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16092\"\u003e#16092\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Preserve pytest exit code in regression check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16091\"\u003e#16091\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Test PR regressions against base code. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16090\"\u003e#16090\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.9\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eexclude_defaults\u003c/code\u003e not propagated to dict keys and values in \u003ccode\u003ejsonable_encoder\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16043\"\u003e#16043\u003c/a\u003e by \u003ca href=\"https://github.com/MBGrao\"\u003e\u003ccode\u003e@​MBGrao\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\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/fastapi/fastapi/commit/95f8322ee1dcda7ceace7b1c4f6c9915b36d748f\"\u003e\u003ccode\u003e95f8322\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16106\"\u003e#16106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f137944c435cff4e4b30ea7d12855ea88ddb868c\"\u003e\u003ccode\u003ef137944\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d62354434b2e508fe89024213b220ca8e67dea5e\"\u003e\u003ccode\u003ed623544\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for background tasks and headers from dependencies in `app.fron...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1d211b9c1009d577f39fa2b19b10d9a93a72a0ed\"\u003e\u003ccode\u003e1d211b9\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8a1f8768411e62093e70ce142ea10863a485643c\"\u003e\u003ccode\u003e8a1f876\u003c/code\u003e\u003c/a\u003e 📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16104\"\u003e#16104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c7e7b651d6946c07cc9f675f39c9501d08319e57\"\u003e\u003ccode\u003ec7e7b65\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.0 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16103\"\u003e#16103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/6bceb84053eb2405e9c000aad30ea13367b5ee32\"\u003e\u003ccode\u003e6bceb84\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/5429fed84e84e32672c25a953eca3429b841ce90\"\u003e\u003ccode\u003e5429fed\u003c/code\u003e\u003c/a\u003e ✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more conven...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/628663f4f899c465da423bce681c7adf9a218948\"\u003e\u003ccode\u003e628663f\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.140.13 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16096\"\u003e#16096\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/0b54fd00273019034dd30b120ac842e65d80690e\"\u003e\u003ccode\u003e0b54fd0\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.136.3...0.141.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `starlette` from 1.3.1 to 1.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kludex/starlette/releases\"\u003estarlette's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.6.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003emax_body_size\u003c/code\u003e to \u003ccode\u003eStarlette\u003c/code\u003e and route classes by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3431\"\u003eKludex/starlette#3431\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ehttp.response.debug\u003c/code\u003e info via response extensions by \u003ca href=\"https://github.com/y2kbugger\"\u003e\u003ccode\u003e@​y2kbugger\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3130\"\u003eKludex/starlette#3130\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/y2kbugger\"\u003e\u003ccode\u003e@​y2kbugger\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3130\"\u003eKludex/starlette#3130\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/starlette/compare/1.5.1...1.6.0\"\u003ehttps://github.com/Kludex/starlette/compare/1.5.1...1.6.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.5.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eReject inverted single-byte Range like \u003ccode\u003ebytes=5-4\u003c/code\u003e by \u003ca href=\"https://github.com/nikolauspschuetz\"\u003e\u003ccode\u003e@​nikolauspschuetz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3389\"\u003eencode/starlette#3389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLimit \u003ccode\u003eFileResponse\u003c/code\u003e to 100 ranges by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3430\"\u003eencode/starlette#3430\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/encode/starlette/compare/1.5.0...1.5.1\"\u003ehttps://github.com/encode/starlette/compare/1.5.0...1.5.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.5.0\u003c/h2\u003e\n\u003cp\u003eThis release is all about giving \u003ccode\u003eGZipMiddleware\u003c/code\u003e some love. 🗜️\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eexclude_content_types\u003c/code\u003e parameter to \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3418\"\u003eencode/starlette#3418\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlush GZip output for each streamed chunk by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3419\"\u003eencode/starlette#3419\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSkip compression of partial responses in \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3420\"\u003eencode/starlette#3420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpand default excluded content types in \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3421\"\u003eencode/starlette#3421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/encode/starlette/compare/1.4.1...1.5.0\"\u003ehttps://github.com/encode/starlette/compare/1.4.1...1.5.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.4.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault \u003ccode\u003ethread_minimum_size\u003c/code\u003e in \u003ccode\u003eGZipResponder\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3415\"\u003eKludex/starlette#3415\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/starlette/compare/1.4.0...1.4.1\"\u003ehttps://github.com/Kludex/starlette/compare/1.4.0...1.4.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLazily allocate GZipMiddleware compression resources by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3407\"\u003eKludex/starlette#3407\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003ezlib.compressobj\u003c/code\u003e instead of \u003ccode\u003eGzipFile\u003c/code\u003e in \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3411\"\u003eKludex/starlette#3411\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOffload large GZip compression by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3410\"\u003eKludex/starlette#3410\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/benberryallwood\"\u003e\u003ccode\u003e@​benberryallwood\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3334\"\u003eKludex/starlette#3334\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lkk7\"\u003e\u003ccode\u003e@​lkk7\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3359\"\u003eKludex/starlette#3359\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/starlette/compare/1.3.1...1.4.0\"\u003ehttps://github.com/Kludex/starlette/compare/1.3.1...1.4.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kludex/starlette/blob/main/docs/release-notes.md\"\u003estarlette's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.6.0 (August 8, 2026)\u003c/h2\u003e\n\u003ch4\u003eAdded\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003emax_body_size\u003c/code\u003e to \u003ccode\u003eStarlette\u003c/code\u003e and route classes \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3431\"\u003e#3431\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ehttp.response.debug\u003c/code\u003e information via response extensions \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3130\"\u003e#3130\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.1 (August 8, 2026)\u003c/h2\u003e\n\u003ch4\u003eFixed\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eReject inverted single-byte ranges in \u003ccode\u003eFileResponse\u003c/code\u003e \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3389\"\u003e#3389\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLimit \u003ccode\u003eFileResponse\u003c/code\u003e to 100 ranges \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3430\"\u003e#3430\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.0 (August 8, 2026)\u003c/h2\u003e\n\u003ch4\u003eAdded\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eexclude_content_types\u003c/code\u003e parameter to \u003ccode\u003eGZipMiddleware\u003c/code\u003e \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3418\"\u003e#3418\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanged\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eExpand default excluded content types in \u003ccode\u003eGZipMiddleware\u003c/c...\n\n_Description has been truncated_","html_url":"https://github.com/btlqql/vllm-rwkv7/pull/20","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/btlqql%2Fvllm-rwkv7/issues/20","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/20/packages"},{"uuid":"5343191056","node_id":"PR_kwDOTbO7F88AAAABCIxLYA","number":18,"state":"open","title":"Bump the minor-update group across 1 directory with 172 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-04T01:36:37.000Z","updated_at":"2026-09-04T01:36:48.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-update","update_count":172,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"transformers","old_version":"5.5.3","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.1","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"safetensors","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/huggingface/safetensors"},{"name":"fastapi","old_version":"0.128.0","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"tpu-inference","old_version":"0.20.0","new_version":"0.28.0","repository_url":"https://github.com/vllm-project/tpu-inference"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"peft","old_version":"0.18.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.1.7","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"idna","old_version":"3.10","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.5","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.5","repository_url":"https://github.com/astral-sh/ruff"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"anyio","old_version":"4.6.2.post1","new_version":"4.14.2","repository_url":"https://github.com/agronholm/anyio"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"arrow","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/arrow-py/arrow"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"bitsandbytes","old_version":"0.49.2","new_version":"0.50.2","repository_url":"https://github.com/bitsandbytes-foundation/bitsandbytes"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.85","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.85","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.0","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.2","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.0","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastsafetensors","old_version":"0.2.2","new_version":"0.3.3","repository_url":"https://github.com/foundation-model-stack/fastsafetensors"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"h11","old_version":"0.14.0","new_version":"0.16.0","repository_url":"https://github.com/python-hyper/h11"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"harfile","old_version":"0.3.0","new_version":"0.5.0","repository_url":"https://github.com/schemathesis/harfile"},{"name":"hf-xet","old_version":"1.4.3","new_version":"1.6.0","repository_url":"https://github.com/huggingface/xet-core"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"huggingface-hub","old_version":"1.10.2","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"hypothesis-graphql","old_version":"0.11.1","new_version":"0.13.1","repository_url":"https://github.com/Stranger6667/hypothesis-graphql"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonpointer","old_version":"3.0.0","new_version":"3.1.1","repository_url":"https://github.com/stefankoegl/python-json-pointer"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.0.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.19.0.56","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.0","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.28.9","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-subtests","old_version":"0.14.1","new_version":"0.15.0","repository_url":"https://github.com/pytest-dev/pytest-subtests"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"tomli","old_version":"2.2.1","new_version":"2.4.1","repository_url":"https://github.com/hukkin/tomli"},{"name":"triton","old_version":"3.6.0","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.15.2","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.1","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"nvidia-cutlass-dsl","old_version":"4.5.2","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.2","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"zentorch","old_version":"2.11.0.0","new_version":"2.13.0.0","repository_url":"https://github.com/amd/ZenDNN-pytorch-plugin"},{"name":"helion","old_version":"1.0.0","new_version":"1.4.0","repository_url":"https://github.com/pytorch/helion"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 172 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [transformers](https://github.com/huggingface/transformers) | `5.5.3` | `5.16.1` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.1` |\n| [safetensors](https://github.com/huggingface/safetensors) | `0.7.0` | `0.8.0` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.128.0` | `0.141.1` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [tpu-inference](https://github.com/vllm-project/tpu-inference) | `0.20.0` | `0.28.0` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [peft](https://github.com/huggingface/peft) | `0.18.1` | `0.20.0` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.1.7` | `8.5.0` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.19` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.5` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.5` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| [anyio](https://github.com/agronholm/anyio) | `4.6.2.post1` | `4.14.2` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [arrow](https://github.com/arrow-py/arrow) | `1.3.0` | `1.4.0` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [bitsandbytes](https://github.com/bitsandbytes-foundation/bitsandbytes) | `0.49.2` | `0.50.2` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.85` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.85` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.0` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.2` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.0` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastsafetensors](https://github.com/foundation-model-stack/fastsafetensors) | `0.2.2` | `0.3.3` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [harfile](https://github.com/schemathesis/harfile) | `0.3.0` | `0.5.0` |\n| [hf-xet](https://github.com/huggingface/xet-core) | `1.4.3` | `1.6.0` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.10.2` | `1.29.0` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [hypothesis-graphql](https://github.com/Stranger6667/hypothesis-graphql) | `0.11.1` | `0.13.1` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonpointer](https://github.com/stefankoegl/python-json-pointer) | `3.0.0` | `3.1.1` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.0.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.19.0.56` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.0` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.28.9` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-subtests](https://github.com/pytest-dev/pytest-subtests) | `0.14.1` | `0.15.0` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [tomli](https://github.com/hukkin/tomli) | `2.2.1` | `2.4.1` |\n| [triton](https://github.com/triton-lang/triton) | `3.6.0` | `3.8.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.15.2` | `0.27.2` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.1` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.5.2` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.2` | `0.2.6` |\n| [zentorch](https://github.com/amd/ZenDNN-pytorch-plugin) | `2.11.0.0` | `2.13.0.0` |\n| [helion](https://github.com/pytorch/helion) | `1.0.0` | `1.4.0` |\n\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 5.5.3 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\n\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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.5.3...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e⚡ Performance — measured locally on this Mac, not lifted from PRs\u003c/h2\u003e\n\u003cp\u003eRun with \u003ccode\u003ecargo bench --bench \u0026lt;name\u0026gt; -- --save-baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.22.2\u003c/code\u003e, then \u003ccode\u003e--baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.23.1\u003c/code\u003e. Numbers are point-in-time wall clock on a single laptop; relative deltas are what matters, absolute numbers will differ on CI hardware.\u003c/p\u003e\n\u003ch3\u003eAdded-vocabulary deserialize — the headline win (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1999\"\u003e#1999\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003e\u003ccode\u003ebench: improve added_vocab_deserialize to reflect real-world workloads\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2000\"\u003e#2000\u003c/a\u003e) is now representative of how transformers actually loads tokenizer.json files. The combined effect of \u003ccode\u003edaachorse\u003c/code\u003e for the matching automaton plus the normalize-on-insert refactor is enormous on this workload:\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~410 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e248 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.1 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e273 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~395 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e235 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.4 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e290 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e400k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~15 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e980 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−94%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eReal-world impact: loading a Llama-3-style tokenizer with a large set of added tokens dropped from \u0026quot;noticeable pause\u0026quot; to \u0026quot;instant\u0026quot;.\u003c/p\u003e\n\u003ch3\u003eBPE encode\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch, no cache\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e530 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e446 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−16%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch\u003c/code\u003e (cached)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e690 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e685 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode\u003c/code\u003e (single)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.95 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.94 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (small)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e32.6 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e31.5 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−3%\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (big)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.01 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e988 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−2%\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eThe BPE per-thread cache PR (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e) shows much larger wins on highly-parallel workloads (+47–62% at 88+ threads on a server box, per the PR's own measurements on Vera). Single-thread batch numbers above are flat or slightly improved because cache-hit overhead was already low without contention.\u003c/p\u003e\n\u003ch3\u003eLlama-3 encode\u003c/h3\u003e\n\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/huggingface/tokenizers/commit/7f1623b90b5adfb9bc327d4c3468d2f70bbce262\"\u003e\u003ccode\u003e7f1623b\u003c/code\u003e\u003c/a\u003e Bump version to 0.23.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bbe43ad73d8fc8932b9d0e657ddee3cd70c649a4\"\u003e\u003ccode\u003ebbe43ad\u003c/code\u003e\u003c/a\u003e ci: release workflow fixes (node + python) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2043\"\u003e#2043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/ab0c5d8fc13eb1c5001d9c06806635e2b5a42e9f\"\u003e\u003ccode\u003eab0c5d8\u003c/code\u003e\u003c/a\u003e Fix node release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2034\"\u003e#2034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/decd8e07dad15f296c0adc2bc3a560f62d3de2eb\"\u003e\u003ccode\u003edecd8e0\u003c/code\u003e\u003c/a\u003e bindings/python: free-threaded Python (3.14t) support (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2041\"\u003e#2041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/3992692d483bf3177219b52cb101b1bb055c18e6\"\u003e\u003ccode\u003e3992692\u003c/code\u003e\u003c/a\u003e update for release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2033\"\u003e#2033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bcdd25b97fcd78549903082ecf3ddd87d42c456b\"\u003e\u003ccode\u003ebcdd25b\u003c/code\u003e\u003c/a\u003e BPE cache: per-thread read-through cache to avoid RwLock atomics on hits (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/618eb383f43e207139eb5cdb9bca17796b5e9bd7\"\u003e\u003ccode\u003e618eb38\u003c/code\u003e\u003c/a\u003e Bump follow-redirects in /tokenizers/examples/unstable_wasm/www (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2024\"\u003e#2024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b6b1688bef2e87efc91af18edf7ac38b4d2dfbe6\"\u003e\u003ccode\u003eb6b1688\u003c/code\u003e\u003c/a\u003e chore: bump doc-builder SHA for PR upload workflow (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2025\"\u003e#2025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/19015d6b44aa3896626de5092e4171aed1b56d5b\"\u003e\u003ccode\u003e19015d6\u003c/code\u003e\u003c/a\u003e fix: use uvx --with cairosvg instead of uv pip install --system (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2021\"\u003e#2021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/efbcc68e321c364c8f9541f1c93a158df54d7da4\"\u003e\u003ccode\u003eefbcc68\u003c/code\u003e\u003c/a\u003e Ci benchmarks (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2019\"\u003e#2019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `safetensors` from 0.7.0 to 0.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/safetensors/releases\"\u003esafetensors's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.8.0\u003c/h2\u003e\n\u003ch2\u003eNews\u003c/h2\u003e\n\u003cp\u003esafetensors joins the PyTorch foundation!\u003c/p\u003e\n\n\u003cp\u003eRead more on that: \u003ca href=\"https://huggingface.co/blog/safetensors-joins-pytorch-foundation\"\u003ehttps://huggingface.co/blog/safetensors-joins-pytorch-foundation\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eWhat's changed\u003c/h2\u003e\n\u003cp\u003eSafetensors 0.8.0 brings direct to Metal loading on Apple Silicon, GIL-free serialization, broader hardware and dtype coverage, and a stronger Python API.\u003c/p\u003e\n\u003ch3\u003eBreaking\u003c/h3\u003e\n\u003cp\u003eThe \u003ccode\u003eserialize\u003c/code\u003e and \u003ccode\u003eserialize_file\u003c/code\u003e functions now release the GIL during writes, enabling true multithreaded saves from Python. Their input contract has also changed: tensor metadata is now passed via a \u003ccode\u003eTensorSpec\u003c/code\u003e class (exported from safetensors) instead of plain dicts, making API more explicit and robust to misinputs. This is a breaking change for anyone calling the low-level \u003ccode\u003eserialize\u003c/code\u003e / \u003ccode\u003eserialize_file\u003c/code\u003e API directly; the high-level wrappers (\u003ccode\u003esafetensors.torch\u003c/code\u003e, \u003ccode\u003esafetensors.numpy\u003c/code\u003e, \u003ccode\u003esafetensors.paddle\u003c/code\u003e) are updated internally and their public API is unchanged.\u003c/p\u003e\n\u003cp\u003eThe minimum supported Python version is now 3.10 (was 3.9). Python 3.9 reached end-of-life in October 2025.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eTensorIndexer::Narrow\u003c/code\u003e now carries a \u003ccode\u003estep: NonZeroUsize\u003c/code\u003e parameter, so a slice is now \u003ccode\u003estart:stop:step\u003c/code\u003e. This is a fix as this silent error was hidden behind the \u003ccode\u003eStorage::Torch\u003c/code\u003e variant which offloaded slicing logic to torch directly.\u003c/p\u003e\n\u003ch3\u003eCI\u003c/h3\u003e\n\u003cp\u003eOn the platform side, this release adds Windows ARM64 wheel builds, riscv64 Linux wheels, and CI has been hardened with pinned GitHub Actions SHAs.\u003c/p\u003e\n\u003cp\u003eAlso dropped the anaconda CI we had as there's already an automatic tracker via conda-forge.\u003c/p\u003e\n\u003ch3\u003eNew features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDirect MPS load on Apple Silicon: tensors are directly loaded in an \u003ccode\u003eMTLBuffer\u003c/code\u003e and handed to the frameworks that support it (only torch atm) via DLPack, skipping needless copies.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003ebackend\u003c/code\u003e parameter introduced, for the addition of the \u003ccode\u003epread\u003c/code\u003e backend. We now support loading files via \u003ccode\u003epread(2)\u003c/code\u003e syscall instead of just mmap. Useful for specific archs/platforms.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eget_slice\u003c/code\u003e now handles ellipsis \u003ccode\u003e[...]\u003c/code\u003e and strided slices \u003ccode\u003e[:, ::8]\u003c/code\u003e wherever safetensors does the slicing itself (\u003ccode\u003epread\u003c/code\u003e for any framework, MPS, and \u003ccode\u003emmap\u003c/code\u003e outside torch/paddle), which silently dropped the step or rejected \u003ccode\u003e...\u003c/code\u003e before.\u003c/li\u003e\n\u003cli\u003eMUSA device support for MooreThreads GPUs.\u003c/li\u003e\n\u003cli\u003eNew dtype support includes \u003ccode\u003efloat8_e4m3fnuz\u003c/code\u003e and \u003ccode\u003efloat8_e5m2fnuz\u003c/code\u003e (AMD FNUZ FP8 formats).\u003c/li\u003e\n\u003cli\u003eThe reader is now explicitly lenient about leading whitespace in the JSON header, which keeps the door open for future page-aligned writes.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements/perf\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFile writes on macOS now use \u003ccode\u003eF_NOCACHE\u003c/code\u003e for direct I/O, yielding roughly 30% faster \u003ccode\u003esave_file\u003c/code\u003e on Apple Silicon.\u003c/li\u003e\n\u003cli\u003eThe packaging dependency has been dropped from the \u003ccode\u003e[torch]\u003c/code\u003e extra, replaced by a simple \u003ccode\u003ehasattr\u003c/code\u003e probe for efficiency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd arm64 windows support by \u003ca href=\"https://github.com/finnagin\"\u003e\u003ccode\u003e@​finnagin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/678\"\u003esafetensors/safetensors#678\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(backend): support musa backend for MooreThreads GPU by \u003ca href=\"https://github.com/caizhi-mt\"\u003e\u003ccode\u003e@​caizhi-mt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/671\"\u003esafetensors/safetensors#671\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd gil free serialize_file(serialize_file_threadable) by \u003ca href=\"https://github.com/TomQunChao\"\u003e\u003ccode\u003e@​TomQunChao\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/679\"\u003esafetensors/safetensors#679\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: remove outdated comment by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/685\"\u003esafetensors/safetensors#685\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add direct io write fast path on macos by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/687\"\u003esafetensors/safetensors#687\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: keep dropped reference to tensor moved from gpu to cpu by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/689\"\u003esafetensors/safetensors#689\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: bump torch to \u003ccode\u003e2.4\u003c/code\u003e by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/710\"\u003esafetensors/safetensors#710\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eContribution guide security by \u003ca href=\"https://github.com/LysandreJik\"\u003e\u003ccode\u003e@​LysandreJik\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/712\"\u003esafetensors/safetensors#712\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\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/safetensors/safetensors/blob/main/RELEASE.md\"\u003esafetensors's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e0.8.0-dev.0 → 0.8.0\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\nUpdate lockfiles again:\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003ecargo check\ncd bindings/python \u0026amp;amp;\u0026amp;amp; uv lock\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;p\u0026gt;Commit:\u0026lt;/p\u0026gt;\n\u0026lt;pre\u0026gt;\u0026lt;code\u0026gt;Set version to 0.8.0\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;p\u0026gt;The Python version is not set in \u0026lt;code\u0026gt;pyproject.toml\u0026lt;/code\u0026gt; directly — maturin reads it from \u0026lt;code\u0026gt;bindings/python/Cargo.toml\u0026lt;/code\u0026gt; at build time.\u0026lt;/p\u0026gt;\n\u0026lt;h3\u0026gt;4. Create the release on GitHub\u0026lt;/h3\u0026gt;\n\u0026lt;p\u0026gt;Go to the \u0026lt;a href=\u0026quot;https://github.com/huggingface/safetensors/releases\u0026quot;\u0026gt;GitHub Releases page\u0026lt;/a\u0026gt; and draft a new release:\u0026lt;/p\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;strong\u0026gt;Choose the release branch\u0026lt;/strong\u0026gt; (e.g. \u0026lt;code\u0026gt;git_v0.8.0\u0026lt;/code\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;strong\u0026gt;Create a new tag\u0026lt;/strong\u0026gt; on publish: \u0026lt;code\u0026gt;v0.8.0\u0026lt;/code\u0026gt;\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;strong\u0026gt;Generate release notes\u0026lt;/strong\u0026gt; from the previous tag (e.g. \u0026lt;code\u0026gt;v0.7.0\u0026lt;/code\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Add any notable highlights at the top of the generated notes\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;Structure for manual notes:\u0026lt;/p\u0026gt;\n\u0026lt;pre lang=\u0026quot;markdown\u0026quot;\u0026gt;\u0026lt;code\u0026gt;## Breaking changes\n- ...\n\n## New features\n- ...\n\n## Bug fixes\n- ...\n\n## Internal / CI\n- ...\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;p\u0026gt;Click \u0026lt;strong\u0026gt;Publish release\u0026lt;/strong\u0026gt;. This creates the tag, which triggers the three release workflows.\u0026lt;/p\u0026gt;\n\u0026lt;h3\u0026gt;5. Monitor the CI\u0026lt;/h3\u0026gt;\n\u0026lt;p\u0026gt;The tag triggers two workflow runs in the \u0026lt;a href=\u0026quot;https://github.com/huggingface/safetensors/actions\u0026quot;\u0026gt;Actions tab\u0026lt;/a\u0026gt;:\u0026lt;/p\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;strong\u0026gt;CI\u0026lt;/strong\u0026gt; (Python release) — builds wheels for every platform × Python version, uploads to PyPI. Can take up to over 30 minutes.\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;!-- raw HTML omitted --\u0026gt;\n\u0026lt;/blockquote\u0026gt;\n\u0026lt;p\u0026gt;... (truncated)\u0026lt;/p\u0026gt;\n\u0026lt;/details\u0026gt;\n\u0026lt;details\u0026gt;\n\u0026lt;summary\u0026gt;Commits\u0026lt;/summary\u0026gt;\n\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/a406ca3e7a90598be0cd05a50069cb9bf5ef6ba6\u0026quot;\u0026gt;\u0026lt;code\u0026gt;a406ca3\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix(release): move crates.io to trusted publisher OIDC\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/d0368d14c0a417fb2ca2a6627e9513d17f74f9b7\u0026quot;\u0026gt;\u0026lt;code\u0026gt;d0368d1\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; feat: \u0026lt;code\u0026gt;0.8.0\u0026lt;/code\u0026gt;\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/5ec3ec14c506d09598df6d96f36cd9a4ea94aafa\u0026quot;\u0026gt;\u0026lt;code\u0026gt;5ec3ec1\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix(release): move to pypi trusted publisher OIDC (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/778\u0026quot;\u0026gt;#778\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/e37dc536ce598ef1d71a9ad712987571f2f05808\u0026quot;\u0026gt;\u0026lt;code\u0026gt;e37dc53\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; feat: bump main to \u0026lt;code\u0026gt;0.9.0-dev.0\u0026lt;/code\u0026gt; (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/777\u0026quot;\u0026gt;#777\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/6e32aa7b029d323238233110c1cdecae22cbe564\u0026quot;\u0026gt;\u0026lt;code\u0026gt;6e32aa7\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; refactor: replace \u0026lt;code\u0026gt;_host_alias_storage\u0026lt;/code\u0026gt; w/ \u0026lt;code\u0026gt;MTLBuffer\u0026lt;/code\u0026gt; (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/767\u0026quot;\u0026gt;#767\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/24b0b2857fef49be734b9ab72ce97c09bb25f5b9\u0026quot;\u0026gt;\u0026lt;code\u0026gt;24b0b28\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix: write to tempfile + rename to preserve mmap source (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/764\u0026quot;\u0026gt;#764\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/73132135947275c5dda135438e4c2e4bd70a2b10\u0026quot;\u0026gt;\u0026lt;code\u0026gt;7313213\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Update free-threading tests for Python 3.14 (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/699\u0026quot;\u0026gt;#699\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/e9091e13ec359e9e5b8b45413fcbe340444dde1c\u0026quot;\u0026gt;\u0026lt;code\u0026gt;e9091e1\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; feat: add \u0026lt;code\u0026gt;backend\u0026lt;/code\u0026gt; with pread file (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/760\u0026quot;\u0026gt;#760\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/1b0fe9c6acf3ac2ec7f4a0fd13bccfc0b65ce765\u0026quot;\u0026gt;\u0026lt;code\u0026gt;1b0fe9c\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix(ci): security audit slack message format (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/757\u0026quot;\u0026gt;#757\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/7efac22872a53ae3b30a15f8e786404322f10458\u0026quot;\u0026gt;\u0026lt;code\u0026gt;7efac22\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; [MPS] Fast load of the tensors (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/756\u0026quot;\u0026gt;#756\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Additional commits viewable in \u0026lt;a href=\u0026quot;https://github.com/huggingface/safetensors/compare/v0.7.0...v0.8.0\u0026quot;\u0026gt;compare view\u0026lt;/a\u0026gt;\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;/details\u0026gt;\n\n\u0026lt;br /\u0026gt;\u003c/code\u003e\u003c/pre\u003e\n\nUpdates `fastapi` from 0.128.0 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"htt...\n\n_Description has been truncated_","html_url":"https://github.com/codecookinging/vllm_marlin/pull/18","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/codecookinging%2Fvllm_marlin/issues/18","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/18/packages"}],"issue_packages":[{"old_version":"1.29.0","new_version":"1.30.0","update_type":"minor","path":null,"pr_created_at":"2026-09-06T20:11:44.000Z","version_change":"1.29.0 → 1.30.0","issue":{"uuid":"5367383715","node_id":"PR_kwDORF79hc8AAAABCbhgig","number":1160,"state":"open","title":"chore(deps): bump the dependencies group with 6 updates","user":"dependabot[bot]","labels":["dependencies","python:uv"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-06T20:11:44.000Z","updated_at":"2026-09-06T20:16:31.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"dependencies","update_count":6,"packages":[{"name":"claude-agent-sdk","old_version":"0.2.147","new_version":"0.2.152","repository_url":"https://github.com/anthropics/claude-agent-sdk-python"},{"name":"anyio","old_version":"4.14.2","new_version":"4.15.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"pydantic","old_version":"2.13.4","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"tree-sitter","old_version":"0.25.2","new_version":"0.26.0","repository_url":"https://github.com/tree-sitter/py-tree-sitter"},{"name":"huggingface-hub","old_version":"1.29.0","new_version":"1.30.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"ruff","old_version":"0.16.5","new_version":"0.16.6","repository_url":"https://github.com/astral-sh/ruff"}],"path":null,"ecosystem":"pip"},"body":"Bumps the dependencies group with 6 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [claude-agent-sdk](https://github.com/anthropics/claude-agent-sdk-python) | `0.2.147` | `0.2.152` |\n| [anyio](https://github.com/agronholm/anyio) | `4.14.2` | `4.15.0` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.13.4` | `2.13.5` |\n| [tree-sitter](https://github.com/tree-sitter/py-tree-sitter) | `0.25.2` | `0.26.0` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.29.0` | `1.30.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.16.5` | `0.16.6` |\n\nUpdates `claude-agent-sdk` from 0.2.147 to 0.2.152\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/releases\"\u003eclaude-agent-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.2.152\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.259\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e\u003cstrong\u003ePyPI:\u003c/strong\u003e \u003ca href=\"https://pypi.org/project/claude-agent-sdk/0.2.152/\"\u003ehttps://pypi.org/project/claude-agent-sdk/0.2.152/\u003c/a\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003epip install claude-agent-sdk==0.2.152\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003ev0.2.151\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.258\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e\u003cstrong\u003ePyPI:\u003c/strong\u003e \u003ca href=\"https://pypi.org/project/claude-agent-sdk/0.2.151/\"\u003ehttps://pypi.org/project/claude-agent-sdk/0.2.151/\u003c/a\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003epip install claude-agent-sdk==0.2.151\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003ev0.2.150\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.257\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e\u003cstrong\u003ePyPI:\u003c/strong\u003e \u003ca href=\"https://pypi.org/project/claude-agent-sdk/0.2.150/\"\u003ehttps://pypi.org/project/claude-agent-sdk/0.2.150/\u003c/a\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003epip install claude-agent-sdk==0.2.150\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003ev0.2.149\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.252\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/claude-agent-sdk-python/blob/main/CHANGELOG.md\"\u003eclaude-agent-sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.2.152\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.259\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.151\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.258\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.150\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.257\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.149\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.252\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.148\u003c/h2\u003e\n\u003ch3\u003eInternal/Other Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated bundled Claude CLI to version 2.1.251\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/anthropics/claude-agent-sdk-python/commit/a8b1e285f97f8dbcb7b10226d74ba0d551b493f4\"\u003e\u003ccode\u003ea8b1e28\u003c/code\u003e\u003c/a\u003e docs: update changelog for v0.2.152\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/0b41fb4af7ac8765a842772c1e9e779e5e1765ac\"\u003e\u003ccode\u003e0b41fb4\u003c/code\u003e\u003c/a\u003e chore: release v0.2.152\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/ed1718fcc3731834f3da31721f523ee0da9ad995\"\u003e\u003ccode\u003eed1718f\u003c/code\u003e\u003c/a\u003e chore: bump bundled CLI version to 2.1.259\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/16606a32d26409de70abe424787a88bdb97a9324\"\u003e\u003ccode\u003e16606a3\u003c/code\u003e\u003c/a\u003e docs: update changelog for v0.2.151\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/dbe39981d3655c969a9fbdb3078b678875287b69\"\u003e\u003ccode\u003edbe3998\u003c/code\u003e\u003c/a\u003e chore: release v0.2.151\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/637906ece007b29a932822b7510555aca207f2ea\"\u003e\u003ccode\u003e637906e\u003c/code\u003e\u003c/a\u003e chore: bump bundled CLI version to 2.1.258\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/1539d2ab616e68615e1acd4f72981351919b0a85\"\u003e\u003ccode\u003e1539d2a\u003c/code\u003e\u003c/a\u003e docs: update changelog for v0.2.150\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/23ca647b5808727b80b4565b12490a96135e3849\"\u003e\u003ccode\u003e23ca647\u003c/code\u003e\u003c/a\u003e chore: release v0.2.150\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/036a35ac2cbd5d482655998ddc584624b32514c7\"\u003e\u003ccode\u003e036a35a\u003c/code\u003e\u003c/a\u003e chore: bump bundled CLI version to 2.1.257\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/commit/9597fc956a2a18ff8a6dc5675d9823b457e8264f\"\u003e\u003ccode\u003e9597fc9\u003c/code\u003e\u003c/a\u003e docs: update changelog for v0.2.149\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/anthropics/claude-agent-sdk-python/compare/v0.2.147...v0.2.152\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `anyio` from 4.14.2 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/agronholm/anyio/releases\"\u003eanyio's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.15.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded support for the newer keyword-only arguments on \u003ccode\u003eanyio.Path\u003c/code\u003e methods to match the standard library \u003ccode\u003epathlib.Path\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003efollow_symlinks\u003c/code\u003e on \u003ccode\u003eexists()\u003c/code\u003e (Python 3.12+)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efollow_symlinks\u003c/code\u003e on \u003ccode\u003eis_dir()\u003c/code\u003e (Python 3.13+)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efollow_symlinks\u003c/code\u003e on \u003ccode\u003eis_file()\u003c/code\u003e (Python 3.13+)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efollow_symlinks\u003c/code\u003e on \u003ccode\u003eowner()\u003c/code\u003e (Python 3.13+)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efollow_symlinks\u003c/code\u003e on \u003ccode\u003egroup()\u003c/code\u003e (Python 3.13+)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enewline\u003c/code\u003e on \u003ccode\u003eread_text()\u003c/code\u003e (Python 3.13+)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e(\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1286\"\u003e#1286\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1293\"\u003e#1293\u003c/a\u003e; PR by \u003ca href=\"https://github.com/jaideeppyne\"\u003e\u003ccode\u003e@​jaideeppyne\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003eamap\u003c/code\u003e, \u003ccode\u003egather\u003c/code\u003e, and \u003ccode\u003eas_completed\u003c/code\u003e utility functions to simplify common patterns (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1173\"\u003e#1173\u003c/a\u003e; PR by \u003ca href=\"https://github.com/Graeme22\"\u003e\u003ccode\u003e@​Graeme22\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003e--anyio-mode\u003c/code\u003e command-line option as an alternative to the \u003ccode\u003eanyio_mode\u003c/code\u003e ini setting, and fix the pytest plugin's auto mode detection to recognize the mode when set via either mechanism(e.g: \u003ccode\u003epytest_asyncio\u003c/code\u003e). (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1242\"\u003e#1242\u003c/a\u003e; PR by \u003ca href=\"https://github.com/EmmanuelNiyonshuti\"\u003e\u003ccode\u003e@​EmmanuelNiyonshuti\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded the \u003ccode\u003eanyio.Future\u003c/code\u003e synchronization primitive which behaves similar to \u003ccode\u003easyncio.Future\u003c/code\u003e, allowing tasks to wait for a value (or exception) from another task (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1146\"\u003e#1146\u003c/a\u003e; PR by \u003ca href=\"https://github.com/Vizonex\"\u003e\u003ccode\u003e@​Vizonex\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded guidance for managing multiple memory object stream producers and consumers with cloned streams (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/330\"\u003e#330\u003c/a\u003e; PR by \u003ca href=\"https://github.com/nightcityblade\"\u003e\u003ccode\u003e@​nightcityblade\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003eStapledObjectStream.send_nowait()\u003c/code\u003e that delegates to the underlying \u003ccode\u003eObjectSendStream\u003c/code\u003e, if it implements it (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1241\"\u003e#1241\u003c/a\u003e; PR by \u003ca href=\"https://github.com/davidbrochart\"\u003e\u003ccode\u003e@​davidbrochart\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded the \u003ccode\u003emove_on_at()\u003c/code\u003e and \u003ccode\u003efail_at()\u003c/code\u003e functions to complement \u003ccode\u003emove_on_after()\u003c/code\u003e and \u003ccode\u003efail_after()\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eChanged the default name for a task spawned with \u003ccode\u003eTaskGroup.create_task(func())\u003c/code\u003e to match the default task name for the analogous task spawned with \u003ccode\u003eTaskGroup.start_soon(func)\u003c/code\u003e or \u003ccode\u003eTaskGroup.start(func)\u003c/code\u003e in more situations. Previously, the default name of a \u003ccode\u003eTaskGroup.create_task\u003c/code\u003e task never included the module name. (The default name for a task spawned with \u003ccode\u003eTaskGroup.start_soon\u003c/code\u003e or \u003ccode\u003eTaskGroup.start\u003c/code\u003e typically includes the module name.) (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1234\"\u003e#1234\u003c/a\u003e; PR by \u003ca href=\"https://github.com/gschaffner\"\u003e\u003ccode\u003e@​gschaffner\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eChanged the \u003ccode\u003eanyio\u003c/code\u003e and \u003ccode\u003eanyio.abc\u003c/code\u003e modules to lazily (much like \u003ccode\u003e810\u003c/code\u003e) import the necessary submodules. This is done by parsing the AST of the module and building a lookup table from the \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block. A fallback mode has been provided for installations where the source code is unavailable (e.g. PyInstaller). (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1169\"\u003e#1169\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed free-threading compatibility issues arising from the fact that on Python 3.14 free-threading builds, newly created threads inherit the current context by default, causing AnyIO to behave erroneously in relation to \u003ccode\u003estart_blocking_portal()\u003c/code\u003e and \u003ccode\u003eanyio.to_thread.run_sync()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1224\"\u003e#1224\u003c/a\u003e; PR by \u003ca href=\"https://github.com/EmmanuelNiyonshuti\"\u003e\u003ccode\u003e@​EmmanuelNiyonshuti\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003eSpooledTemporaryFile.readinto()\u003c/code\u003e and \u003ccode\u003ereadinto1()\u003c/code\u003e reading twice before rollover, so the destination buffer was overwritten by the second read and the file position advanced twice, silently losing data (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1215\"\u003e#1215\u003c/a\u003e; PR by \u003ca href=\"https://github.com/c-tonneslan\"\u003e\u003ccode\u003e@​c-tonneslan\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded a \u003ccode\u003ereason\u003c/code\u003e parameter to \u003ccode\u003efail_after\u003c/code\u003e (and the new \u003ccode\u003efail_at\u003c/code\u003e) allowing for added exception context when raising \u003ccode\u003eTimeoutError\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1227\"\u003e#1227\u003c/a\u003e; PR by \u003ca href=\"https://github.com/Graeme22\"\u003e\u003ccode\u003e@​Graeme22\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed the default \u003ccode\u003eTaskHandle.name\u003c/code\u003e missing part of the task name for tasks started with \u003ccode\u003eTaskGroup.start\u003c/code\u003e on Trio (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1231\"\u003e#1231\u003c/a\u003e; PR by \u003ca href=\"https://github.com/gschaffner\"\u003e\u003ccode\u003e@​gschaffner\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003eanyio.run\u003c/code\u003e leaking, or at least, delaying collection of loop and root_task due to the root task being cached in a \u003ccode\u003eRunVar\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1203\"\u003e#1203\u003c/a\u003e; PR by \u003ca href=\"https://github.com/tapetersen\"\u003e\u003ccode\u003e@​tapetersen\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003eanyio.Path.with_stem()\u003c/code\u003e silently producing a wrong path (e.g. \u003ccode\u003ePath(\u0026quot;.txt\u0026quot;)\u003c/code\u003e) instead of raising \u003ccode\u003eValueError\u003c/code\u003e when given an empty stem on a path with a non-empty suffix, unlike \u003ccode\u003epathlib.PurePath.with_stem\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1200\"\u003e#1200\u003c/a\u003e; PR by \u003ca href=\"https://github.com/Sanjays2402\"\u003e\u003ccode\u003e@​Sanjays2402\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003eUNIXSocketStream.aclose()\u003c/code\u003e raising \u003ccode\u003easyncio.InvalidStateError\u003c/code\u003e when a concurrent receive or send operation had just been cancelled on the asyncio backend (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1267\"\u003e#1267\u003c/a\u003e; PR by \u003ca href=\"https://github.com/alloutflo\"\u003e\u003ccode\u003e@​alloutflo\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed the pytest plugin importing the deprecated \u003ccode\u003e_pytest.python.CallSpec2\u003c/code\u003e alias, which triggers \u003ccode\u003ePytestRemovedIn10Warning\u003c/code\u003e on \u003ccode\u003epytest\u0026gt;=9.2\u003c/code\u003e and crashes pytest at startup when \u003ccode\u003efilterwarnings = error\u003c/code\u003e is configured (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1271\"\u003e#1271\u003c/a\u003e; PR by \u003ca href=\"https://github.com/matthewfeickert\"\u003e\u003ccode\u003e@​matthewfeickert\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed an asyncio worker thread race that could raise \u003ccode\u003eRuntimeError\u003c/code\u003e when the event loop closed between checking its state and scheduling the worker result (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1265\"\u003e#1265\u003c/a\u003e; PR by \u003ca href=\"https://github.com/hansu650\"\u003e\u003ccode\u003e@​hansu650\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003eCapacityLimiter\u003c/code\u003e on the asyncio backend over-granting tokens when \u003ccode\u003etotal_tokens\u003c/code\u003e was raised while the limiter was over-subscribed (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1223\"\u003e#1223\u003c/a\u003e; PR by \u003ca href=\"https://github.com/zelinewang\"\u003e\u003ccode\u003e@​zelinewang\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed asyncio task groups leaking unawaited coroutines when a custom task constructor fails; default task creation is unaffected (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1274\"\u003e#1274\u003c/a\u003e; PR by \u003ca href=\"https://github.com/dsfaccini\"\u003e\u003ccode\u003e@​dsfaccini\u003c/code\u003e\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/928366259543412a2deb1e2ba09ea45ffa92ef4f\"\u003e\u003ccode\u003e9283662\u003c/code\u003e\u003c/a\u003e Bumped up the version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/d137692a90f76e4f71605e32ea5ca94cab3a539d\"\u003e\u003ccode\u003ed137692\u003c/code\u003e\u003c/a\u003e Improved the instructions for AI agents\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/033fc52b8fa8e90c5d0ef24b10b3860e974a6265\"\u003e\u003ccode\u003e033fc52\u003c/code\u003e\u003c/a\u003e Shield TemporaryDirectory cleanup from cancellation (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1304\"\u003e#1304\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/942e9a6552cc10b5aaa779d84bfc8e2c3d5fcffc\"\u003e\u003ccode\u003e942e9a6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1305\"\u003e#1305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/b825c3be7cb4ca1a8000b8065d4e147843deb704\"\u003e\u003ccode\u003eb825c3b\u003c/code\u003e\u003c/a\u003e Fixed pyproject.toml changes not triggering the test suite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/9727dc504681e2986b5bc285de9571fb467539af\"\u003e\u003ccode\u003e9727dc5\u003c/code\u003e\u003c/a\u003e Fixed start inconsistencies between trio and asyncio (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1198\"\u003e#1198\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/b05fe6d160a640355c201363cab286a7d2581da8\"\u003e\u003ccode\u003eb05fe6d\u003c/code\u003e\u003c/a\u003e Fixed wrong type in move_on_after (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1297\"\u003e#1297\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/44d0c93cc20079acbf38ba4dbed5ab9df323f153\"\u003e\u003ccode\u003e44d0c93\u003c/code\u003e\u003c/a\u003e Fixed asyncio task group coroutine cleanup (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1275\"\u003e#1275\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/ae250440c90020b030ba4e83cccc37e9a84512c5\"\u003e\u003ccode\u003eae25044\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1290\"\u003e#1290\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/6d3a30d264637374b1b642d2e97217c816151cfe\"\u003e\u003ccode\u003e6d3a30d\u003c/code\u003e\u003c/a\u003e Add follow_symlinks argument to anyio.Path.owner() and group() (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1293\"\u003e#1293\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/agronholm/anyio/compare/4.14.2...4.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.13.4 to 2.13.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pydantic/pydantic/releases\"\u003epydantic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.5 (2026-08-28)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow reuse of validators when plugins are set by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13535\"\u003e#13535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal on some \u003ccode\u003epydantic-core\u003c/code\u003e struct fields by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13624\"\u003e#13624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13629\"\u003e#13629\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCount validated model fields once in smart unions by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13731\"\u003e#13731\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/pydantic/pydantic/blob/v2.13.5/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.5 (2026-08-28)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.13.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow reuse of validators when plugins are set by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13535\"\u003e#13535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal on some \u003ccode\u003epydantic-core\u003c/code\u003e struct fields by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13624\"\u003e#13624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13629\"\u003e#13629\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCount validated model fields once in smart unions by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13731\"\u003e#13731\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/001dea020e0809844e5b17666432c9135a976f46\"\u003e\u003ccode\u003e001dea0\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003epypa/gh-action-pypi-publish\u003c/code\u003e action to v1.14.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/558379fee957fad25858e33596146c72d5674843\"\u003e\u003ccode\u003e558379f\u003c/code\u003e\u003c/a\u003e Bump twine to v7.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/2cfd5d3d2ae721ea882c045f83b7f7a4003aab01\"\u003e\u003ccode\u003e2cfd5d3\u003c/code\u003e\u003c/a\u003e Do not check for docs build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a735bee5c64e1fe50785c376adaf1275e752b8ac\"\u003e\u003ccode\u003ea735bee\u003c/code\u003e\u003c/a\u003e Fix more Clippy lints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7eed4a16b87afaced4d0eafae230453de3410d64\"\u003e\u003ccode\u003e7eed4a1\u003c/code\u003e\u003c/a\u003e Fix Clippy 0.1.95 warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/b353bbb20a4989b4c033e2be2b4a40d36178b16a\"\u003e\u003ccode\u003eb353bbb\u003c/code\u003e\u003c/a\u003e Prepare release v2.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/63d2cccd6e760da6bbc7fe81a53cb2bde3768f5e\"\u003e\u003ccode\u003e63d2ccc\u003c/code\u003e\u003c/a\u003e Count validated model fields once in smart unions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a53ec2ed342fda4e6aa3684399d04ea57be9a6e4\"\u003e\u003ccode\u003ea53ec2e\u003c/code\u003e\u003c/a\u003e Speed up PyPy CI tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/d65e0f96e890ca82f4b66a15d5b3bd65af2c661c\"\u003e\u003ccode\u003ed65e0f9\u003c/code\u003e\u003c/a\u003e Workaround circular import error in Mypy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/47a6dbf8ad6216211bd0df6ec5c2c6c6ed905b72\"\u003e\u003ccode\u003e47a6dbf\u003c/code\u003e\u003c/a\u003e Fix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.13.4...v2.13.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tree-sitter` from 0.25.2 to 0.26.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/releases\"\u003etree-sitter's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.26.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003eBreaking changes are marked with \u003cstrong\u003e!\u003c/strong\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003ch3\u003eAdditions:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ePoint.edit()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ePoint.__repr__()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eQueryCursor.set_containing_byte_range()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eQueryCursor.set_containing_point_range()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eRange.edit()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003etree_sitter.__version__\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemovals:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eLanguage.version\u003c/code\u003e: use \u003ccode\u003eLanguage.abi_version\u003c/code\u003e \u003cstrong\u003e!\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eLanguage.query(source)\u003c/code\u003e: use \u003ccode\u003eQuery(language, source)\u003c/code\u003e \u003cstrong\u003e!\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eParser.timeout_micros\u003c/code\u003e: use the \u003ccode\u003eprogress_callback\u003c/code\u003e in \u003ccode\u003eparse()\u003c/code\u003e \u003cstrong\u003e!\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eQueryCursor.timeout_micros\u003c/code\u003e: use the \u003ccode\u003eprogress_callback\u003c/code\u003e in \u003ccode\u003ematches()\u003c/code\u003e or \u003ccode\u003ecaptures()\u003c/code\u003e \u003cstrong\u003e!\u003c/strong\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanges:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ePoint\u003c/code\u003e is a tuple subclass rather than a namedtuple object\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/tree-sitter/py-tree-sitter/commit/a9e753ef67875c55267ebe02e786eac193a53bc1\"\u003e\u003ccode\u003ea9e753e\u003c/code\u003e\u003c/a\u003e ci(pypi): skip riscv64 tests properly\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/eeababc529a44d2d3ef09486f2f71711ca50de25\"\u003e\u003ccode\u003eeeababc\u003c/code\u003e\u003c/a\u003e chore: release 0.26.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/dac834eca3523201a6890d647e0ee3fae6cec892\"\u003e\u003ccode\u003edac834e\u003c/code\u003e\u003c/a\u003e fix(node): fix reference leak\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/bdddb6180da9a6100bd670416963d6d47e96c70d\"\u003e\u003ccode\u003ebdddb61\u003c/code\u003e\u003c/a\u003e build: bump tree-sitter-rust from 0.24.1 to 0.24.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/baa5fd8e277e10d68632bc4ed832e317f8070553\"\u003e\u003ccode\u003ebaa5fd8\u003c/code\u003e\u003c/a\u003e ci: bump the actions group across 1 directory with 2 updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/c680e3b51353d8e22b41414a74b538672ea7f59b\"\u003e\u003ccode\u003ec680e3b\u003c/code\u003e\u003c/a\u003e build: bump tree_sitter/core from \u003ccode\u003ecd5b087\u003c/code\u003e to \u003ccode\u003e7f53486\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/2d3fb3a2a7a23995791f2f7b621e933cf300ec7d\"\u003e\u003ccode\u003e2d3fb3a\u003c/code\u003e\u003c/a\u003e ci: bump actions/upload-pages-artifact from 4 to 5 in the actions group\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/bae0829cea6b44f072c00e1385f459b16a281ed9\"\u003e\u003ccode\u003ebae0829\u003c/code\u003e\u003c/a\u003e build: bump tree-sitter-rust from 0.24.0 to 0.24.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/d99f79601f25c74edd10823cb3fceb95d65ae3f3\"\u003e\u003ccode\u003ed99f796\u003c/code\u003e\u003c/a\u003e build: bump tree_sitter/core from \u003ccode\u003e6f2e8a6\u003c/code\u003e to \u003ccode\u003ecd5b087\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/commit/a9282df03584eb98e8d67df3b151cf8df0b38f14\"\u003e\u003ccode\u003ea9282df\u003c/code\u003e\u003c/a\u003e build: bump tree_sitter/core from \u003ccode\u003ecd4b6e2\u003c/code\u003e to \u003ccode\u003e6f2e8a6\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tree-sitter/py-tree-sitter/compare/v0.25.2...v0.26.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.29.0 to 1.30.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.30.0] Scheduled job filters, repo-aware revision pinning and more\u003c/h2\u003e\n\u003ch2\u003e🖥️ \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e can now filter by status, label and name\u003c/h2\u003e\n\u003cp\u003eYou can now filter scheduled jobs with \u003ccode\u003e--status\u003c/code\u003e (\u003ccode\u003eactive\u003c/code\u003e/\u003ccode\u003esuspended\u003c/code\u003e), repeatable \u003ccode\u003e-l\u003c/code\u003e/\u003ccode\u003e--label key=value\u003c/code\u003e and \u003ccode\u003e--name\u003c/code\u003e (a shortcut for \u003ccode\u003e--label name=NAME\u003c/code\u003e), matching the flags \u003ccode\u003ehf jobs ls\u003c/code\u003e already had. On the Python side, \u003ccode\u003eHfApi.list_scheduled_jobs\u003c/code\u003e gains a \u003ccode\u003elabels\u003c/code\u003e argument.\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\n\u003ccode\u003e-f\u003c/code\u003e/\u003ccode\u003e--filter\u003c/code\u003e on \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e is deprecated and no longer applied: it is accepted but ignored, with a warning pointing to the new flags. Migrate as shown below. The option itself will be removed in a future release.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003ehf jobs scheduled ls --all\r\nhf jobs scheduled ls --status suspended\r\nhf jobs scheduled ls --name hourly-task --label env=prod\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebefore\u003c/th\u003e\n\u003cth\u003eafter\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f name=daily-report\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--name daily-report\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f env=prod\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--label env=prod\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f suspend!=true\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e(default, or \u003ccode\u003e--status active\u003c/code\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f suspend=true\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--status suspended\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/jobs\"\u003eJobs guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAlign \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e filtering with \u003ccode\u003ehf jobs ls\u003c/code\u003e (\u003ccode\u003e--status\u003c/code\u003e/\u003ccode\u003e--label\u003c/code\u003e/\u003ccode\u003e--name\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4773\"\u003e#4773\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔖 \u003ccode\u003eResolvedRevision\u003c/code\u003e now pins the repo it was resolved for\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003eResolvedRevision\u003c/code\u003e didn't record which repo a commit hash was resolved against, so resolving \u003ccode\u003e\u0026quot;main\u0026quot;\u003c/code\u003e on two different repos returned the same commit oid. It now remembers its \u003ccode\u003erepo_id\u003c/code\u003e and \u003ccode\u003erepo_type\u003c/code\u003e: passed back for the same repo it is returned as is, for a different repo the requested revision is resolved again.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import resolve_revision\r\n\u0026gt;\u0026gt;\u0026gt; revision = resolve_revision(\u0026quot;openai-community/gpt2\u0026quot;)\r\n\u003ch1\u003eSame repo =\u0026gt; returned as is\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; resolve_revision(\u0026quot;openai-community/gpt2\u0026quot;, revision=revision) is revision\nTrue\u003c/p\u003e\n\u003ch1\u003eAnother repo =\u0026gt; \u0026quot;main\u0026quot; is resolved again for that repo\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; resolve_revision(\u0026quot;openai-community/gpt2-medium\u0026quot;, revision=revision).resolved\n'6dcaa7a952f72f9298047fd5137cd6e4f05f41da'\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/manage-cache#pin-a-revision-advanced\"\u003eManage cache — Pin a revision\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Download] A \u003ccode\u003eResolvedRevision\u003c/code\u003e only pins the repo it was resolved for by \u003ca href=\"https://github.com/Wauplin\"\u003e\u003ccode\u003e@​Wauplin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4767\"\u003e#4767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDo not require the \u003ccode\u003econversational\u003c/code\u003e tag for chat-completion on hf-inference: any model with pipeline tag \u003ccode\u003etext-generation\u003c/code\u003e or \u003ccode\u003eimage-text-to-text\u003c/code\u003e can now be served, mirroring the updated provider-side rules by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4784\"\u003e#4784\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/huggingface/huggingface_hub/commit/48ef2781c2c4c2247431c97efcd5487e89d42732\"\u003e\u003ccode\u003e48ef278\u003c/code\u003e\u003c/a\u003e Release: v1.30.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/a073ecb91bfdb5966d1fcf22623e4f83faf0c853\"\u003e\u003ccode\u003ea073ecb\u003c/code\u003e\u003c/a\u003e Release: v1.30.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b84090bcbcd96eeaf4c78b6280b2ce2cea528288\"\u003e\u003ccode\u003eb84090b\u003c/code\u003e\u003c/a\u003e [Release] Consolidate the HF CLI skill sync into the release workflow (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4765\"\u003e#4765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/176d4f378d49e699c811b18e21765ef5a1763c91\"\u003e\u003ccode\u003e176d4f3\u003c/code\u003e\u003c/a\u003e [CI] Disable auto close (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4800\"\u003e#4800\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/f0a5c6d08298760b2a030c4c5df608369632b7e1\"\u003e\u003ccode\u003ef0a5c6d\u003c/code\u003e\u003c/a\u003e [Inference Providers] Do not require the conversational tag for chat-completi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/6a2eb09daf1f9258e7f69c1d50a870fdb7235742\"\u003e\u003ccode\u003e6a2eb09\u003c/code\u003e\u003c/a\u003e [Sandbox] Document experimental status (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4783\"\u003e#4783\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/94cb25dada381d14e54b16dcfe92436be244fca9\"\u003e\u003ccode\u003e94cb25d\u003c/code\u003e\u003c/a\u003e [CI] Fix torch_1.11 case-arm label to match renamed matrix entry (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4776\"\u003e#4776\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4cc16bc22402e2a540f60d05beb406921072a032\"\u003e\u003ccode\u003e4cc16bc\u003c/code\u003e\u003c/a\u003e [Download] A \u003ccode\u003eResolvedRevision\u003c/code\u003e only pins the repo it was resolved for (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4767\"\u003e#4767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/1de481786c0440d6de2cea38bab4faa88612e821\"\u003e\u003ccode\u003e1de4817\u003c/code\u003e\u003c/a\u003e [Download] Follow redirects between Hub hosts when resolving files (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4739\"\u003e#4739\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/97655e88b1c1374b0576659c6a7ffe8c59cedfcb\"\u003e\u003ccode\u003e97655e8\u003c/code\u003e\u003c/a\u003e Align \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e filtering with \u003ccode\u003ehf jobs ls\u003c/code\u003e (\u003ccode\u003e--status\u003c/code\u003e/`--label...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.29.0...v1.30.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.16.5 to 0.16.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.16.6\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-09-03.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove \u003ccode\u003epytest-fixture-autouse\u003c/code\u003e to the \u003ccode\u003erestriction\u003c/code\u003e category (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28219\"\u003e#28219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Add an autofix for \u003ccode\u003ePT020\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27993\"\u003e#27993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-tidy-imports\u003c/code\u003e] Prevent fix loop between \u003ccode\u003eTID254\u003c/code\u003e and \u003ccode\u003eTID255\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28262\"\u003e#28262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eisort\u003c/code\u003e] Exclude pragma comments from line length calculation (\u003ccode\u003eI001\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27313\"\u003e#27313\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eValidate unary expressions when parsing (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28233\"\u003e#28233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e, \u003ccode\u003epylint\u003c/code\u003e] Recognize \u003ccode\u003ebuiltins.open\u003c/code\u003e (\u003ccode\u003eASYNC230\u003c/code\u003e, \u003ccode\u003ePLW1514\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28021\"\u003e#28021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Fix panic on \u003ccode\u003ematch\u003c/code\u003e subjects (\u003ccode\u003eB031\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27781\"\u003e#27781\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-datetimez\u003c/code\u003e] Reject \u003ccode\u003etzinfo=None\u003c/code\u003e for \u003ccode\u003edatetime\u003c/code\u003e bounds (\u003ccode\u003eDTZ901\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28022\"\u003e#28022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Avoid duplicate \u003ccode\u003ePT017\u003c/code\u003e diagnostics (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27918\"\u003e#27918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Remove \u003ccode\u003elint.external\u003c/code\u003e hint for Ruff-specific suppressions (\u003ccode\u003eRUF102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27923\"\u003e#27923\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add display-only fix for \u003ccode\u003eos.listdir\u003c/code\u003e (\u003ccode\u003ePTH208\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28027\"\u003e#28027\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd another example and glob reference for \u003ccode\u003elint.per-file-ignores\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28106\"\u003e#28106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd duplicate work guidance (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28229\"\u003e#28229\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Document thread offloading (\u003ccode\u003eASYNC240\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28008\"\u003e#28008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Clarify default \u003ccode\u003eencoding\u003c/code\u003e argument handling (\u003ccode\u003eUP012\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27315\"\u003e#27315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow unary plus in match patterns on Python 3.15 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28231\"\u003e#28231\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/flying-sheep\"\u003e\u003ccode\u003e@​flying-sheep\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pikammmmm\"\u003e\u003ccode\u003e@​pikammmmm\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fly1d\"\u003e\u003ccode\u003e@​fly1d\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/waterWang\"\u003e\u003ccode\u003e@​waterWang\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Pierre-Sassoulas\"\u003e\u003ccode\u003e@​Pierre-Sassoulas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ntBre\"\u003e\u003ccode\u003e@​ntBre\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jelle-openai\"\u003e\u003ccode\u003e@​jelle-openai\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ericbuehl\"\u003e\u003ccode\u003e@​ericbuehl\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tjkuson\"\u003e\u003ccode\u003e@​tjkuson\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AbhinavMir\"\u003e\u003ccode\u003e@​AbhinavMir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Whning0513\"\u003e\u003ccode\u003e@​Whning0513\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.16.6\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-09-03.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove \u003ccode\u003epytest-fixture-autouse\u003c/code\u003e to the \u003ccode\u003erestriction\u003c/code\u003e category (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28219\"\u003e#28219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Add an autofix for \u003ccode\u003ePT020\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27993\"\u003e#27993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-tidy-imports\u003c/code\u003e] Prevent fix loop between \u003ccode\u003eTID254\u003c/code\u003e and \u003ccode\u003eTID255\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28262\"\u003e#28262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eisort\u003c/code\u003e] Exclude pragma comments from line length calculation (\u003ccode\u003eI001\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27313\"\u003e#27313\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eValidate unary expressions when parsing (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28233\"\u003e#28233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e, \u003ccode\u003epylint\u003c/code\u003e] Recognize \u003ccode\u003ebuiltins.open\u003c/code\u003e (\u003ccode\u003eASYNC230\u003c/code\u003e, \u003ccode\u003ePLW1514\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28021\"\u003e#28021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Fix panic on \u003ccode\u003ematch\u003c/code\u003e subjects (\u003ccode\u003eB031\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27781\"\u003e#27781\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-datetimez\u003c/code\u003e] Reject \u003ccode\u003etzinfo=None\u003c/code\u003e for \u003ccode\u003edatetime\u003c/code\u003e bounds (\u003ccode\u003eDTZ901\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28022\"\u003e#28022\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Avoid duplicate \u003ccode\u003ePT017\u003c/code\u003e diagnostics (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27918\"\u003e#27918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Remove \u003ccode\u003elint.external\u003c/code\u003e hint for Ruff-specific suppressions (\u003ccode\u003eRUF102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27923\"\u003e#27923\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add display-only fix for \u003ccode\u003eos.listdir\u003c/code\u003e (\u003ccode\u003ePTH208\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28027\"\u003e#28027\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd another example and glob reference for \u003ccode\u003elint.per-file-ignores\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28106\"\u003e#28106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd duplicate work guidance (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28229\"\u003e#28229\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Document thread offloading (\u003ccode\u003eASYNC240\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28008\"\u003e#28008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Clarify default \u003ccode\u003eencoding\u003c/code\u003e argument handling (\u003ccode\u003eUP012\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27315\"\u003e#27315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow unary plus in match patterns on Python 3.15 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28231\"\u003e#28231\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/flying-sheep\"\u003e\u003ccode\u003e@​flying-sheep\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pikammmmm\"\u003e\u003ccode\u003e@​pikammmmm\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fly1d\"\u003e\u003ccode\u003e@​fly1d\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/waterWang\"\u003e\u003ccode\u003e@​waterWang\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Pierre-Sassoulas\"\u003e\u003ccode\u003e@​Pierre-Sassoulas\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ntBre\"\u003e\u003ccode\u003e@​ntBre\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jelle-openai\"\u003e\u003ccode\u003e@​jelle-openai\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ericbuehl\"\u003e\u003ccode\u003e@​ericbuehl\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tjkuson\"\u003e\u003ccode\u003e@​tjkuson\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AbhinavMir\"\u003e\u003ccode\u003e@​AbhinavMir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Whning0513\"\u003e\u003ccode\u003e@​Whning0513\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/22f65a2ab5052990503985c7c794de37598d531e\"\u003e\u003ccode\u003e22f65a2\u003c/code\u003e\u003c/a\u003e Bump 0.16.6 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28280\"\u003e#28280\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/7cc9f1ed53e5ce175f17fde3a75fe792ac41e8cd\"\u003e\u003ccode\u003e7cc9f1e\u003c/code\u003e\u003c/a\u003e [ty] Document \u003ccode\u003eCallableTypeKind\u003c/code\u003e variants (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28277\"\u003e#28277\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/056ce07a895c217dab7929a616540c246cf8a078\"\u003e\u003ccode\u003e056ce07\u003c/code\u003e\u003c/a\u003e Add UV_LOCKED to all workflows (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28261\"\u003e#28261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/6d6e35d03a72d23d3b0f23fb348692b03c9b81b6\"\u003e\u003ccode\u003e6d6e35d\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-pytest-style\u003c/code\u003e] Avoid duplicate \u003ccode\u003ePT017\u003c/code\u003e diagnostics (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/27918\"\u003e#27918\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/80b4891b64cb916dce080e8fa15af5c2179d776a\"\u003e\u003ccode\u003e80b4891\u003c/code\u003e\u003c/a\u003e [ty] Temporarily disable tuple types in property tests (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28275\"\u003e#28275\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/3f7a54d1d7b9480a18d86a8211bf676354a2f8a0\"\u003e\u003ccode\u003e3f7a54d\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-tidy-imports\u003c/code\u003e] Prevent fix loop between \u003ccode\u003eTID254\u003c/code\u003e and \u003ccode\u003eTID255\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28262\"\u003e#28262\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/35656cf37d34f30116d4f4a9cb13853a6ad9fd0d\"\u003e\u003ccode\u003e35656cf\u003c/code\u003e\u003c/a\u003e [ty] Preserve deprecations on decorated callables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28256\"\u003e#28256\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d2626c866ee08495cfa0da5236e130030d37e0cf\"\u003e\u003ccode\u003ed2626c8\u003c/code\u003e\u003c/a\u003e [ty] Reject missing attributes on \u003ccode\u003etype[]\u003c/code\u003e aliases (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28267\"\u003e#28267\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/ee6a6d19aa0707df942febe9768488d39f383c8c\"\u003e\u003ccode\u003eee6a6d1\u003c/code\u003e\u003c/a\u003e [ty] Support ParamSpecs in \u003ccode\u003eConstraintSet\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28028\"\u003e#28028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/7f6a170080dab08f754ef086369a2623c70f753d\"\u003e\u003ccode\u003e7f6a170\u003c/code\u003e\u003c/a\u003e [ty] Move bound APIs to constraint owners (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28094\"\u003e#28094\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.16.5...0.16.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/existential-birds/daydream/pull/1160","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/existential-birds%2Fdaydream/issues/1160","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1160/packages"}},{"old_version":"1.27.0","new_version":"1.30.0","update_type":"minor","path":null,"pr_created_at":"2026-09-06T18:08:31.000Z","version_change":"1.27.0 → 1.30.0","issue":{"uuid":"5366743888","node_id":"PR_kwDOT6TBN88AAAABCbCwCw","number":13,"state":"open","title":"Bump the minor-update group across 1 directory with 186 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-06T18:08:31.000Z","updated_at":"2026-09-06T18:08:41.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-update","update_count":186,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"transformers","old_version":"5.15.0","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"huggingface-hub","old_version":"1.27.0","new_version":"1.30.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.2","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"fastapi","old_version":"0.136.3","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"starlette","old_version":"1.3.1","new_version":"1.6.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"prometheus-fastapi-instrumentator","old_version":"8.0.2","new_version":"8.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"pyzmq","old_version":"27.1.0","new_version":"27.2.0","repository_url":"https://github.com/zeromq/pyzmq"},{"name":"python-json-logger","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"pybase64","old_version":"1.4.3","new_version":"1.5.0","repository_url":"https://github.com/mayeut/pybase64"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions-ai","old_version":"0.4.13","new_version":"0.5.1"},{"name":"triton","old_version":"3.7.1","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"torchcodec","old_version":"0.14.0+cu130","new_version":"0.16.0","repository_url":"https://github.com/pytorch/torchcodec"},{"name":"auto-round-lib","old_version":"0.14.2","new_version":"0.15.0","repository_url":"https://github.com/intel/auto-round"},{"name":"tpu-inference","old_version":"0.26.0","new_version":"0.28.0","repository_url":"https://github.com/vllm-project/tpu-inference"},{"name":"pynvvideocodec","old_version":"2.0.4","new_version":"2.2.2"},{"name":"nvidia-cutlass-dsl","old_version":"4.6.2","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.8","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"anyio","old_version":"4.14.1","new_version":"4.15.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.87","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.87","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"cohere","old_version":"7.0.8","new_version":"7.1.1","repository_url":"https://github.com/cohere-ai/cohere-python"},{"name":"cohere-melody","old_version":"0.9.0","new_version":"0.13.4","repository_url":"https://github.com/cohere-ai/melody"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.3.0","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.1","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"detect-installer","old_version":"0.1.0","new_version":"0.2.1"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi-cloud-cli","old_version":"0.21.0","new_version":"0.25.0","repository_url":"https://github.com/fastapilabs/fastapi-cloud-cli"},{"name":"fastar","old_version":"0.11.0","new_version":"0.12.0","repository_url":"https://github.com/DoctorJohn/fastar"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"h11","old_version":"0.14.0","new_version":"0.16.0","repository_url":"https://github.com/python-hyper/h11"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"idna","old_version":"3.10","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.15.0","new_version":"0.16.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema-rs","old_version":"0.46.5","new_version":"0.53.0","repository_url":"https://github.com/Stranger6667/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llguidance","old_version":"1.7.6","new_version":"1.8.0","repository_url":"https://github.com/microsoft/llguidance"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.1.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.20.0.48","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.1","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.29.7","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"peft","old_version":"0.19.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.7","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pydantic-settings","old_version":"2.14.2","new_version":"2.15.0","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pyrate-limiter","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/vutran1710/PyrateLimiter"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"rignore","old_version":"0.7.6","new_version":"0.8.1"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"schemathesis","old_version":"4.21.6","new_version":"4.25.2","repository_url":"https://github.com/schemathesis/schemathesis"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"sentry-sdk","old_version":"2.63.0","new_version":"2.68.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.26.8","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.4","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.6","repository_url":"https://github.com/astral-sh/ruff"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 186 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [transformers](https://github.com/huggingface/transformers) | `5.15.0` | `5.16.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.27.0` | `1.30.0` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.2` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.136.3` | `0.141.1` |\n| [starlette](https://github.com/Kludex/starlette) | `1.3.1` | `1.6.0` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `8.0.2` | `8.1.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [pyzmq](https://github.com/zeromq/pyzmq) | `27.1.0` | `27.2.0` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `4.1.0` | `4.2.0` |\n| [pybase64](https://github.com/mayeut/pybase64) | `1.4.3` | `1.5.0` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| opentelemetry-semantic-conventions-ai | `0.4.13` | `0.5.1` |\n| [triton](https://github.com/triton-lang/triton) | `3.7.1` | `3.8.0` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [torchcodec](https://github.com/pytorch/torchcodec) | `0.14.0+cu130` | `0.16.0` |\n| [auto-round-lib](https://github.com/intel/auto-round) | `0.14.2` | `0.15.0` |\n| [tpu-inference](https://github.com/vllm-project/tpu-inference) | `0.26.0` | `0.28.0` |\n| pynvvideocodec | `2.0.4` | `2.2.2` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.6.2` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.8` | `0.2.6` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.14.1` | `4.15.0` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.87` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.87` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| [cohere](https://github.com/cohere-ai/cohere-python) | `7.0.8` | `7.1.1` |\n| [cohere-melody](https://github.com/cohere-ai/melody) | `0.9.0` | `0.13.4` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.1` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.3.0` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.1` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| detect-installer | `0.1.0` | `0.2.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi-cloud-cli](https://github.com/fastapilabs/fastapi-cloud-cli) | `0.21.0` | `0.25.0` |\n| [fastar](https://github.com/DoctorJohn/fastar) | `0.11.0` | `0.12.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.19` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.15.0` | `0.16.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonschema-rs](https://github.com/Stranger6667/jsonschema) | `0.46.5` | `0.53.0` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llguidance](https://github.com/microsoft/llguidance) | `1.7.6` | `1.8.0` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.1.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.20.0.48` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.1` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.29.7` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [peft](https://github.com/huggingface/peft) | `0.19.1` | `0.20.0` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.7` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.14.2` | `2.15.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pyrate-limiter](https://github.com/vutran1710/PyrateLimiter) | `4.4.0` | `4.5.0` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| rignore | `0.7.6` | `0.8.1` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [schemathesis](https://github.com/schemathesis/schemathesis) | `4.21.6` | `4.25.2` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.63.0` | `2.68.1` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.26.8` | `0.27.2` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.4` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.6` |\n\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 5.15.0 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\n\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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.15.0...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.27.0 to 1.30.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.30.0] Scheduled job filters, repo-aware revision pinning and more\u003c/h2\u003e\n\u003ch2\u003e🖥️ \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e can now filter by status, label and name\u003c/h2\u003e\n\u003cp\u003eYou can now filter scheduled jobs with \u003ccode\u003e--status\u003c/code\u003e (\u003ccode\u003eactive\u003c/code\u003e/\u003ccode\u003esuspended\u003c/code\u003e), repeatable \u003ccode\u003e-l\u003c/code\u003e/\u003ccode\u003e--label key=value\u003c/code\u003e and \u003ccode\u003e--name\u003c/code\u003e (a shortcut for \u003ccode\u003e--label name=NAME\u003c/code\u003e), matching the flags \u003ccode\u003ehf jobs ls\u003c/code\u003e already had. On the Python side, \u003ccode\u003eHfApi.list_scheduled_jobs\u003c/code\u003e gains a \u003ccode\u003elabels\u003c/code\u003e argument.\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\n\u003ccode\u003e-f\u003c/code\u003e/\u003ccode\u003e--filter\u003c/code\u003e on \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e is deprecated and no longer applied: it is accepted but ignored, with a warning pointing to the new flags. Migrate as shown below. The option itself will be removed in a future release.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003ehf jobs scheduled ls --all\r\nhf jobs scheduled ls --status suspended\r\nhf jobs scheduled ls --name hourly-task --label env=prod\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebefore\u003c/th\u003e\n\u003cth\u003eafter\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f name=daily-report\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--name daily-report\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f env=prod\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--label env=prod\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f suspend!=true\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e(default, or \u003ccode\u003e--status active\u003c/code\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f suspend=true\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--status suspended\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/jobs\"\u003eJobs guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAlign \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e filtering with \u003ccode\u003ehf jobs ls\u003c/code\u003e (\u003ccode\u003e--status\u003c/code\u003e/\u003ccode\u003e--label\u003c/code\u003e/\u003ccode\u003e--name\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4773\"\u003e#4773\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔖 \u003ccode\u003eResolvedRevision\u003c/code\u003e now pins the repo it was resolved for\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003eResolvedRevision\u003c/code\u003e didn't record which repo a commit hash was resolved against, so resolving \u003ccode\u003e\u0026quot;main\u0026quot;\u003c/code\u003e on two different repos returned the same commit oid. It now remembers its \u003ccode\u003erepo_id\u003c/code\u003e and \u003ccode\u003erepo_type\u003c/code\u003e: passed back for the same repo it is returned as is, for a different repo the requested revision is resolved again.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import resolve_revision\r\n\u0026gt;\u0026gt;\u0026gt; revision = resolve_revision(\u0026quot;openai-community/gpt2\u0026quot;)\r\n\u003ch1\u003eSame repo =\u0026gt; returned as is\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; resolve_revision(\u0026quot;openai-community/gpt2\u0026quot;, revision=revision) is revision\nTrue\u003c/p\u003e\n\u003ch1\u003eAnother repo =\u0026gt; \u0026quot;main\u0026quot; is resolved again for that repo\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; resolve_revision(\u0026quot;openai-community/gpt2-medium\u0026quot;, revision=revision).resolved\n'6dcaa7a952f72f9298047fd5137cd6e4f05f41da'\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/manage-cache#pin-a-revision-advanced\"\u003eManage cache — Pin a revision\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Download] A \u003ccode\u003eResolvedRevision\u003c/code\u003e only pins the repo it was resolved for by \u003ca href=\"https://github.com/Wauplin\"\u003e\u003ccode\u003e@​Wauplin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4767\"\u003e#4767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDo not require the \u003ccode\u003econversational\u003c/code\u003e tag for chat-completion on hf-inference: any model with pipeline tag \u003ccode\u003etext-generation\u003c/code\u003e or \u003ccode\u003eimage-text-to-text\u003c/code\u003e can now be served, mirroring the updated provider-side rules by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4784\"\u003e#4784\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\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/huggingface/huggingface_hub/commit/48ef2781c2c4c2247431c97efcd5487e89d42732\"\u003e\u003ccode\u003e48ef278\u003c/code\u003e\u003c/a\u003e Release: v1.30.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/a073ecb91bfdb5966d1fcf22623e4f83faf0c853\"\u003e\u003ccode\u003ea073ecb\u003c/code\u003e\u003c/a\u003e Release: v1.30.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b84090bcbcd96eeaf4c78b6280b2ce2cea528288\"\u003e\u003ccode\u003eb84090b\u003c/code\u003e\u003c/a\u003e [Release] Consolidate the HF CLI skill sync into the release workflow (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4765\"\u003e#4765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/176d4f378d49e699c811b18e21765ef5a1763c91\"\u003e\u003ccode\u003e176d4f3\u003c/code\u003e\u003c/a\u003e [CI] Disable auto close (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4800\"\u003e#4800\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/f0a5c6d08298760b2a030c4c5df608369632b7e1\"\u003e\u003ccode\u003ef0a5c6d\u003c/code\u003e\u003c/a\u003e [Inference Providers] Do not require the conversational tag for chat-completi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/6a2eb09daf1f9258e7f69c1d50a870fdb7235742\"\u003e\u003ccode\u003e6a2eb09\u003c/code\u003e\u003c/a\u003e [Sandbox] Document experimental status (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4783\"\u003e#4783\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/94cb25dada381d14e54b16dcfe92436be244fca9\"\u003e\u003ccode\u003e94cb25d\u003c/code\u003e\u003c/a\u003e [CI] Fix torch_1.11 case-arm label to match renamed matrix entry (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4776\"\u003e#4776\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4cc16bc22402e2a540f60d05beb406921072a032\"\u003e\u003ccode\u003e4cc16bc\u003c/code\u003e\u003c/a\u003e [Download] A \u003ccode\u003eResolvedRevision\u003c/code\u003e only pins the repo it was resolved for (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4767\"\u003e#4767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/1de481786c0440d6de2cea38bab4faa88612e821\"\u003e\u003ccode\u003e1de4817\u003c/code\u003e\u003c/a\u003e [Download] Follow redirects between Hub hosts when resolving files (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4739\"\u003e#4739\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/97655e88b1c1374b0576659c6a7ffe8c59cedfcb\"\u003e\u003ccode\u003e97655e8\u003c/code\u003e\u003c/a\u003e Align \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e filtering with \u003ccode\u003ehf jobs ls\u003c/code\u003e (\u003ccode\u003e--status\u003c/code\u003e/`--label...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.27.0...v1.30.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.2\u003c/h2\u003e\n\u003cp\u003eThis is the last v0 release, we are moving to v1!!\u003c/p\u003e\n\u003cp\u003eMore details coming soon 👀\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate daachorse from 1.0.1 to 3.0.0 by \u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2050\"\u003ehuggingface/tokenizers#2050\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCi test fixes by \u003ca href=\"https://github.com/sebpop\"\u003e\u003ccode\u003e@​sebpop\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2079\"\u003ehuggingface/tokenizers#2079\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid full vocab clone in get_vocab_size() by \u003ca href=\"https://github.com/eunseo9311\"\u003e\u003ccode\u003e@​eunseo9311\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2074\"\u003ehuggingface/tokenizers#2074\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: pin benchmark jobs to a larger dedicated runner by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2084\"\u003ehuggingface/tokenizers#2084\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: target benchmark runners by group, not nonexistent label by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2090\"\u003ehuggingface/tokenizers#2090\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBindings: acquire model read-lock once per call instead of per pre-token by \u003ca href=\"https://github.com/sebpop\"\u003e\u003ccode\u003e@​sebpop\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2072\"\u003ehuggingface/tokenizers#2072\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: split audit in a separate job by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2103\"\u003ehuggingface/tokenizers#2103\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: install libcairo on benchmark runners by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2100\"\u003ehuggingface/tokenizers#2100\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(ci): enable npm's trusted publisher for releases by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2111\"\u003ehuggingface/tokenizers#2111\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: bump pyo3 to version 0.29 by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2115\"\u003ehuggingface/tokenizers#2115\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: add benchmarks for the \u003ccode\u003edecode\u003c/code\u003e API by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2099\"\u003ehuggingface/tokenizers#2099\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: cache HF test data and authenticate Hub downloads to avoid rate limits by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2102\"\u003ehuggingface/tokenizers#2102\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImplementing Parity-aware BPE by \u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/1974\"\u003ehuggingface/tokenizers#1974\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake doc builds faster by \u003ca href=\"https://github.com/mishig25\"\u003e\u003ccode\u003e@​mishig25\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2158\"\u003ehuggingface/tokenizers#2158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump websocket-driver from 0.7.4 to 0.7.5 in /tokenizers/examples/unstable_wasm/www 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/huggingface/tokenizers/pull/2208\"\u003ehuggingface/tokenizers#2208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump shell-quote from 1.8.3 to 1.10.0 in /tokenizers/examples/unstable_wasm/www 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/huggingface/tokenizers/pull/2244\"\u003ehuggingface/tokenizers#2244\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: remove stale examples (kills 50% of dependabot traffic) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2285\"\u003ehuggingface/tokenizers#2285\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(node): drop 8 unused devDependencies by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2286\"\u003ehuggingface/tokenizers#2286\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: pin every action to one SHA, drop stale audit suppressions by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2291\"\u003ehuggingface/tokenizers#2291\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(node): take node security alerts from 33 to 0 by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2287\"\u003ehuggingface/tokenizers#2287\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(python): pin the ruff rule set so a ruff release can't redden main by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2292\"\u003ehuggingface/tokenizers#2292\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a ParityBpeTrainer example and list it in the trainers API docs by \u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2217\"\u003ehuggingface/tokenizers#2217\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/eunseo9311\"\u003e\u003ccode\u003e@​eunseo9311\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2074\"\u003ehuggingface/tokenizers#2074\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/1974\"\u003ehuggingface/tokenizers#1974\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.23.1...v0.23.2\"\u003ehttps://github.com/huggingface/tokenizers/compare/v0.23.1...v0.23.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\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/huggingface/tokenizers/commit/88a4498ad4ea1a9487b0a9b0ff881383fd5a06a3\"\u003e\u003ccode\u003e88a4498\u003c/code\u003e\u003c/a\u003e add lock\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/e4ea65f27057e593656ff1335b95afe2e552b88d\"\u003e\u003ccode\u003ee4ea65f\u003c/code\u003e\u003c/a\u003e real release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/7c5964b4afae7b710d254eacd5a9fa180ba2cfef\"\u003e\u003ccode\u003e7c5964b\u003c/code\u003e\u003c/a\u003e add lock\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bc405ad60991a0639f8b09b40f13f91c38e50e87\"\u003e\u003ccode\u003ebc405ad\u003c/code\u003e\u003c/a\u003e push rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/d5827816baedcbf1cb5b452dea8048150b6872df\"\u003e\u003ccode\u003ed582781\u003c/code\u003e\u003c/a\u003e Add a ParityBpeTrainer example and list it in the trainers API docs (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2217\"\u003e#2217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/447890f84deab25794ccfdee2a877901b6893569\"\u003e\u003ccode\u003e447890f\u003c/code\u003e\u003c/a\u003e fix(python): pin the ruff rule set so a ruff release can't redden main (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2292\"\u003e#2292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/68b3ab7788b58408f37a3dc73eeabf2417d14c22\"\u003e\u003ccode\u003e68b3ab7\u003c/code\u003e\u003c/a\u003e chore(node): take node security alerts from 33 to 0 (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2287\"\u003e#2287\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/74ef81f64e6d1cd4979c56d7d75f3ce21ba11992\"\u003e\u003ccode\u003e74ef81f\u003c/code\u003e\u003c/a\u003e ci: pin every action to one SHA, drop stale audit suppressions (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2291\"\u003e#2291\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b26727f1a92cdf727cd965fc1c467a7c77c63aae\"\u003e\u003ccode\u003eb26727f\u003c/code\u003e\u003c/a\u003e chore(node): drop 8 unused devDependencies (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2286\"\u003e#2286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/7c7cfd838fb79e76aaba6b0931898073a784fb2a\"\u003e\u003ccode\u003e7c7cfd8\u003c/code\u003e\u003c/a\u003e chore: remove stale examples (kills 50% of dependabot traffic) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2285\"\u003e#2285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `fastapi` from 0.136.3 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15093\"\u003e#15093\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.10\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling sequences with nested Annotated types. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14874\"\u003e#14874\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Accept any base test failure as regression. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16092\"\u003e#16092\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Preserve pyt...\n\n_Description has been truncated_","html_url":"https://github.com/forwis/vllm-jasl/pull/13","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/forwis%2Fvllm-jasl/issues/13","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/13/packages"}},{"old_version":"1.22.0","new_version":"1.30.0","update_type":"minor","path":null,"pr_created_at":"2026-09-06T17:50:34.000Z","version_change":"1.22.0 → 1.30.0","issue":{"uuid":"5366645977","node_id":"PR_kwDOTjoS1M8AAAABCa98AQ","number":19,"state":"open","title":"Bump the minor-update group across 1 directory with 189 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-06T17:50:34.000Z","updated_at":"2026-09-06T17:50:46.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-update","update_count":189,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"transformers","old_version":"5.14.1","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.2","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"fastapi","old_version":"0.136.3","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"starlette","old_version":"1.3.1","new_version":"1.6.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"prometheus-fastapi-instrumentator","old_version":"8.0.2","new_version":"8.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"pyzmq","old_version":"27.1.0","new_version":"27.2.0","repository_url":"https://github.com/zeromq/pyzmq"},{"name":"python-json-logger","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"pybase64","old_version":"1.4.3","new_version":"1.5.0","repository_url":"https://github.com/mayeut/pybase64"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions-ai","old_version":"0.4.13","new_version":"0.5.1"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"torchcodec","old_version":"0.14.0+cu130","new_version":"0.16.0","repository_url":"https://github.com/pytorch/torchcodec"},{"name":"auto-round-lib","old_version":"0.14.1","new_version":"0.15.0","repository_url":"https://github.com/intel/auto-round"},{"name":"tpu-inference","old_version":"0.25.0","new_version":"0.28.0","repository_url":"https://github.com/vllm-project/tpu-inference"},{"name":"pynvvideocodec","old_version":"2.0.4","new_version":"2.2.2"},{"name":"nvidia-cutlass-dsl","old_version":"4.6.0","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.8","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"anyio","old_version":"4.14.1","new_version":"4.15.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"bitsandbytes","old_version":"0.49.2","new_version":"0.50.2","repository_url":"https://github.com/bitsandbytes-foundation/bitsandbytes"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.87","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.87","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"cohere-melody","old_version":"0.9.0","new_version":"0.13.4","repository_url":"https://github.com/cohere-ai/melody"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.3.0","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.1","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"detect-installer","old_version":"0.1.0","new_version":"0.2.1"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi-cloud-cli","old_version":"0.21.0","new_version":"0.25.0","repository_url":"https://github.com/fastapilabs/fastapi-cloud-cli"},{"name":"fastar","old_version":"0.11.0","new_version":"0.12.0","repository_url":"https://github.com/DoctorJohn/fastar"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"h11","old_version":"0.14.0","new_version":"0.16.0","repository_url":"https://github.com/python-hyper/h11"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"hf-xet","old_version":"1.5.1","new_version":"1.6.0","repository_url":"https://github.com/huggingface/xet-core"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"huggingface-hub","old_version":"1.22.0","new_version":"1.30.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"idna","old_version":"3.10","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.15.0","new_version":"0.16.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema-rs","old_version":"0.46.5","new_version":"0.53.0","repository_url":"https://github.com/Stranger6667/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llguidance","old_version":"1.7.6","new_version":"1.8.0","repository_url":"https://github.com/microsoft/llguidance"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.1.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.20.0.48","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.1","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.29.7","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"peft","old_version":"0.19.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.7","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pydantic-settings","old_version":"2.14.2","new_version":"2.15.0","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pyrate-limiter","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/vutran1710/PyrateLimiter"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"rignore","old_version":"0.7.6","new_version":"0.8.1"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"schemathesis","old_version":"4.21.6","new_version":"4.25.2","repository_url":"https://github.com/schemathesis/schemathesis"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"sentry-sdk","old_version":"2.63.0","new_version":"2.68.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"triton","old_version":"3.7.1","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.26.8","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.4","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.6","repository_url":"https://github.com/astral-sh/ruff"},{"name":"zentorch","old_version":"2.11.0.0","new_version":"2.13.0.0","repository_url":"https://github.com/amd/ZenDNN-pytorch-plugin"},{"name":"helion","old_version":"1.1.0","new_version":"1.4.0","repository_url":"https://github.com/pytorch/helion"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 189 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [transformers](https://github.com/huggingface/transformers) | `5.14.1` | `5.16.1` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.2` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.136.3` | `0.141.1` |\n| [starlette](https://github.com/Kludex/starlette) | `1.3.1` | `1.6.0` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `8.0.2` | `8.1.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [pyzmq](https://github.com/zeromq/pyzmq) | `27.1.0` | `27.2.0` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `4.1.0` | `4.2.0` |\n| [pybase64](https://github.com/mayeut/pybase64) | `1.4.3` | `1.5.0` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| opentelemetry-semantic-conventions-ai | `0.4.13` | `0.5.1` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [torchcodec](https://github.com/pytorch/torchcodec) | `0.14.0+cu130` | `0.16.0` |\n| [auto-round-lib](https://github.com/intel/auto-round) | `0.14.1` | `0.15.0` |\n| [tpu-inference](https://github.com/vllm-project/tpu-inference) | `0.25.0` | `0.28.0` |\n| pynvvideocodec | `2.0.4` | `2.2.2` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.6.0` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.8` | `0.2.6` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.14.1` | `4.15.0` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [bitsandbytes](https://github.com/bitsandbytes-foundation/bitsandbytes) | `0.49.2` | `0.50.2` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.87` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.87` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| [cohere-melody](https://github.com/cohere-ai/melody) | `0.9.0` | `0.13.4` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.1` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.3.0` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.1` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| detect-installer | `0.1.0` | `0.2.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi-cloud-cli](https://github.com/fastapilabs/fastapi-cloud-cli) | `0.21.0` | `0.25.0` |\n| [fastar](https://github.com/DoctorJohn/fastar) | `0.11.0` | `0.12.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [hf-xet](https://github.com/huggingface/xet-core) | `1.5.1` | `1.6.0` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.22.0` | `1.30.0` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.19` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.15.0` | `0.16.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonschema-rs](https://github.com/Stranger6667/jsonschema) | `0.46.5` | `0.53.0` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llguidance](https://github.com/microsoft/llguidance) | `1.7.6` | `1.8.0` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.1.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.20.0.48` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.1` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.29.7` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [peft](https://github.com/huggingface/peft) | `0.19.1` | `0.20.0` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.7` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.14.2` | `2.15.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pyrate-limiter](https://github.com/vutran1710/PyrateLimiter) | `4.4.0` | `4.5.0` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| rignore | `0.7.6` | `0.8.1` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [schemathesis](https://github.com/schemathesis/schemathesis) | `4.21.6` | `4.25.2` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.63.0` | `2.68.1` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [triton](https://github.com/triton-lang/triton) | `3.7.1` | `3.8.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.26.8` | `0.27.2` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.4` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.6` |\n| [zentorch](https://github.com/amd/ZenDNN-pytorch-plugin) | `2.11.0.0` | `2.13.0.0` |\n| [helion](https://github.com/pytorch/helion) | `1.1.0` | `1.4.0` |\n\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 5.14.1 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\n\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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.14.1...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.2\u003c/h2\u003e\n\u003cp\u003eThis is the last v0 release, we are moving to v1!!\u003c/p\u003e\n\u003cp\u003eMore details coming soon 👀\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate daachorse from 1.0.1 to 3.0.0 by \u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2050\"\u003ehuggingface/tokenizers#2050\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCi test fixes by \u003ca href=\"https://github.com/sebpop\"\u003e\u003ccode\u003e@​sebpop\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2079\"\u003ehuggingface/tokenizers#2079\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid full vocab clone in get_vocab_size() by \u003ca href=\"https://github.com/eunseo9311\"\u003e\u003ccode\u003e@​eunseo9311\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2074\"\u003ehuggingface/tokenizers#2074\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: pin benchmark jobs to a larger dedicated runner by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2084\"\u003ehuggingface/tokenizers#2084\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: target benchmark runners by group, not nonexistent label by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2090\"\u003ehuggingface/tokenizers#2090\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBindings: acquire model read-lock once per call instead of per pre-token by \u003ca href=\"https://github.com/sebpop\"\u003e\u003ccode\u003e@​sebpop\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2072\"\u003ehuggingface/tokenizers#2072\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: split audit in a separate job by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2103\"\u003ehuggingface/tokenizers#2103\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: install libcairo on benchmark runners by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2100\"\u003ehuggingface/tokenizers#2100\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(ci): enable npm's trusted publisher for releases by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2111\"\u003ehuggingface/tokenizers#2111\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: bump pyo3 to version 0.29 by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2115\"\u003ehuggingface/tokenizers#2115\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: add benchmarks for the \u003ccode\u003edecode\u003c/code\u003e API by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2099\"\u003ehuggingface/tokenizers#2099\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: cache HF test data and authenticate Hub downloads to avoid rate limits by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2102\"\u003ehuggingface/tokenizers#2102\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImplementing Parity-aware BPE by \u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/1974\"\u003ehuggingface/tokenizers#1974\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake doc builds faster by \u003ca href=\"https://github.com/mishig25\"\u003e\u003ccode\u003e@​mishig25\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2158\"\u003ehuggingface/tokenizers#2158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump websocket-driver from 0.7.4 to 0.7.5 in /tokenizers/examples/unstable_wasm/www 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/huggingface/tokenizers/pull/2208\"\u003ehuggingface/tokenizers#2208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump shell-quote from 1.8.3 to 1.10.0 in /tokenizers/examples/unstable_wasm/www 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/huggingface/tokenizers/pull/2244\"\u003ehuggingface/tokenizers#2244\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: remove stale examples (kills 50% of dependabot traffic) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2285\"\u003ehuggingface/tokenizers#2285\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(node): drop 8 unused devDependencies by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2286\"\u003ehuggingface/tokenizers#2286\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: pin every action to one SHA, drop stale audit suppressions by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2291\"\u003ehuggingface/tokenizers#2291\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(node): take node security alerts from 33 to 0 by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2287\"\u003ehuggingface/tokenizers#2287\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(python): pin the ruff rule set so a ruff release can't redden main by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2292\"\u003ehuggingface/tokenizers#2292\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a ParityBpeTrainer example and list it in the trainers API docs by \u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2217\"\u003ehuggingface/tokenizers#2217\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/eunseo9311\"\u003e\u003ccode\u003e@​eunseo9311\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2074\"\u003ehuggingface/tokenizers#2074\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/1974\"\u003ehuggingface/tokenizers#1974\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.23.1...v0.23.2\"\u003ehttps://github.com/huggingface/tokenizers/compare/v0.23.1...v0.23.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\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/huggingface/tokenizers/commit/88a4498ad4ea1a9487b0a9b0ff881383fd5a06a3\"\u003e\u003ccode\u003e88a4498\u003c/code\u003e\u003c/a\u003e add lock\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/e4ea65f27057e593656ff1335b95afe2e552b88d\"\u003e\u003ccode\u003ee4ea65f\u003c/code\u003e\u003c/a\u003e real release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/7c5964b4afae7b710d254eacd5a9fa180ba2cfef\"\u003e\u003ccode\u003e7c5964b\u003c/code\u003e\u003c/a\u003e add lock\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bc405ad60991a0639f8b09b40f13f91c38e50e87\"\u003e\u003ccode\u003ebc405ad\u003c/code\u003e\u003c/a\u003e push rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/d5827816baedcbf1cb5b452dea8048150b6872df\"\u003e\u003ccode\u003ed582781\u003c/code\u003e\u003c/a\u003e Add a ParityBpeTrainer example and list it in the trainers API docs (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2217\"\u003e#2217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/447890f84deab25794ccfdee2a877901b6893569\"\u003e\u003ccode\u003e447890f\u003c/code\u003e\u003c/a\u003e fix(python): pin the ruff rule set so a ruff release can't redden main (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2292\"\u003e#2292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/68b3ab7788b58408f37a3dc73eeabf2417d14c22\"\u003e\u003ccode\u003e68b3ab7\u003c/code\u003e\u003c/a\u003e chore(node): take node security alerts from 33 to 0 (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2287\"\u003e#2287\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/74ef81f64e6d1cd4979c56d7d75f3ce21ba11992\"\u003e\u003ccode\u003e74ef81f\u003c/code\u003e\u003c/a\u003e ci: pin every action to one SHA, drop stale audit suppressions (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2291\"\u003e#2291\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b26727f1a92cdf727cd965fc1c467a7c77c63aae\"\u003e\u003ccode\u003eb26727f\u003c/code\u003e\u003c/a\u003e chore(node): drop 8 unused devDependencies (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2286\"\u003e#2286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/7c7cfd838fb79e76aaba6b0931898073a784fb2a\"\u003e\u003ccode\u003e7c7cfd8\u003c/code\u003e\u003c/a\u003e chore: remove stale examples (kills 50% of dependabot traffic) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2285\"\u003e#2285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `fastapi` from 0.136.3 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15093\"\u003e#15093\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.10\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling sequences with nested Annotated types. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14874\"\u003e#14874\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Accept any base test failure as regression. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16092\"\u003e#16092\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Preserve pytest exit code in regression check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16091\"\u003e#16091\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Test PR regressions against base code. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16090\"\u003e#16090\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.9\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eexclude_defaults\u003c/code\u003e not propagated to dict keys and values in \u003ccode\u003ejsonable_encoder\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16043\"\u003e#16043\u003c/a\u003e by \u003ca href=\"https://github.com/MBGrao\"\u003e\u003ccode\u003e@​MBGrao\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\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/fastapi/fastapi/commit/95f8322ee1dcda7ceace7b1c4f6c9915b36d748f\"\u003e\u003ccode\u003e95f8322\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16106\"\u003e#16106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f137944c435cff4e4b30ea7d12855ea88ddb868c\"\u003e\u003ccode\u003ef137944\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d62354434b2e508fe89024213b220ca8e67dea5e\"\u003e\u003ccode\u003ed623544\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for background tasks and headers from dependencies in `app.fron...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1d211b9c1009d577f39fa2b19b10d9a93a72a0ed\"\u003e\u003ccode\u003e1d211b9\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8a1f8768411e62093e70ce142ea10863a485643c\"\u003e\u003ccode\u003e8a1f876\u003c/code\u003e\u003c/a\u003e 📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16104\"\u003e#16104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c7e7b651d6946c07cc9f675f39c9501d08319e57\"\u003e\u003ccode\u003ec7e7b65\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.0 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16103\"\u003e#16103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/6bceb84053eb2405e9c000aad30ea13367b5ee32\"\u003e\u003ccode\u003e6bceb84\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/5429fed84e84e32672c25a953eca3429b841ce90\"\u003e\u003ccode\u003e5429fed\u003c/code\u003e\u003c/a\u003e ✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more conven...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/628663f4f899c465da423bce681c7adf9a218948\"\u003e\u003ccode\u003e628663f\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.140.13 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16096\"\u003e#16096\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/0b54fd00273019034dd30b120ac842e65d80690e\"\u003e\u003ccode\u003e0b54fd0\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.136.3...0.141.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `starlette` from 1.3.1 to 1.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kludex/starlette/releases\"\u003estarlette's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.6.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003emax_body_size\u003c/code\u003e to \u003ccode\u003eStarlette\u003c/code\u003e and route classes by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3431\"\u003eKludex/starlette#3431\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ehttp.response.debug\u003c/code\u003e info via response extensions by \u003ca href=\"https://github.com/y2kbugger\"\u003e\u003ccode\u003e@​y2kbugger\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3130\"\u003eKludex/starlette#3130\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/y2kbugger\"\u003e\u003ccode\u003e@​y2kbugger\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3130\"\u003eKludex/starlette#3130\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/starlette/compare/1.5.1...1.6.0\"\u003ehttps://github.com/Kludex/starlette/compare/1.5.1...1.6.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.5.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eReject inverted single-byte Range like \u003ccode\u003ebytes=5-4\u003c/code\u003e by \u003ca href=\"https://github.com/nikolauspschuetz\"\u003e\u003ccode\u003e@​nikolauspschuetz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3389\"\u003eencode/starlette#3389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLimit \u003ccode\u003eFileResponse\u003c/code\u003e to 100 ranges by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3430\"\u003eencode/starlette#3430\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/encode/starlette/compare/1.5.0...1.5.1\"\u003ehttps://github.com/encode/starlette/compare/1.5.0...1.5.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.5.0\u003c/h2\u003e\n\u003cp\u003eThis release is all about giving \u003ccode\u003eGZipMiddleware\u003c/code\u003e some love. 🗜️\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eexclude_content_types\u003c/code\u003e parameter to \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3418\"\u003eencode/starlette#3418\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlush GZip output for each streamed chunk by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3419\"\u003eencode/starlette#3419\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSkip compression of partial responses in \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3420\"\u003eencode/starlette#3420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpand default excluded content types in \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3421\"\u003eencode/starlette#3421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/encode/starlette/compare/1.4.1...1.5.0\"\u003ehttps://github.com/encode/starlette/compare/1.4.1...1.5.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.4.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault \u003ccode\u003ethread_minimum_size\u003c/code\u003e in \u003ccode\u003eGZipResponder\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3415\"\u003eKludex/starlette#3415\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/starlette/compare/1.4.0...1.4.1\"\u003ehttps://github.com/Kludex/starlette/compare/1.4.0...1.4.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLazily allocate GZipMiddleware compression resourc...\n\n_Description has been truncated_","html_url":"https://github.com/codesque16/vllm_fork_testing/pull/19","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/codesque16%2Fvllm_fork_testing/issues/19","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/19/packages"}},{"old_version":"0.24.0","new_version":"1.30.0","update_type":"major","path":"/service/scripts","pr_created_at":"2026-09-06T14:01:41.000Z","version_change":"0.24.0 → 1.30.0","issue":{"uuid":"5365413929","node_id":"PR_kwDOUPb-sM8AAAABCaCgCA","number":11,"state":"closed","title":"build(deps): bump the optional-backends group in /service/scripts with 6 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-09-06T14:06:51.000Z","author_association":null,"state_reason":null,"created_at":"2026-09-06T14:01:41.000Z","updated_at":"2026-09-06T14:06:52.000Z","time_to_close":310,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"optional-backends","update_count":6,"packages":[{"name":"diffusers","old_version":"0.27.2","new_version":"0.40.0","repository_url":"https://github.com/huggingface/diffusers"},{"name":"transformers","old_version":"4.37.2","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"huggingface-hub","old_version":"0.24.0","new_version":"1.30.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.2","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"sentence-transformers","old_version":"6.0.0","new_version":"6.0.1","repository_url":"https://github.com/huggingface/sentence-transformers"}],"path":"/service/scripts","ecosystem":"pip"},"body":"Updates the requirements on [diffusers](https://github.com/huggingface/diffusers), [transformers](https://github.com/huggingface/transformers), [huggingface-hub](https://github.com/huggingface/huggingface_hub), [torch](https://github.com/pytorch/pytorch), [tokenizers](https://github.com/huggingface/tokenizers) and [sentence-transformers](https://github.com/huggingface/sentence-transformers) to permit the latest version.\nUpdates `diffusers` from 0.27.2 to 0.40.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/diffusers/releases\"\u003ediffusers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eDiffusers 0.40.0: New pipelines, tensor-parallel support, improved CLI, and more\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!TIP]\nThis release features several new pipelines, including LTX2.5, MiniMax H3, and Wan Animate 2. We're also graduating Modular Diffusers out of the experimental phase and announcing its stable support. Additionally, this release includes minimal support for tensor-parallel. There's a lot more that went down in this release. So, please consult the notes for details.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch2\u003eNew Pipelines\u003c/h2\u003e\n\u003ch3\u003eMiniMax-H3\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://huggingface.co/docs/diffusers/main/api/pipelines/minimax_h3\"\u003e\u003cstrong\u003eMiniMax-H3\u003c/strong\u003e\u003c/a\u003e generates video and its soundtrack together. A single transformer denoises one packed sequence containing the text conditioning, the conditioning media, and the target video \u003cem\u003eand\u003c/em\u003e audio latents — there is no separate vocoder and no post-hoc audio pass. Its conditioner is a \u003ccode\u003eQwen3VLForConditionalGeneration\u003c/code\u003e whose unnormalized 50th-decoder-layer hidden state is read instead of the last one.\u003c/p\u003e\n\u003cp\u003eMiniMax-H3 is integrated as \u003ca href=\"https://huggingface.co/docs/diffusers/main/modular_diffusers/overview\"\u003eModular Diffusers\u003c/a\u003e blocks only — \u003ccode\u003eMiniMaxH3Blocks\u003c/code\u003e and their \u003ccode\u003eMiniMaxH3ModularPipeline\u003c/code\u003e are the whole integration. The conversion ships both checkpoint partitions in one repository and exposes three workflows (\u003ccode\u003et2va\u003c/code\u003e, \u003ccode\u003efl2va\u003c/code\u003e, \u003ccode\u003eref2va\u003c/code\u003e) that can be pruned at \u003ccode\u003efrom_pretrained\u003c/code\u003e time so only that task's components are declared and downloaded.\u003c/p\u003e\n\u003ch3\u003eMiniMax Music 3\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://huggingface.co/docs/diffusers/main/api/pipelines/minimax_music3\"\u003e\u003cstrong\u003eMiniMax Music 3\u003c/strong\u003e\u003c/a\u003e produces complete songs up to five minutes long from lyrics and a music description, with expressive vocals and long-range structure. It is a hybrid of an autoregressive and a diffusion stage: an 8B Qwen3-based global language model predicts one semantic audio token per frame while a small depth decoder fills in seven residual RVQ codebooks, and their fused hidden states condition a 2.4B flow-matching transformer that produces Flow-VAE latents in overlapping chunks. A DAC-style decoder turns the latents into 44.1 kHz stereo audio.\u003c/p\u003e\n\u003ch3\u003eStable Audio 3\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://huggingface.co/docs/diffusers/main/api/pipelines/stable_audio_3\"\u003e\u003cstrong\u003eStable Audio 3\u003c/strong\u003e\u003c/a\u003e is a text-to-audio model from Stability AI that generates high-quality stereo audio at 44.1 kHz. It uses a rectified-flow DiT conditioned on a frozen T5Gemma text encoder (via cross-attention) and on duration (a float embedded by \u003ccode\u003eStableAudio3DurationEmbedder\u003c/code\u003e and used for adaptive layer norm), and decodes with the SAME (Semantically-Aligned Music Encoder) autoencoder, \u003ccode\u003eAutoencoderSAME\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThree pipelines ship: \u003ccode\u003eStableAudio3Pipeline\u003c/code\u003e, \u003ccode\u003eStableAudio3AudioToAudioPipeline\u003c/code\u003e, and \u003ccode\u003eStableAudio3InpaintPipeline\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/buffett0323\"\u003e\u003ccode\u003e@​buffett0323\u003c/code\u003e\u003c/a\u003e for the contribution (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/pull/14119\"\u003ehuggingface/diffusers#14119\u003c/a\u003e).\u003c/p\u003e\n\u003ch3\u003eLTX-2.5\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://huggingface.co/docs/diffusers/main/api/pipelines/ltx2#ltx-25\"\u003e\u003cstrong\u003eLTX-2.5\u003c/strong\u003e\u003c/a\u003e reuses the existing \u003ccode\u003eLTX2Pipeline\u003c/code\u003e / \u003ccode\u003eLTX2VideoTransformer3DModel\u003c/code\u003e / \u003ccode\u003eAutoencoderKLLTX2Video\u003c/code\u003e classes — there is no separate pipeline class. The user-visible difference is the text encoder: LTX-2.5 is paired with a Gemma 4 (\u003ccode\u003egemma4_unified\u003c/code\u003e) checkpoint, loaded automatically from a converted LTX-2.5 repo.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://huggingface.co/Lightricks/LTX-2.5-Diffusers\"\u003e\u003ccode\u003eLightricks/LTX-2.5-Diffusers\u003c/code\u003e\u003c/a\u003e ships both the distilled DiT (\u003ccode\u003etransformer/\u003c/code\u003e) and the full/SFT DiT (\u003ccode\u003etransformer_full/\u003c/code\u003e), plus everything two-stage generation needs. Alongside the checkpoint support, this release adds:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eLTX2VideoDiffusionDecoderModel\u003c/code\u003e and \u003ccode\u003eLTX2VideoDiffusionDecodePipeline\u003c/code\u003e — a second video decoder over the same latent space, so latents are interchangeable between decoders.\u003c/li\u003e\n\u003cli\u003eA \u003ccode\u003eduration_head\u003c/code\u003e that predicts shot length from the text-connector output, so \u003ccode\u003enum_frames\u003c/code\u003e is auto-predicted by default when the loaded pipeline has one.\u003c/li\u003e\n\u003cli\u003ePrompt enhancement through a separate off-the-shelf \u003ccode\u003egoogle/gemma-4-E2B-it\u003c/code\u003e checkpoint (\u003ccode\u003eenable_prompt_enhancement=True\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eLTX25AutoBlocks\u003c/code\u003e for Modular Diffusers (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/pull/14453\"\u003e#14453\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eWan-Animate-2\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://huggingface.co/docs/diffusers/main/api/pipelines/wan_animate_2\"\u003e\u003cstrong\u003eWan-Animate-2\u003c/strong\u003e\u003c/a\u003e by the Alibaba Wan Team animates a reference character image with the motion of a driving video. The driving video is processed in fixed-length segments: each segment runs a reference-extraction pass that caches the driving segment's K/V in every transformer layer, denoises against that cache, and is decoded inside the loop, because the next segment conditions on the previous segment's decoded tail frames.\u003c/p\u003e\n\u003cp\u003eTwo presets are available — the base checkpoint samples with classifier-free guidance, and the distilled checkpoint samples in few steps without it. Guidance is owned by the pipeline's guider component, so there is no \u003ccode\u003eguidance_scale\u003c/code\u003e argument.\u003c/p\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/kelseyee\"\u003e\u003ccode\u003e@​kelseyee\u003c/code\u003e\u003c/a\u003e for authoring the integration (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/pull/14413\"\u003ehuggingface/diffusers#14413\u003c/a\u003e).\u003c/p\u003e\n\u003ch3\u003eJoyAI-Image-Edit-Plus\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://huggingface.co/docs/diffusers/main/api/pipelines/joyimage_edit_plus\"\u003e\u003cstrong\u003eJoyAI-Image-Edit-Plus\u003c/strong\u003e\u003c/a\u003e extends the JoyAI-Image family (an 8B MLLM paired with a 16B MMDiT) to multi-image instruction-guided editing. It accepts 1–5 reference images plus a text instruction and composes elements from the references into a new image.\u003c/p\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/tangyanf\"\u003e\u003ccode\u003e@​tangyanf\u003c/code\u003e\u003c/a\u003e for the contribution (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/pull/14032\"\u003ehuggingface/diffusers#14032\u003c/a\u003e).\u003c/p\u003e\n\u003ch3\u003eCosmos 3 follow-ups\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/huggingface/diffusers/commit/d035dcd7cc7c88e0a154609b62887d50bba9fdc2\"\u003e\u003ccode\u003ed035dcd\u003c/code\u003e\u003c/a\u003e Release: v0.40.0-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/5900dbf0daf2044a4cb3c0e8e185933148dee84a\"\u003e\u003ccode\u003e5900dbf\u003c/code\u003e\u003c/a\u003e [CI] Fix build and test step in release workflow (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/14543\"\u003e#14543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/3681e65996b4d2589219720101a6acbfd25073f8\"\u003e\u003ccode\u003e3681e65\u003c/code\u003e\u003c/a\u003e Restructure skill files and reference guides for CLI based installation.  (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/192cf685ec4a3f930f3f4c508f439731fca810f2\"\u003e\u003ccode\u003e192cf68\u003c/code\u003e\u003c/a\u003e [distributed] fix corrupted gradient problem under ring CP. (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/14274\"\u003e#14274\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/0aa743c08d153ba0df46bbe024a02cfaf658aec8\"\u003e\u003ccode\u003e0aa743c\u003c/code\u003e\u003c/a\u003e [tests] migrate lora tests for pipelines to use new mixins (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/14268\"\u003e#14268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/4e0466f3e5260f0d78b5e2b68ffbf27d819cc6db\"\u003e\u003ccode\u003e4e0466f\u003c/code\u003e\u003c/a\u003e fix: image preprocessing for cosmos3 (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/14519\"\u003e#14519\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/ac56fa2f25c1c15b4cbaa1e0b3255e9bc38c06dc\"\u003e\u003ccode\u003eac56fa2\u003c/code\u003e\u003c/a\u003e [CI] Fix authentication on forked PRs (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/14534\"\u003e#14534\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/7d2e86a85a372df75ee2ccefe84e5a44cfc60429\"\u003e\u003ccode\u003e7d2e86a\u003c/code\u003e\u003c/a\u003e [core] Support tensor parallelism for model inference (CUDA, Neuron) (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/13718\"\u003e#13718\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/360bef807475899c2e4d7d99c2f371148a78b1a7\"\u003e\u003ccode\u003e360bef8\u003c/code\u003e\u003c/a\u003e Feat -- Stable Audio 3 (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/14119\"\u003e#14119\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/diffusers/commit/aeda394db7d2f8a62475f2114da3b92e9588c42f\"\u003e\u003ccode\u003eaeda394\u003c/code\u003e\u003c/a\u003e [CI] Allow single file tests to run as fast tests  (\u003ca href=\"https://redirect.github.com/huggingface/diffusers/issues/14324\"\u003e#14324\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/diffusers/compare/v0.27.2...v0.40.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 4.37.2 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- 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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v4.37.2...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 0.24.0 to 1.30.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.30.0] Scheduled job filters, repo-aware revision pinning and more\u003c/h2\u003e\n\u003ch2\u003e🖥️ \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e can now filter by status, label and name\u003c/h2\u003e\n\u003cp\u003eYou can now filter scheduled jobs with \u003ccode\u003e--status\u003c/code\u003e (\u003ccode\u003eactive\u003c/code\u003e/\u003ccode\u003esuspended\u003c/code\u003e), repeatable \u003ccode\u003e-l\u003c/code\u003e/\u003ccode\u003e--label key=value\u003c/code\u003e and \u003ccode\u003e--name\u003c/code\u003e (a shortcut for \u003ccode\u003e--label name=NAME\u003c/code\u003e), matching the flags \u003ccode\u003ehf jobs ls\u003c/code\u003e already had. On the Python side, \u003ccode\u003eHfApi.list_scheduled_jobs\u003c/code\u003e gains a \u003ccode\u003elabels\u003c/code\u003e argument.\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\n\u003ccode\u003e-f\u003c/code\u003e/\u003ccode\u003e--filter\u003c/code\u003e on \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e is deprecated and no longer applied: it is accepted but ignored, with a warning pointing to the new flags. Migrate as shown below. The option itself will be removed in a future release.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003ehf jobs scheduled ls --all\r\nhf jobs scheduled ls --status suspended\r\nhf jobs scheduled ls --name hourly-task --label env=prod\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebefore\u003c/th\u003e\n\u003cth\u003eafter\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f name=daily-report\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--name daily-report\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f env=prod\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--label env=prod\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f suspend!=true\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e(default, or \u003ccode\u003e--status active\u003c/code\u003e)\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003e-f suspend=true\u003c/code\u003e\u003c/td\u003e\n\u003ctd\u003e\u003ccode\u003e--status suspended\u003c/code\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/jobs\"\u003eJobs guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAlign \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e filtering with \u003ccode\u003ehf jobs ls\u003c/code\u003e (\u003ccode\u003e--status\u003c/code\u003e/\u003ccode\u003e--label\u003c/code\u003e/\u003ccode\u003e--name\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4773\"\u003e#4773\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔖 \u003ccode\u003eResolvedRevision\u003c/code\u003e now pins the repo it was resolved for\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003eResolvedRevision\u003c/code\u003e didn't record which repo a commit hash was resolved against, so resolving \u003ccode\u003e\u0026quot;main\u0026quot;\u003c/code\u003e on two different repos returned the same commit oid. It now remembers its \u003ccode\u003erepo_id\u003c/code\u003e and \u003ccode\u003erepo_type\u003c/code\u003e: passed back for the same repo it is returned as is, for a different repo the requested revision is resolved again.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import resolve_revision\r\n\u0026gt;\u0026gt;\u0026gt; revision = resolve_revision(\u0026quot;openai-community/gpt2\u0026quot;)\r\n\u003ch1\u003eSame repo =\u0026gt; returned as is\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; resolve_revision(\u0026quot;openai-community/gpt2\u0026quot;, revision=revision) is revision\nTrue\u003c/p\u003e\n\u003ch1\u003eAnother repo =\u0026gt; \u0026quot;main\u0026quot; is resolved again for that repo\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; resolve_revision(\u0026quot;openai-community/gpt2-medium\u0026quot;, revision=revision).resolved\n'6dcaa7a952f72f9298047fd5137cd6e4f05f41da'\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/manage-cache#pin-a-revision-advanced\"\u003eManage cache — Pin a revision\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Download] A \u003ccode\u003eResolvedRevision\u003c/code\u003e only pins the repo it was resolved for by \u003ca href=\"https://github.com/Wauplin\"\u003e\u003ccode\u003e@​Wauplin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4767\"\u003e#4767\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDo not require the \u003ccode\u003econversational\u003c/code\u003e tag for chat-completion on hf-inference: any model with pipeline tag \u003ccode\u003etext-generation\u003c/code\u003e or \u003ccode\u003eimage-text-to-text\u003c/code\u003e can now be served, mirroring the updated provider-side rules by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4784\"\u003e#4784\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/huggingface/huggingface_hub/commit/48ef2781c2c4c2247431c97efcd5487e89d42732\"\u003e\u003ccode\u003e48ef278\u003c/code\u003e\u003c/a\u003e Release: v1.30.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/a073ecb91bfdb5966d1fcf22623e4f83faf0c853\"\u003e\u003ccode\u003ea073ecb\u003c/code\u003e\u003c/a\u003e Release: v1.30.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b84090bcbcd96eeaf4c78b6280b2ce2cea528288\"\u003e\u003ccode\u003eb84090b\u003c/code\u003e\u003c/a\u003e [Release] Consolidate the HF CLI skill sync into the release workflow (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4765\"\u003e#4765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/176d4f378d49e699c811b18e21765ef5a1763c91\"\u003e\u003ccode\u003e176d4f3\u003c/code\u003e\u003c/a\u003e [CI] Disable auto close (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4800\"\u003e#4800\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/f0a5c6d08298760b2a030c4c5df608369632b7e1\"\u003e\u003ccode\u003ef0a5c6d\u003c/code\u003e\u003c/a\u003e [Inference Providers] Do not require the conversational tag for chat-completi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/6a2eb09daf1f9258e7f69c1d50a870fdb7235742\"\u003e\u003ccode\u003e6a2eb09\u003c/code\u003e\u003c/a\u003e [Sandbox] Document experimental status (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4783\"\u003e#4783\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/94cb25dada381d14e54b16dcfe92436be244fca9\"\u003e\u003ccode\u003e94cb25d\u003c/code\u003e\u003c/a\u003e [CI] Fix torch_1.11 case-arm label to match renamed matrix entry (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4776\"\u003e#4776\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4cc16bc22402e2a540f60d05beb406921072a032\"\u003e\u003ccode\u003e4cc16bc\u003c/code\u003e\u003c/a\u003e [Download] A \u003ccode\u003eResolvedRevision\u003c/code\u003e only pins the repo it was resolved for (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4767\"\u003e#4767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/1de481786c0440d6de2cea38bab4faa88612e821\"\u003e\u003ccode\u003e1de4817\u003c/code\u003e\u003c/a\u003e [Download] Follow redirects between Hub hosts when resolving files (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4739\"\u003e#4739\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/97655e88b1c1374b0576659c6a7ffe8c59cedfcb\"\u003e\u003ccode\u003e97655e8\u003c/code\u003e\u003c/a\u003e Align \u003ccode\u003ehf jobs scheduled ls\u003c/code\u003e filtering with \u003ccode\u003ehf jobs ls\u003c/code\u003e (\u003ccode\u003e--status\u003c/code\u003e/`--label...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v0.24.0...v1.30.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `torch` to 2.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytorch/pytorch/releases\"\u003etorch's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ePyTorch 2.14.0 Release Notes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#highlights\"\u003eHighlights\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#backwards-incompatible-changes\"\u003eBackwards Incompatible Changes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#deprecations\"\u003eDeprecations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#new-features\"\u003eNew Features\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#improvements\"\u003eImprovements\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#bug-fixes\"\u003eBug fixes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#performance\"\u003ePerformance\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#documentation\"\u003eDocumentation\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#security\"\u003eSecurity\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#developers\"\u003eDevelopers\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eHighlights\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003eFor more details about these highlighted features, you can look at the release blogpost. Below are the full release notes for this release.\u003c/p\u003e\n\u003ch1\u003eBackwards Incompatible Changes\u003c/h1\u003e\n\u003ch2\u003etorch.nn\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003etorch.nn.LinearCrossEntropyOptions\u003c/code\u003e no longer accepts \u003ccode\u003eacc_policy=\u0026quot;balanced\u0026quot;\u003c/code\u003e; use \u003ccode\u003e\u0026quot;compact\u0026quot;\u003c/code\u003e instead (\u003ca href=\"https://redirect.github.com/pytorch/pytorch/issues/188283\"\u003e#188283\u003c/a\u003e)\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003e\u0026quot;balanced\u0026quot;\u003c/code\u003e policy was removed because \u003ccode\u003e\u0026quot;compact\u0026quot;\u003c/code\u003e provides the same weight-gradient accumulation precision with lower memory use on CUDA, already uses the equivalent scratch layout for mixed-precision inputs on other devices, and was never selected by \u003ccode\u003e\u0026quot;auto\u0026quot;\u003c/code\u003e. Constructing the options with \u003ccode\u003eacc_policy=\u0026quot;balanced\u0026quot;\u003c/code\u003e now raises \u003ccode\u003eValueError: invalid acc_policy: 'balanced'; expected one of 'auto', 'accurate', 'compact'\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eBefore:\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eoptions = torch.nn.LinearCrossEntropyOptions(acc_policy=\u0026quot;balanced\u0026quot;)\r\nloss = torch.nn.functional.linear_cross_entropy(\r\n    input, linear_weight, target, options=options\r\n)\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eAfter:\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eoptions = torch.nn.LinearCrossEntropyOptions(acc_policy=\u0026quot;compact\u0026quot;)\r\nloss = torch.nn.functional.linear_cross_entropy(\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytorch/pytorch/blob/main/RELEASE.md\"\u003etorch's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eReleasing PyTorch\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#release-compatibility-matrix\"\u003eRelease Compatibility Matrix\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#pytorch-cuda-support-matrix\"\u003ePyTorch CUDA Support Matrix\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#release-cadence\"\u003eRelease Cadence\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#general-overview\"\u003eGeneral Overview\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#frequently-asked-questions\"\u003eFrequently Asked Questions\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#cutting-a-release-branch-preparations\"\u003eCutting a release branch preparations\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#cutting-release-branches\"\u003eCutting release branches\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#pytorchpytorch\"\u003e\u003ccode\u003epytorch/pytorch\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#pytorch-ecosystem-libraries\"\u003ePyTorch ecosystem libraries\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#making-release-branch-specific-changes-for-pytorch\"\u003eMaking release branch specific changes for PyTorch\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#making-release-branch-specific-changes-for-ecosystem-libraries\"\u003eMaking release branch specific changes for ecosystem libraries\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#running-launch-execution-team-core-xfn-sync\"\u003eRunning Launch Execution team Core XFN sync\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"#drafting-rcs-release-candidates-for-pytorch-and-domain-libraries\"\u003eDrafting RCs (https://github.com/pytorch/pytorch/blob/main/Release Candidates) for PyTorch and domain libraries\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#release-candidate-storage\"\u003eRelease Candidate Storage\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#release-candidate-health-validation\"\u003eRelease Candidate health validation\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#cherry-picking-fixes\"\u003eCherry Picking Fixes\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#how-to-do-cherry-picking\"\u003eHow to do Cherry Picking\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#cherry-picking-reverts\"\u003eCherry Picking Reverts\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#preparing-and-creating-final-release-candidate\"\u003ePreparing and Creating Final Release Candidate\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#promoting-rcs-to-stable\"\u003ePromoting RCs to Stable\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#additional-steps-to-prepare-for-release-day\"\u003eAdditional Steps to prepare for release day\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#modify-release-matrix\"\u003eModify release matrix\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#open-google-colab-issue\"\u003eOpen Google Colab issue\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#patch-releases\"\u003ePatch Releases\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#patch-release-criteria\"\u003ePatch Release Criteria\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#patch-release-process\"\u003ePatch Release Process\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#patch-release-process-description\"\u003ePatch Release Process Description\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#triage\"\u003eTriage\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#issue-tracker-for-patch-releases\"\u003eIssue Tracker for Patch releases\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#building-a-release-schedule--cherry-picking\"\u003eBuilding a release schedule / cherry picking\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#building-binaries--promotion-to-stable\"\u003eBuilding Binaries / Promotion to Stable\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#hardware--software-support-in-binary-build-matrix\"\u003eHardware / Software Support in Binary Build Matrix\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#python\"\u003ePython\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#accelerator-software\"\u003eAccelerator Software\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#special-support-cases\"\u003eSpecial support cases\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#operating-systems\"\u003eOperating Systems\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#submitting-tutorials\"\u003eSubmitting Tutorials\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#special-topics\"\u003eSpecial Topics\u003c/a\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#updating-submodules-for-a-release\"\u003eUpdating submodules for a release\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/main/#triton-dependency-for-the-release\"\u003eTriton dependency for the release\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eRelease Compatibility Matrix\u003c/h2\u003e\n\u003cp\u003eFollowing is the Release Compatibility Matrix for PyTorch releases:\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/pytorch/pytorch/commit/2b3ec34829036a65cd9d1398ea72a0167dc37470\"\u003e\u003ccode\u003e2b3ec34\u003c/code\u003e\u003c/a\u003e [release/2.14] Import SDPAParams in test_transformers to fix lint (\u003ca href=\"https://redirect.github.com/pytorch/pytorch/issues/194970\"\u003e#194970\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/08187d9e0fba026dc8217405802ab5381dc88d90\"\u003e\u003ccode\u003e08187d9\u003c/code\u003e\u003c/a\u003e [cuDNN] Add guards for cuDNN SDPA decode (\u003ca href=\"https://redirect.github.com/pytorch/pytorch/issues/194963\"\u003e#194963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/8ceea97051dec8f6bee23d24bd7704dcb6843ade\"\u003e\u003ccode\u003e8ceea97\u003c/code\u003e\u003c/a\u003e Pin cython \u0026lt; 3.3.0 for the Windows Triton wheel build (\u003ca href=\"https://redirect.github.com/pytorch/pytorch/issues/194931\"\u003e#194931\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/99ecebc63014f3454331b5a0914871daa063b512\"\u003e\u003ccode\u003e99ecebc\u003c/code\u003e\u003c/a\u003e [Cherry-pick][release/2.14] [inductor] Fix loop-local load CSE lifetime (\u003ca href=\"https://redirect.github.com/pytorch/pytorch/issues/194\"\u003e#194\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/ec283a75077fa3ee24a9cda2c58d2b24d95ca98c\"\u003e\u003ccode\u003eec283a7\u003c/code\u003e\u003c/a\u003e Bump the Python 3.15 numpy pin to 2.5.2 (\u003ca href=\"https://redirect.github.com/pytorch/pytorch/issues/194821\"\u003e#194821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/65890f364dd059ca97b9a37ada974eba8d8be772\"\u003e\u003ccode\u003e65890f3\u003c/code\u003e\u003c/a\u003e Fix docker-release validate job to use the channel matching the pushed image ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/168238882db0ad985f8904489604ff4955449fd2\"\u003e\u003ccode\u003e1682388\u003c/code\u003e\u003c/a\u003e Fix macOS py3.15 wheel builds: pin Cython \u0026lt; 3.3.0 and bump the cp315 numpy pi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/972441861b1aee44141b60c98c7875e7e4fe23ca\"\u003e\u003ccode\u003e9724418\u003c/code\u003e\u003c/a\u003e Fix Windows py3.15 builds: constrain Cython \u0026lt; 3.3.0 and bump the cp315 numpy ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/f1b755434c258b61307de00f680bb2dc9c50d592\"\u003e\u003ccode\u003ef1b7554\u003c/code\u003e\u003c/a\u003e [MPS] Fix pin_memory() recycling buffers still in use by the GPU (\u003ca href=\"https://redirect.github.com/pytorch/pytorch/issues/194662\"\u003e#194662\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/commit/9f205f7b38c08544132b001948ce9109c577c6ed\"\u003e\u003ccode\u003e9f205f7\u003c/code\u003e\u003c/a\u003e [MPS] fail loudly on large reductions (\u003ca href=\"https://redirect.github.com/pytorch/pytorch/issues/194661\"\u003e#194661\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytorch/pytorch/compare/v2.13.0-rc1...v2.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.2\u003c/h2\u003e\n\u003cp\u003eThis is the last v0 release, we are moving to v1!!\u003c/p\u003e\n\u003cp\u003eMore details coming soon 👀\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate daachorse from 1.0.1 to 3.0.0 by \u003ca href=\"https://github.com/musicinmybrain\"\u003e\u003ccode\u003e@​musicinmybrain\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2050\"\u003ehuggingface/tokenizers#2050\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCi test fixes by \u003ca href=\"https://github.com/sebpop\"\u003e\u003ccode\u003e@​sebpop\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2079\"\u003ehuggingface/tokenizers#2079\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAvoid full vocab clone in get_vocab_size() by \u003ca href=\"https://github.com/eunseo9311\"\u003e\u003ccode\u003e@​eunseo9311\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2074\"\u003ehuggingface/tokenizers#2074\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: pin benchmark jobs to a larger dedicated runner by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2084\"\u003ehuggingface/tokenizers#2084\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: target benchmark runners by group, not nonexistent label by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2090\"\u003ehuggingface/tokenizers#2090\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBindings: acquire model read-lock once per call instead of per pre-token by \u003ca href=\"https://github.com/sebpop\"\u003e\u003ccode\u003e@​sebpop\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2072\"\u003ehuggingface/tokenizers#2072\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: split audit in a separate job by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2103\"\u003ehuggingface/tokenizers#2103\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: install libcairo on benchmark runners by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2100\"\u003ehuggingface/tokenizers#2100\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(ci): enable npm's trusted publisher for releases by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2111\"\u003ehuggingface/tokenizers#2111\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: bump pyo3 to version 0.29 by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2115\"\u003ehuggingface/tokenizers#2115\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: add benchmarks for the \u003ccode\u003edecode\u003c/code\u003e API by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2099\"\u003ehuggingface/tokenizers#2099\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: cache HF test data and authenticate Hub downloads to avoid rate limits by \u003ca href=\"https://github.com/SBrandeis\"\u003e\u003ccode\u003e@​SBrandeis\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2102\"\u003ehuggingface/tokenizers#2102\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImplementing Parity-aware BPE by \u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/1974\"\u003ehuggingface/tokenizers#1974\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake doc builds faster by \u003ca href=\"https://github.com/mishig25\"\u003e\u003ccode\u003e@​mishig25\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2158\"\u003ehuggingface/tokenizers#2158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump websocket-driver from 0.7.4 to 0.7.5 in /tokenizers/examples/unstable_wasm/www 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/huggingface/tokenizers/pull/2208\"\u003ehuggingface/tokenizers#2208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps-dev): bump shell-quote from 1.8.3 to 1.10.0 in /tokenizers/examples/unstable_wasm/www 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/huggingface/tokenizers/pull/2244\"\u003ehuggingface/tokenizers#2244\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: remove stale examples (kills 50% of dependabot traffic) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2285\"\u003ehuggingface/tokenizers#2285\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(node): drop 8 unused devDependencies by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2286\"\u003ehuggingface/tokenizers#2286\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: pin every action to one SHA, drop stale audit suppressions by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2291\"\u003ehuggingface/tokenizers#2291\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(node): take node security alerts from 33 to 0 by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2287\"\u003ehuggingface/tokenizers#2287\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(python): pin the ruff rule set so a ruff release can't redden main by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2292\"\u003ehuggingface/tokenizers#2292\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a ParityBpeTrainer example and list it in the trainers API docs by \u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2217\"\u003ehuggingface/tokenizers#2217\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/eunseo9311\"\u003e\u003ccode\u003e@​eunseo9311\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/2074\"\u003ehuggingface/tokenizers#2074\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/cimeister\"\u003e\u003ccode\u003e@​cimeister\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/pull/1974\"\u003ehuggingface/tokenizers#1974\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.23.1...v0.23.2\"\u003ehttps://github.com/huggingface/tokenizers/compare/v0.23.1...v0.23.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\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/huggingface/tokenizers/commit/88a4498ad4ea1a9487b0a9b0ff881383fd5a06a3\"\u003e\u003ccode\u003e88a4498\u003c/code\u003e\u003c/a\u003e add lock\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/e4ea65f27057e593656ff1335b95afe2e552b88d\"\u003e\u003ccode\u003ee4ea65f\u003c/code\u003e\u003c/a\u003e real release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/7c5964b4afae7b710d254eacd5a9fa180ba2cfef\"\u003e\u003ccode\u003e7c5964b\u003c/code\u003e\u003c/a\u003e add lock\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bc405ad60991a0639f8b09b40f13f91c38e50e87\"\u003e\u003ccode\u003ebc405ad\u003c/code\u003e\u003c/a\u003e push rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/d5827816baedcbf1cb5b452dea8048150b6872df\"\u003e\u003ccode\u003ed582781\u003c/code\u003e\u003c/a\u003e Add a ParityBpeTrainer example and list it in the trainers API docs (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2217\"\u003e#2217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/447890f84deab25794ccfdee2a877901b6893569\"\u003e\u003ccode\u003e447890f\u003c/code\u003e\u003c/a\u003e fix(python): pin the ruff rule set so a ruff release can't redden main (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2292\"\u003e#2292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/68b3ab7788b58408f37a3dc73eeabf2417d14c22\"\u003e\u003ccode\u003e68b3ab7\u003c/code\u003e\u003c/a\u003e chore(node): take node security alerts from 33 to 0 (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2287\"\u003e#2287\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/74ef81f64e6d1cd4979c56d7d75f3ce21ba11992\"\u003e\u003ccode\u003e74ef81f\u003c/code\u003e\u003c/a\u003e ci: pin every action to one SHA, drop stale audit suppressions (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2291\"\u003e#2291\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b26727f1a92cdf727cd965fc1c467a7c77c63aae\"\u003e\u003ccode\u003eb26727f\u003c/code\u003e\u003c/a\u003e chore(node): drop 8 unused devDependencies (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2286\"\u003e#2286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/7c7cfd838fb79e76aaba6b0931898073a784fb2a\"\u003e\u003ccode\u003e7c7cfd8\u003c/code\u003e\u003c/a\u003e chore: remove stale examples (kills 50% of dependabot traffic) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2285\"\u003e#2285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentence-transformers` from 6.0.0 to 6.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/sentence-transformers/releases\"\u003esentence-transformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.0.1 - Restore the PyLate prefix on prompted checkpoints, 80 documented multi-vector models\u003c/h2\u003e\n\u003cp\u003eThis patch release fixes a multi-vector loading bug: PyLate checkpoints that carry both a \u003ccode\u003e[Q]\u003c/code\u003e/\u003ccode\u003e[D]\u003c/code\u003e prefix and a text prompt lost the prefix, so they were encoded without a marker they were trained with. It also grows the documented multi-vector model tables from 51 checkpoints to 80.\u003c/p\u003e\n\u003cp\u003eInstall this version with\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Training + Inference\r\npip install sentence-transformers[train]==6.0.1\r\n\u003ch1\u003eInference only, use one of:\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers==6.0.1\npip install sentence-transformers[onnx-gpu]==6.0.1\npip install sentence-transformers[onnx]==6.0.1\npip install sentence-transformers[openvino]==6.0.1\u003c/p\u003e\n\u003ch1\u003eMultimodal dependencies (optional):\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers[image]==6.0.1\npip install sentence-transformers[audio]==6.0.1\npip install sentence-transformers[video]==6.0.1\u003c/p\u003e\n\u003ch1\u003eOr combine as needed:\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers[train,onnx,image]==6.0.1\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003eCompose the PyLate prefix with the saved prompt (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3968\"\u003e#3968\u003c/a\u003e)\u003c/h2\u003e\n\u003cp\u003ePyLate supports a prefix as well as prompt text, and Sentence Transformers assumed that these were mutually exclusive. However, the following three checkpoints carry both a prefix and a prompt, and were trained with the prefix prepended to the prompt text:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero\"\u003e\u003ccode\u003elightonai/ColBERT-Zero\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero-unsupervised\"\u003e\u003ccode\u003elightonai/ColBERT-Zero-unsupervised\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero-supervised\"\u003e\u003ccode\u003elightonai/ColBERT-Zero-supervised\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003ePyLate trained these checkpoints on \u003ccode\u003e[CLS] [Q] search_query: ...\u003c/code\u003e and \u003ccode\u003e[CLS] [D] search_document: ...\u003c/code\u003e, but Sentence Transformers dropped the prefix and encoded them as \u003ccode\u003e[CLS] search_query: ...\u003c/code\u003e and \u003ccode\u003e[CLS] search_document: ...\u003c/code\u003e. After the fix, the performance of the \u003ccode\u003eColBERT-Zero\u003c/code\u003e model improved from 0.6569 NDCG@10 to 0.6824 on the NanoBEIR benchmark. To my knowledge, only these 3 checkpoints used both a prefix and a prompt, so this is the only case where the bug would have affected you.\u003c/p\u003e\n\u003ch2\u003eForward \u003ccode\u003etask\u003c/code\u003e to routed modules in \u003ccode\u003eRouter.preprocess\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3967\"\u003e#3967\u003c/a\u003e)\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003eRouter.forward\u003c/code\u003e has always passed \u003ccode\u003etask\u003c/code\u003e down to the routed module, but \u003ccode\u003eRouter.preprocess\u003c/code\u003e did not, so anything a module does with the task at preprocessing time did nothing behind a \u003ccode\u003eRouter\u003c/code\u003e: \u003ccode\u003equery_length\u003c/code\u003e and \u003ccode\u003edocument_length\u003c/code\u003e caps, \u003ccode\u003equery_expansion\u003c/code\u003e, and the chat-template \u003ccode\u003etask\u003c/code\u003e keyword. No released checkpoint combines a \u003ccode\u003eRouter\u003c/code\u003e with those settings, so this is a latent bug rather than one you are likely to have hit. It would have affected anyone building such a model themselves, with no error to indicate it.\u003c/p\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eThe multi-vector \u003ca href=\"https://sbert.net/docs/multi_vector_encoder/pretrained_models.html\"\u003epretrained models tables\u003c/a\u003e grew from 29 text and 22 visual document retrieval checkpoints to 38 and 42 (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3963\"\u003e#3963\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3969\"\u003e#3969\u003c/a\u003e), with \u003ccode\u003erevision\u003c/code\u003e and \u003ccode\u003etrust_remote_code\u003c/code\u003e notes refreshed as upstream pull requests merged (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3972\"\u003e#3972\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDocumented which Hub tag to filter on for each model type (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3964\"\u003e#3964\u003c/a\u003e), and linked the Multi-Vector Encoder blogposts from the docs (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3966\"\u003e#3966\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded MultiVectorEncoder to the Agent Skill README and refreshed the SauerkrautLM scores (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3955\"\u003e#3955\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eCorrected the minimum versions in the README (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3952\"\u003e#3952\u003c/a\u003e). It still recommended PyTorch 1.11.0+ and \u003ccode\u003etransformers\u003c/code\u003e v4.41.0+, where v6.0 requires PyTorch 2.2+ and \u003ccode\u003etransformers\u003c/code\u003e v5.0+. This is the text rendered as the PyPI project description.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAll Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: Add MultiVectorEncoder to the skills README, refresh the SauerkrautLM scores by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3955\"\u003ehuggingface/sentence-transformers#3955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix the README dependency versions by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3952\"\u003ehuggingface/sentence-transformers#3952\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Add more MultiVectorEncoder models to the pretrained models tables by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3963\"\u003ehuggingface/sentence-transformers#3963\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Clarify which Hub tags to filter on for each model type by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3964\"\u003ehuggingface/sentence-transformers#3964\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Link the Multi-Vector Encoder blogposts by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3966\"\u003ehuggingface/sentence-transformers#3966\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/huggingface/sentence-transformers/commit/b0acd1a4d22ba2bc10072868ddea7612561c9424\"\u003e\u003ccode\u003eb0acd1a\u003c/code\u003e\u003c/a\u003e Update README installation versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/9b415ac93b586400258ac9876c81ce28c36547ba\"\u003e\u003ccode\u003e9b415ac\u003c/code\u003e\u003c/a\u003e Release v6.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/cc0669cea57c834c651f001e3cb07b6fc847f147\"\u003e\u003ccode\u003ecc0669c\u003c/code\u003e\u003c/a\u003e Add/update revisions for pretrained MVE models (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3972\"\u003e#3972\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/f8390f466c9d127cd51dd41805557adaab09d472\"\u003e\u003ccode\u003ef8390f4\u003c/code\u003e\u003c/a\u003e [docs] Refresh the MultiVectorEncoder pretrained models tables (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3969\"\u003e#3969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/4b517229c1dc17ead6c2a61b3d248f62fe4738eb\"\u003e\u003ccode\u003e4b51722\u003c/code\u003e\u003c/a\u003e [fix] Compose the PyLate prefix with the saved prompt (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3968\"\u003e#3968\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/e99c4a9f2422c285cd2d286aeda1af237eadd01d\"\u003e\u003ccode\u003ee99c4a9\u003c/code\u003e\u003c/a\u003e [fix] Forward \u003ccode\u003etask\u003c/code\u003e to routed modules in \u003ccode\u003eRouter.preprocess\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3967\"\u003e#3967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/5d2ec939e960d85afe638bba87523926c63ab263\"\u003e\u003ccode\u003e5d2ec93\u003c/code\u003e\u003c/a\u003e [docs] Link the Multi-Vector Encoder blogposts (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3966\"\u003e#3966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/9c5de2aa8432d7d150e35a7cd4383a39a13e307b\"\u003e\u003ccode\u003e9c5de2a\u003c/code\u003e\u003c/a\u003e [docs] Clarify which Hub tags to filter on for each model type (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3964\"\u003e#3964\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/83680bdf460229a41dd3bf07ed80b5a65d29a430\"\u003e\u003ccode\u003e83680bd\u003c/code\u003e\u003c/a\u003e [docs] Add more MultiVectorEncoder models to the pretrained models tables (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3\"\u003e#3\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/1a43278abe510ca9011fdd0e698c58470ef830eb\"\u003e\u003ccode\u003e1a43278\u003c/code\u003e\u003c/a\u003e docs: Add MultiVectorEncoder to the skills README, refresh the SauerkrautLM s...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/huggingface/sentence-transformers/compare/v6.0.0...v6.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/ifloppy/aiwr/pull/11","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ifloppy%2Faiwr/issues/11","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/11/packages"}},{"old_version":"1.26.0","new_version":"1.29.0","update_type":"minor","path":null,"pr_created_at":"2026-09-06T08:49:10.000Z","version_change":"1.26.0 → 1.29.0","issue":{"uuid":"5363952969","node_id":"PR_kwDOSzlq188AAAABCY9ZDQ","number":65,"state":"open","title":"Bump the minor-update group with 190 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-06T08:49:10.000Z","updated_at":"2026-09-06T08:49:23.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-update","update_count":190,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"transformers","old_version":"5.14.1","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"huggingface-hub","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.1","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"fastapi","old_version":"0.136.3","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"starlette","old_version":"1.3.1","new_version":"1.6.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"prometheus-fastapi-instrumentator","old_version":"8.0.2","new_version":"8.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"pyzmq","old_version":"27.1.0","new_version":"27.2.0","repository_url":"https://github.com/zeromq/pyzmq"},{"name":"python-json-logger","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"pybase64","old_version":"1.4.3","new_version":"1.5.0","repository_url":"https://github.com/mayeut/pybase64"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions-ai","old_version":"0.4.13","new_version":"0.5.1"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"torchcodec","old_version":"0.14.0+cu130","new_version":"0.16.0","repository_url":"https://github.com/pytorch/torchcodec"},{"name":"auto-round-lib","old_version":"0.14.2","new_version":"0.15.0","repository_url":"https://github.com/intel/auto-round"},{"name":"tpu-inference","old_version":"0.26.0","new_version":"0.28.0","repository_url":"https://github.com/vllm-project/tpu-inference"},{"name":"pynvvideocodec","old_version":"2.0.4","new_version":"2.2.2"},{"name":"nvidia-cutlass-dsl","old_version":"4.6.0","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.8","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"lk-moe","old_version":"2.3.3","new_version":"2.4.1","repository_url":"https://github.com/guqiong96/Lvllm"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"anyio","old_version":"4.14.1","new_version":"4.15.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"bitsandbytes","old_version":"0.49.2","new_version":"0.50.2","repository_url":"https://github.com/bitsandbytes-foundation/bitsandbytes"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.87","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.87","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"cohere","old_version":"7.0.8","new_version":"7.1.1","repository_url":"https://github.com/cohere-ai/cohere-python"},{"name":"cohere-melody","old_version":"0.9.0","new_version":"0.13.4","repository_url":"https://github.com/cohere-ai/melody"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.3.0","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.1","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"detect-installer","old_version":"0.1.0","new_version":"0.2.1"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi-cloud-cli","old_version":"0.21.0","new_version":"0.25.0","repository_url":"https://github.com/fastapilabs/fastapi-cloud-cli"},{"name":"fastar","old_version":"0.11.0","new_version":"0.12.0","repository_url":"https://github.com/DoctorJohn/fastar"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"h11","old_version":"0.14.0","new_version":"0.16.0","repository_url":"https://github.com/python-hyper/h11"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"hf-xet","old_version":"1.5.1","new_version":"1.6.0","repository_url":"https://github.com/huggingface/xet-core"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"idna","old_version":"3.10","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.15.0","new_version":"0.16.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema-rs","old_version":"0.46.5","new_version":"0.53.0","repository_url":"https://github.com/Stranger6667/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llguidance","old_version":"1.7.6","new_version":"1.8.0","repository_url":"https://github.com/microsoft/llguidance"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.1.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.20.0.48","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.1","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.29.7","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"peft","old_version":"0.19.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.7","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pydantic-settings","old_version":"2.14.2","new_version":"2.15.0","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pyrate-limiter","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/vutran1710/PyrateLimiter"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"rignore","old_version":"0.7.6","new_version":"0.8.1"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"schemathesis","old_version":"4.21.6","new_version":"4.25.2","repository_url":"https://github.com/schemathesis/schemathesis"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"sentry-sdk","old_version":"2.63.0","new_version":"2.68.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"triton","old_version":"3.7.1","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.26.8","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.4","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.5","repository_url":"https://github.com/astral-sh/ruff"},{"name":"zentorch","old_version":"2.11.0.0","new_version":"2.13.0.0","repository_url":"https://github.com/amd/ZenDNN-pytorch-plugin"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 190 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [transformers](https://github.com/huggingface/transformers) | `5.14.1` | `5.16.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.26.0` | `1.29.0` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.1` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.136.3` | `0.141.1` |\n| [starlette](https://github.com/Kludex/starlette) | `1.3.1` | `1.6.0` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `8.0.2` | `8.1.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [pyzmq](https://github.com/zeromq/pyzmq) | `27.1.0` | `27.2.0` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `4.1.0` | `4.2.0` |\n| [pybase64](https://github.com/mayeut/pybase64) | `1.4.3` | `1.5.0` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| opentelemetry-semantic-conventions-ai | `0.4.13` | `0.5.1` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [torchcodec](https://github.com/pytorch/torchcodec) | `0.14.0+cu130` | `0.16.0` |\n| [auto-round-lib](https://github.com/intel/auto-round) | `0.14.2` | `0.15.0` |\n| [tpu-inference](https://github.com/vllm-project/tpu-inference) | `0.26.0` | `0.28.0` |\n| pynvvideocodec | `2.0.4` | `2.2.2` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.6.0` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.8` | `0.2.6` |\n| [lk-moe](https://github.com/guqiong96/Lvllm) | `2.3.3` | `2.4.1` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.14.1` | `4.15.0` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [bitsandbytes](https://github.com/bitsandbytes-foundation/bitsandbytes) | `0.49.2` | `0.50.2` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.87` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.87` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| [cohere](https://github.com/cohere-ai/cohere-python) | `7.0.8` | `7.1.1` |\n| [cohere-melody](https://github.com/cohere-ai/melody) | `0.9.0` | `0.13.4` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.1` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.3.0` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.1` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| detect-installer | `0.1.0` | `0.2.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi-cloud-cli](https://github.com/fastapilabs/fastapi-cloud-cli) | `0.21.0` | `0.25.0` |\n| [fastar](https://github.com/DoctorJohn/fastar) | `0.11.0` | `0.12.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [hf-xet](https://github.com/huggingface/xet-core) | `1.5.1` | `1.6.0` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.19` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.15.0` | `0.16.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonschema-rs](https://github.com/Stranger6667/jsonschema) | `0.46.5` | `0.53.0` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llguidance](https://github.com/microsoft/llguidance) | `1.7.6` | `1.8.0` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.1.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.20.0.48` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.1` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.29.7` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [peft](https://github.com/huggingface/peft) | `0.19.1` | `0.20.0` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.7` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.14.2` | `2.15.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pyrate-limiter](https://github.com/vutran1710/PyrateLimiter) | `4.4.0` | `4.5.0` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| rignore | `0.7.6` | `0.8.1` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [schemathesis](https://github.com/schemathesis/schemathesis) | `4.21.6` | `4.25.2` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.63.0` | `2.68.1` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [triton](https://github.com/triton-lang/triton) | `3.7.1` | `3.8.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.26.8` | `0.27.2` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.4` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.5` |\n| [zentorch](https://github.com/amd/ZenDNN-pytorch-plugin) | `2.11.0.0` | `2.13.0.0` |\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 5.14.1 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\n\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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.14.1...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.26.0 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\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/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.26.0...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e⚡ Performance — measured locally on this Mac, not lifted from PRs\u003c/h2\u003e\n\u003cp\u003eRun with \u003ccode\u003ecargo bench --bench \u0026lt;name\u0026gt; -- --save-baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.22.2\u003c/code\u003e, then \u003ccode\u003e--baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.23.1\u003c/code\u003e. Numbers are point-in-time wall clock on a single laptop; relative deltas are what matters, absolute numbers will differ on CI hardware.\u003c/p\u003e\n\u003ch3\u003eAdded-vocabulary deserialize — the headline win (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1999\"\u003e#1999\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003e\u003ccode\u003ebench: improve added_vocab_deserialize to reflect real-world workloads\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2000\"\u003e#2000\u003c/a\u003e) is now representative of how transformers actually loads tokenizer.json files. The combined effect of \u003ccode\u003edaachorse\u003c/code\u003e for the matching automaton plus the normalize-on-insert refactor is enormous on this workload:\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~410 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e248 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.1 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e273 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~395 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e235 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.4 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e290 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e400k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~15 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e980 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−94%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eReal-world impact: loading a Llama-3-style tokenizer with a large set of added tokens dropped from \u0026quot;noticeable pause\u0026quot; to \u0026quot;instant\u0026quot;.\u003c/p\u003e\n\u003ch3\u003eBPE encode\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch, no cache\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e530 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e446 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−16%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch\u003c/code\u003e (cached)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e690 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e685 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode\u003c/code\u003e (single)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.95 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.94 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (small)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e32.6 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e31.5 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−3%\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (big)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.01 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e988 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−2%\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eThe BPE per-thread cache PR (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e) shows much larger wins on highly-parallel workloads (+47–62% at 88+ threads on a server box, per the PR's own measurements on Vera). Single-thread batch numbers above are flat or slightly improved because cache-hit overhead was already low without contention.\u003c/p\u003e\n\u003ch3\u003eLlama-3 encode\u003c/h3\u003e\n\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/huggingface/tokenizers/commit/7f1623b90b5adfb9bc327d4c3468d2f70bbce262\"\u003e\u003ccode\u003e7f1623b\u003c/code\u003e\u003c/a\u003e Bump version to 0.23.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bbe43ad73d8fc8932b9d0e657ddee3cd70c649a4\"\u003e\u003ccode\u003ebbe43ad\u003c/code\u003e\u003c/a\u003e ci: release workflow fixes (node + python) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2043\"\u003e#2043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/ab0c5d8fc13eb1c5001d9c06806635e2b5a42e9f\"\u003e\u003ccode\u003eab0c5d8\u003c/code\u003e\u003c/a\u003e Fix node release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2034\"\u003e#2034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/decd8e07dad15f296c0adc2bc3a560f62d3de2eb\"\u003e\u003ccode\u003edecd8e0\u003c/code\u003e\u003c/a\u003e bindings/python: free-threaded Python (3.14t) support (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2041\"\u003e#2041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/3992692d483bf3177219b52cb101b1bb055c18e6\"\u003e\u003ccode\u003e3992692\u003c/code\u003e\u003c/a\u003e update for release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2033\"\u003e#2033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bcdd25b97fcd78549903082ecf3ddd87d42c456b\"\u003e\u003ccode\u003ebcdd25b\u003c/code\u003e\u003c/a\u003e BPE cache: per-thread read-through cache to avoid RwLock atomics on hits (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/618eb383f43e207139eb5cdb9bca17796b5e9bd7\"\u003e\u003ccode\u003e618eb38\u003c/code\u003e\u003c/a\u003e Bump follow-redirects in /tokenizers/examples/unstable_wasm/www (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2024\"\u003e#2024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b6b1688bef2e87efc91af18edf7ac38b4d2dfbe6\"\u003e\u003ccode\u003eb6b1688\u003c/code\u003e\u003c/a\u003e chore: bump doc-builder SHA for PR upload workflow (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2025\"\u003e#2025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/19015d6b44aa3896626de5092e4171aed1b56d5b\"\u003e\u003ccode\u003e19015d6\u003c/code\u003e\u003c/a\u003e fix: use uvx --with cairosvg instead of uv pip install --system (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2021\"\u003e#2021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/efbcc68e321c364c8f9541f1c93a158df54d7da4\"\u003e\u003ccode\u003eefbcc68\u003c/code\u003e\u003c/a\u003e Ci benchmarks (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2019\"\u003e#2019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `fastapi` from 0.136.3 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15093\"\u003e#15093\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.10\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling sequences with nested Annotated types. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14874\"\u003e#14874\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Accept any base test failure as regression. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16092\"\u003e#16092\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Preserve pytest exit code in regression check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16091\"\u003e#16091\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Test PR regressions against base code. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16090\"\u003e#16090\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.9\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eexclude_defaults\u003c/code\u003e not propagated to dict keys and values in \u003ccode\u003ejsonable_encoder\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16043\"\u003e#16043\u003c/a\u003e by \u003ca href=\"https://github.com/MBGrao\"\u003e\u003ccode\u003e@​MBGrao\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\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/fastapi/fastapi/commit/95f8322ee1dcda7ceace7b1c4f6c9915b36d748f\"\u003e\u003ccode\u003e95f8322\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16106\"\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/guqiong96/Lvllmds4/pull/65","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/guqiong96%2FLvllmds4/issues/65","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/65/packages"}},{"old_version":"\u003e=1.20.1","new_version":"\u003e=1.29.0","update_type":"minor","path":null,"pr_created_at":"2026-09-06T07:38:14.000Z","version_change":"\u003e=1.20.1 → \u003e=1.29.0","issue":{"uuid":"5363642279","node_id":"PR_kwDON-W62s8AAAABCYu1HA","number":109,"state":"closed","title":"deps(deps): update huggingface-hub requirement from \u003e=1.20.1 to \u003e=1.29.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":["bniladridas"],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-09-06T10:42:44.000Z","author_association":null,"state_reason":null,"created_at":"2026-09-06T07:38:14.000Z","updated_at":"2026-09-06T10:42:45.000Z","time_to_close":11070,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps): update","packages":[{"name":"huggingface-hub","old_version":"\u003e=1.20.1","new_version":"\u003e=1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [huggingface-hub](https://github.com/huggingface/huggingface_hub) 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/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.20.1...v1.29.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/coccinella-labs/mlapi/pull/109","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/coccinella-labs%2Fmlapi/issues/109","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/109/packages"}},{"old_version":"\u003e=0.23","new_version":"\u003e=1.29.0","update_type":null,"path":"/Tools/evaluation/public_datasets","pr_created_at":"2026-09-05T20:12:47.000Z","version_change":"\u003e=0.23 → \u003e=1.29.0","issue":{"uuid":"5360645539","node_id":"PR_kwDOTAbfpM8AAAABCWfaGA","number":198,"state":"open","title":"Chore(deps): update huggingface-hub requirement from \u003e=0.23 to \u003e=1.29.0 in /Tools/evaluation/public_datasets","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-09-05T20:12:47.000Z","updated_at":"2026-09-05T20:12:48.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Chore(deps): update","packages":[{"name":"huggingface-hub","old_version":"\u003e=0.23","new_version":"\u003e=1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"}],"path":"/Tools/evaluation/public_datasets","ecosystem":"pip"},"body":"Updates the requirements on [huggingface-hub](https://github.com/huggingface/huggingface_hub) 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/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v0.23.0...v1.29.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/carlosmazzei/Kurn/pull/198","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/carlosmazzei%2FKurn/issues/198","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/198/packages"}},{"old_version":"0.24.0","new_version":"1.29.0","update_type":"major","path":"/service/scripts","pr_created_at":"2026-09-05T16:28:35.000Z","version_change":"0.24.0 → 1.29.0","issue":{"uuid":"5359301500","node_id":"PR_kwDOUPb-sM8AAAABCVdCzw","number":4,"state":"closed","title":"build(deps): bump huggingface-hub from 0.24.0 to 1.29.0 in /service/scripts","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-09-06T14:07:02.000Z","author_association":null,"state_reason":null,"created_at":"2026-09-05T16:28:35.000Z","updated_at":"2026-09-06T14:07:05.000Z","time_to_close":77907,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps)","packages":[{"name":"huggingface-hub","old_version":"0.24.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"}],"path":"/service/scripts","ecosystem":"pip"},"body":"Bumps [huggingface-hub](https://github.com/huggingface/huggingface_hub) from 0.24.0 to 1.29.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v0.24.0...v1.29.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=huggingface-hub\u0026package-manager=pip\u0026previous-version=0.24.0\u0026new-version=1.29.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/ifloppy/aiwr/pull/4","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ifloppy%2Faiwr/issues/4","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/4/packages"}},{"old_version":"1.28.0","new_version":"1.29.0","update_type":"minor","path":null,"pr_created_at":"2026-09-05T15:40:25.000Z","version_change":"1.28.0 → 1.29.0","issue":{"uuid":"5359021877","node_id":"PR_kwDOQAkTSM8AAAABCVPfsQ","number":30,"state":"closed","title":"build(deps): bump the python-minor-and-patch group across 1 directory with 16 updates","user":"dependabot[bot]","labels":["dependencies","python:uv"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-09-05T16:00:36.000Z","author_association":null,"state_reason":null,"created_at":"2026-09-05T15:40:25.000Z","updated_at":"2026-09-05T16:00:46.000Z","time_to_close":1211,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"python-minor-and-patch","update_count":16,"packages":[{"name":"pydantic","old_version":"2.13.4","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"sentence-transformers","old_version":"6.0.0","new_version":"6.0.1","repository_url":"https://github.com/huggingface/sentence-transformers"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"cuda-pathfinder","old_version":"1.7.0","new_version":"1.8.0","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"filelock","old_version":"3.32.4","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"huggingface-hub","old_version":"1.28.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"joblib","old_version":"1.5.3","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"regex","old_version":"2026.7.19","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.1","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"torch","old_version":"2.13.0","new_version":"2.14.0","repository_url":"https://github.com/pytorch/pytorch"},{"name":"typer","old_version":"0.27.1","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"websockets","old_version":"17.0.1","new_version":"17.1","repository_url":"https://github.com/python-websockets/websockets"},{"name":"wrapt","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/GrahamDumpleton/wrapt"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-minor-and-patch group with 13 updates in the /backend directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.13.4` | `2.13.5` |\n| [sentence-transformers](https://github.com/huggingface/sentence-transformers) | `6.0.0` | `6.0.1` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.7.0` | `1.8.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.32.4` | `3.32.5` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.28.0` | `1.29.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.5.3` | `1.6.0` |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.7.19` | `2026.9.3` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.1` |\n| [torch](https://github.com/pytorch/pytorch) | `2.13.0` | `2.14.0` |\n| [typer](https://github.com/fastapi/typer) | `0.27.1` | `0.27.2` |\n| [websockets](https://github.com/python-websockets/websockets) | `17.0.1` | `17.1` |\n| [wrapt](https://github.com/GrahamDumpleton/wrapt) | `2.3.0` | `2.4.0` |\n\n\nUpdates `pydantic` from 2.13.4 to 2.13.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pydantic/pydantic/releases\"\u003epydantic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.5 (2026-08-28)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow reuse of validators when plugins are set by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13535\"\u003e#13535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal on some \u003ccode\u003epydantic-core\u003c/code\u003e struct fields by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13624\"\u003e#13624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13629\"\u003e#13629\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCount validated model fields once in smart unions by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13731\"\u003e#13731\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/pydantic/pydantic/blob/v2.13.5/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.5 (2026-08-28)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.13.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow reuse of validators when plugins are set by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13535\"\u003e#13535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal on some \u003ccode\u003epydantic-core\u003c/code\u003e struct fields by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13624\"\u003e#13624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13629\"\u003e#13629\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCount validated model fields once in smart unions by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13731\"\u003e#13731\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/001dea020e0809844e5b17666432c9135a976f46\"\u003e\u003ccode\u003e001dea0\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003epypa/gh-action-pypi-publish\u003c/code\u003e action to v1.14.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/558379fee957fad25858e33596146c72d5674843\"\u003e\u003ccode\u003e558379f\u003c/code\u003e\u003c/a\u003e Bump twine to v7.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/2cfd5d3d2ae721ea882c045f83b7f7a4003aab01\"\u003e\u003ccode\u003e2cfd5d3\u003c/code\u003e\u003c/a\u003e Do not check for docs build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a735bee5c64e1fe50785c376adaf1275e752b8ac\"\u003e\u003ccode\u003ea735bee\u003c/code\u003e\u003c/a\u003e Fix more Clippy lints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7eed4a16b87afaced4d0eafae230453de3410d64\"\u003e\u003ccode\u003e7eed4a1\u003c/code\u003e\u003c/a\u003e Fix Clippy 0.1.95 warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/b353bbb20a4989b4c033e2be2b4a40d36178b16a\"\u003e\u003ccode\u003eb353bbb\u003c/code\u003e\u003c/a\u003e Prepare release v2.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/63d2cccd6e760da6bbc7fe81a53cb2bde3768f5e\"\u003e\u003ccode\u003e63d2ccc\u003c/code\u003e\u003c/a\u003e Count validated model fields once in smart unions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a53ec2ed342fda4e6aa3684399d04ea57be9a6e4\"\u003e\u003ccode\u003ea53ec2e\u003c/code\u003e\u003c/a\u003e Speed up PyPy CI tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/d65e0f96e890ca82f4b66a15d5b3bd65af2c661c\"\u003e\u003ccode\u003ed65e0f9\u003c/code\u003e\u003c/a\u003e Workaround circular import error in Mypy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/47a6dbf8ad6216211bd0df6ec5c2c6c6ed905b72\"\u003e\u003ccode\u003e47a6dbf\u003c/code\u003e\u003c/a\u003e Fix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.13.4...v2.13.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentence-transformers` from 6.0.0 to 6.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/sentence-transformers/releases\"\u003esentence-transformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.0.1 - Restore the PyLate prefix on prompted checkpoints, 80 documented multi-vector models\u003c/h2\u003e\n\u003cp\u003eThis patch release fixes a multi-vector loading bug: PyLate checkpoints that carry both a \u003ccode\u003e[Q]\u003c/code\u003e/\u003ccode\u003e[D]\u003c/code\u003e prefix and a text prompt lost the prefix, so they were encoded without a marker they were trained with. It also grows the documented multi-vector model tables from 51 checkpoints to 80.\u003c/p\u003e\n\u003cp\u003eInstall this version with\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Training + Inference\r\npip install sentence-transformers[train]==6.0.1\r\n\u003ch1\u003eInference only, use one of:\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers==6.0.1\npip install sentence-transformers[onnx-gpu]==6.0.1\npip install sentence-transformers[onnx]==6.0.1\npip install sentence-transformers[openvino]==6.0.1\u003c/p\u003e\n\u003ch1\u003eMultimodal dependencies (optional):\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers[image]==6.0.1\npip install sentence-transformers[audio]==6.0.1\npip install sentence-transformers[video]==6.0.1\u003c/p\u003e\n\u003ch1\u003eOr combine as needed:\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers[train,onnx,image]==6.0.1\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003eCompose the PyLate prefix with the saved prompt (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3968\"\u003e#3968\u003c/a\u003e)\u003c/h2\u003e\n\u003cp\u003ePyLate supports a prefix as well as prompt text, and Sentence Transformers assumed that these were mutually exclusive. However, the following three checkpoints carry both a prefix and a prompt, and were trained with the prefix prepended to the prompt text:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero\"\u003e\u003ccode\u003elightonai/ColBERT-Zero\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero-unsupervised\"\u003e\u003ccode\u003elightonai/ColBERT-Zero-unsupervised\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero-supervised\"\u003e\u003ccode\u003elightonai/ColBERT-Zero-supervised\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003ePyLate trained these checkpoints on \u003ccode\u003e[CLS] [Q] search_query: ...\u003c/code\u003e and \u003ccode\u003e[CLS] [D] search_document: ...\u003c/code\u003e, but Sentence Transformers dropped the prefix and encoded them as \u003ccode\u003e[CLS] search_query: ...\u003c/code\u003e and \u003ccode\u003e[CLS] search_document: ...\u003c/code\u003e. After the fix, the performance of the \u003ccode\u003eColBERT-Zero\u003c/code\u003e model improved from 0.6569 NDCG@10 to 0.6824 on the NanoBEIR benchmark. To my knowledge, only these 3 checkpoints used both a prefix and a prompt, so this is the only case where the bug would have affected you.\u003c/p\u003e\n\u003ch2\u003eForward \u003ccode\u003etask\u003c/code\u003e to routed modules in \u003ccode\u003eRouter.preprocess\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3967\"\u003e#3967\u003c/a\u003e)\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003eRouter.forward\u003c/code\u003e has always passed \u003ccode\u003etask\u003c/code\u003e down to the routed module, but \u003ccode\u003eRouter.preprocess\u003c/code\u003e did not, so anything a module does with the task at preprocessing time did nothing behind a \u003ccode\u003eRouter\u003c/code\u003e: \u003ccode\u003equery_length\u003c/code\u003e and \u003ccode\u003edocument_length\u003c/code\u003e caps, \u003ccode\u003equery_expansion\u003c/code\u003e, and the chat-template \u003ccode\u003etask\u003c/code\u003e keyword. No released checkpoint combines a \u003ccode\u003eRouter\u003c/code\u003e with those settings, so this is a latent bug rather than one you are likely to have hit. It would have affected anyone building such a model themselves, with no error to indicate it.\u003c/p\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eThe multi-vector \u003ca href=\"https://sbert.net/docs/multi_vector_encoder/pretrained_models.html\"\u003epretrained models tables\u003c/a\u003e grew from 29 text and 22 visual document retrieval checkpoints to 38 and 42 (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3963\"\u003e#3963\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3969\"\u003e#3969\u003c/a\u003e), with \u003ccode\u003erevision\u003c/code\u003e and \u003ccode\u003etrust_remote_code\u003c/code\u003e notes refreshed as upstream pull requests merged (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3972\"\u003e#3972\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDocumented which Hub tag to filter on for each model type (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3964\"\u003e#3964\u003c/a\u003e), and linked the Multi-Vector Encoder blogposts from the docs (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3966\"\u003e#3966\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded MultiVectorEncoder to the Agent Skill README and refreshed the SauerkrautLM scores (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3955\"\u003e#3955\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eCorrected the minimum versions in the README (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3952\"\u003e#3952\u003c/a\u003e). It still recommended PyTorch 1.11.0+ and \u003ccode\u003etransformers\u003c/code\u003e v4.41.0+, where v6.0 requires PyTorch 2.2+ and \u003ccode\u003etransformers\u003c/code\u003e v5.0+. This is the text rendered as the PyPI project description.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAll Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: Add MultiVectorEncoder to the skills README, refresh the SauerkrautLM scores by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3955\"\u003ehuggingface/sentence-transformers#3955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix the README dependency versions by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3952\"\u003ehuggingface/sentence-transformers#3952\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Add more MultiVectorEncoder models to the pretrained models tables by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3963\"\u003ehuggingface/sentence-transformers#3963\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Clarify which Hub tags to filter on for each model type by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3964\"\u003ehuggingface/sentence-transformers#3964\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Link the Multi-Vector Encoder blogposts by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3966\"\u003ehuggingface/sentence-transformers#3966\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/huggingface/sentence-transformers/commit/b0acd1a4d22ba2bc10072868ddea7612561c9424\"\u003e\u003ccode\u003eb0acd1a\u003c/code\u003e\u003c/a\u003e Update README installation versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/9b415ac93b586400258ac9876c81ce28c36547ba\"\u003e\u003ccode\u003e9b415ac\u003c/code\u003e\u003c/a\u003e Release v6.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/cc0669cea57c834c651f001e3cb07b6fc847f147\"\u003e\u003ccode\u003ecc0669c\u003c/code\u003e\u003c/a\u003e Add/update revisions for pretrained MVE models (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3972\"\u003e#3972\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/f8390f466c9d127cd51dd41805557adaab09d472\"\u003e\u003ccode\u003ef8390f4\u003c/code\u003e\u003c/a\u003e [docs] Refresh the MultiVectorEncoder pretrained models tables (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3969\"\u003e#3969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/4b517229c1dc17ead6c2a61b3d248f62fe4738eb\"\u003e\u003ccode\u003e4b51722\u003c/code\u003e\u003c/a\u003e [fix] Compose the PyLate prefix with the saved prompt (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3968\"\u003e#3968\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/e99c4a9f2422c285cd2d286aeda1af237eadd01d\"\u003e\u003ccode\u003ee99c4a9\u003c/code\u003e\u003c/a\u003e [fix] Forward \u003ccode\u003etask\u003c/code\u003e to routed modules in \u003ccode\u003eRouter.preprocess\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3967\"\u003e#3967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/5d2ec939e960d85afe638bba87523926c63ab263\"\u003e\u003ccode\u003e5d2ec93\u003c/code\u003e\u003c/a\u003e [docs] Link the Multi-Vector Encoder blogposts (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3966\"\u003e#3966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/9c5de2aa8432d7d150e35a7cd4383a39a13e307b\"\u003e\u003ccode\u003e9c5de2a\u003c/code\u003e\u003c/a\u003e [docs] Clarify which Hub tags to filter on for each model type (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3964\"\u003e#3964\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/83680bdf460229a41dd3bf07ed80b5a65d29a430\"\u003e\u003ccode\u003e83680bd\u003c/code\u003e\u003c/a\u003e [docs] Add more MultiVectorEncoder models to the pretrained models tables (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3\"\u003e#3\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/1a43278abe510ca9011fdd0e698c58470ef830eb\"\u003e\u003ccode\u003e1a43278\u003c/code\u003e\u003c/a\u003e docs: Add MultiVectorEncoder to the skills README, refresh the SauerkrautLM s...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/huggingface/sentence-transformers/compare/v6.0.0...v6.0.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.4.2 to 8.5.0\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.5.0\u003c/h2\u003e\n\u003cp\u003eThis is the Click 8.5.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.5.0/\"\u003ehttps://pypi.org/project/click/8.5.0/\u003c/a\u003e\nChanges:  \u003ca href=\"https://click.palletsprojects.com/page/changes/#version-8-5-0\"\u003ehttps://click.palletsprojects.com/page/changes/#version-8-5-0\u003c/a\u003e\nMilestone \u003ca href=\"https://github.com/pallets/click/milestone/33\"\u003ehttps://github.com/pallets/click/milestone/33\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd built-in shell completion support for PowerShell (Windows PowerShell\n5.1+ and pwsh 7+) alongside the existing \u003ccode\u003ebash\u003c/code\u003e, \u003ccode\u003ezsh\u003c/code\u003e, and \u003ccode\u003efish\u003c/code\u003e\ncompleters. Use \u003ccode\u003e_FOO_BAR_COMPLETE=powershell_source foo-bar\u003c/code\u003e to generate\nthe completion script. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2672\"\u003e#2672\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3637\"\u003e#3637\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupported versions of Windows enable ANSI terminal styles by default.\nColorama is no longer a dependency and is not used. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2986\"\u003e#2986\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3505\"\u003e#3505\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e{class}\u003ccode\u003eArgument\u003c/code\u003e accepts a \u003ccode\u003ehelp\u003c/code\u003e parameter, and help output includes\na \u003ccode\u003ePositional arguments\u003c/code\u003e section when argument help is available. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2983\"\u003e#2983\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3473\"\u003e#3473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003econfirm()\u003c/code\u003e and \u003ccode\u003eprompt()\u003c/code\u003e strip ANSI color and style codes from the\nprompt when the output stream does not support them, matching \u003ccode\u003eecho()\u003c/code\u003e.\nThis stripping was lost in \u003ccode\u003e8.4.0\u003c/code\u003e when \u003ca href=\"https://redirect.github.com/pallets/click/issues/2969\"\u003e#2969\u003c/a\u003e began writing the\nprompt with \u003ccode\u003einput()\u003c/code\u003e directly. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3572\"\u003e#3572\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3653\"\u003e#3653\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e{class}\u003ccode\u003ePath\u003c/code\u003e with \u003ccode\u003eallow_dash=True\u003c/code\u003e no longer triggers a \u003ccode\u003eBytesWarning\u003c/code\u003e,\nan error under \u003ccode\u003epython -bb\u003c/code\u003e, when checking a value against the \u003ccode\u003e-\u003c/code\u003e\nconvention. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2877\"\u003e#2877\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3642\"\u003e#3642\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd {func}\u003ccode\u003ecustom_version_option\u003c/code\u003e, a \u003ccode\u003e--version\u003c/code\u003e option whose output is\nproduced by a callback, covering cases {func}\u003ccode\u003eversion_option\u003c/code\u003e intentionally\ndoes not. The feature set of {func}\u003ccode\u003eversion_option\u003c/code\u003e is now frozen; see\n[discussion \u003ca href=\"https://redirect.github.com/pallets/click/issues/3527\"\u003e#3527\u003c/a\u003e](\u003ca href=\"https://github.com/pallets/click/discussions/3527\"\u003ehttps://github.com/pallets/click/discussions/3527\u003c/a\u003e). \u003ca href=\"https://redirect.github.com/pallets/click/issues/3581\"\u003e#3581\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003estyle()\u003c/code\u003e and \u003ccode\u003esecho()\u003c/code\u003e no longer silently drop the 256-color index \u003ccode\u003e0\u003c/code\u003e\n(black) passed as \u003ccode\u003efg\u003c/code\u003e or \u003ccode\u003ebg\u003c/code\u003e, and now validate color arguments. Invalid\ncolors raise a \u003ccode\u003eValueError\u003c/code\u003e instead of a \u003ccode\u003eTypeError\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3677\"\u003e#3677\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eThe automatic help option stores its value under the reserved name\n\u003ccode\u003e_click_default_help\u003c/code\u003e instead of \u003ccode\u003ehelp\u003c/code\u003e, so a parameter named \u003ccode\u003ehelp\u003c/code\u003e no\nlonger breaks parsing. The new name is visible in\n{meth}\u003ccode\u003eCommand.to_info_dict\u003c/code\u003e output. Parameters that overwrite each other's\nvalue trigger a warning: an argument sharing its name with another\nparameter, or any parameter claiming the reserved name. Options may still\nshare a name to compete for the same value (feature switches).\n\u003ca href=\"https://redirect.github.com/pallets/click/issues/2819\"\u003e#2819\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3678\"\u003e#3678\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eunstyle\u003c/code\u003e and the ANSI handling behind help-text wrapping now strip the full\nCSI escape-sequence grammar. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3681\"\u003e#3681\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStreamline \u003ccode\u003eOption\u003c/code\u003e flag handling: the flag-kind, type, lazy-default and\nvalidation steps in \u003ccode\u003eOption.__init__\u003c/code\u003e move into focused helpers, and\n\u003ccode\u003eflag_value\u003c/code\u003e and \u003ccode\u003edefault\u003c/code\u003e keep their unset sentinel at construction\n(resolved lazily on read) so \u003ccode\u003eis UNSET\u003c/code\u003e reliably tells a user-supplied value\nfrom an auto-derived one. Runtime behavior is unchanged, but\n{meth}\u003ccode\u003eParameter.to_info_dict\u003c/code\u003e now resolves \u003ccode\u003edefault=True\u003c/code\u003e on a feature\nswitch to its \u003ccode\u003eflag_value\u003c/code\u003e, matching what the function receives at call\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/click/blob/main/CHANGES.md\"\u003eclick's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 8.5.0\u003c/h2\u003e\n\u003cp\u003eReleased 2026-08-24\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd built-in shell completion support for PowerShell (Windows PowerShell\n5.1+ and pwsh 7+) alongside the existing \u003ccode\u003ebash\u003c/code\u003e, \u003ccode\u003ezsh\u003c/code\u003e, and \u003ccode\u003efish\u003c/code\u003e\ncompleters. Use \u003ccode\u003e_FOO_BAR_COMPLETE=powershell_source foo-bar\u003c/code\u003e to generate\nthe completion script. {issue}\u003ccode\u003e2672\u003c/code\u003e {pr}\u003ccode\u003e3637\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eSupported versions of Windows enable ANSI terminal styles by default.\nColorama is no longer a dependency and is not used. {issue}\u003ccode\u003e2986\u003c/code\u003e {pr}\u003ccode\u003e3505\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e{class}\u003ccode\u003eArgument\u003c/code\u003e accepts a \u003ccode\u003ehelp\u003c/code\u003e parameter, and help output includes\na \u003ccode\u003ePositional arguments\u003c/code\u003e section when argument help is available. {issue}\u003ccode\u003e2983\u003c/code\u003e {pr}\u003ccode\u003e3473\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003econfirm()\u003c/code\u003e and \u003ccode\u003eprompt()\u003c/code\u003e strip ANSI color and style codes from the\nprompt when the output stream does not support them, matching \u003ccode\u003eecho()\u003c/code\u003e.\nThis stripping was lost in \u003ccode\u003e8.4.0\u003c/code\u003e when {pr}\u003ccode\u003e2969\u003c/code\u003e began writing the\nprompt with \u003ccode\u003einput()\u003c/code\u003e directly. {issue}\u003ccode\u003e3572\u003c/code\u003e {pr}\u003ccode\u003e3653\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFix test failures when using pytest \u0026gt;= 9.1. {pr}\u003ccode\u003e3656\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e{class}\u003ccode\u003ePath\u003c/code\u003e with \u003ccode\u003eallow_dash=True\u003c/code\u003e no longer triggers a \u003ccode\u003eBytesWarning\u003c/code\u003e,\nan error under \u003ccode\u003epython -bb\u003c/code\u003e, when checking a value against the \u003ccode\u003e-\u003c/code\u003e\nconvention. {issue}\u003ccode\u003e2877\u003c/code\u003e {pr}\u003ccode\u003e3642\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd {func}\u003ccode\u003ecustom_version_option\u003c/code\u003e, a \u003ccode\u003e--version\u003c/code\u003e option whose output is\nproduced by a callback, covering cases {func}\u003ccode\u003eversion_option\u003c/code\u003e intentionally\ndoes not. The feature set of {func}\u003ccode\u003eversion_option\u003c/code\u003e is now frozen; see\n[discussion \u003ca href=\"https://redirect.github.com/pallets/click/issues/3527\"\u003e#3527\u003c/a\u003e](\u003ca href=\"https://github.com/pallets/click/discussions/3527\"\u003ehttps://github.com/pallets/click/discussions/3527\u003c/a\u003e). {pr}\u003ccode\u003e3581\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003estyle()\u003c/code\u003e and \u003ccode\u003esecho()\u003c/code\u003e no longer silently drop the 256-color index \u003ccode\u003e0\u003c/code\u003e\n(black) passed as \u003ccode\u003efg\u003c/code\u003e or \u003ccode\u003ebg\u003c/code\u003e, and now validate color arguments. Invalid\ncolors raise a \u003ccode\u003eValueError\u003c/code\u003e instead of a \u003ccode\u003eTypeError\u003c/code\u003e. {pr}\u003ccode\u003e3677\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe automatic help option stores its value under the reserved name\n\u003ccode\u003e_click_default_help\u003c/code\u003e instead of \u003ccode\u003ehelp\u003c/code\u003e, so a parameter named \u003ccode\u003ehelp\u003c/code\u003e no\nlonger breaks parsing. The new name is visible in\n{meth}\u003ccode\u003eCommand.to_info_dict\u003c/code\u003e output. Parameters that overwrite each other's\nvalue trigger a warning: an argument sharing its name with another\nparameter, or any parameter claiming the reserved name. Options may still\nshare a name to compete for the same value (feature switches).\n{issue}\u003ccode\u003e2819\u003c/code\u003e {pr}\u003ccode\u003e3678\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eunstyle\u003c/code\u003e and the ANSI handling behind help-text wrapping now strip the full\nCSI escape-sequence grammar. {pr}\u003ccode\u003e3681\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eStreamline \u003ccode\u003eOption\u003c/code\u003e flag handling: the flag-kind, type, lazy-default and\nvalidation steps in \u003ccode\u003eOption.__init__\u003c/code\u003e move into focused helpers, and\n\u003ccode\u003eflag_value\u003c/code\u003e and \u003ccode\u003edefault\u003c/code\u003e keep their unset sentinel at construction\n(resolved lazily on read) so \u003ccode\u003eis UNSET\u003c/code\u003e reliably tells a user-supplied value\nfrom an auto-derived one. Runtime behavior is unchanged, but\n{meth}\u003ccode\u003eParameter.to_info_dict\u003c/code\u003e now resolves \u003ccode\u003edefault=True\u003c/code\u003e on a feature\nswitch to its \u003ccode\u003eflag_value\u003c/code\u003e, matching what the function receives at call\ntime. {pr}\u003ccode\u003e3641\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e{func}\u003ccode\u003eget_binary_stream\u003c/code\u003e and {func}\u003ccode\u003eget_text_stream\u003c/code\u003e are deprecated and\nwill be removed in Click 9.0. {issue}\u003ccode\u003e3481\u003c/code\u003e {pr}\u003ccode\u003e3695\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe following \u003ccode\u003eclick.utils\u003c/code\u003e names were never intentionally public and are\nnow private (\u003ccode\u003e_\u003c/code\u003e-prefixed). The old names remain available with a\n\u003ccode\u003eDeprecationWarning\u003c/code\u003e until Click 9.0: \u003ccode\u003eLazyFile\u003c/code\u003e, \u003ccode\u003eKeepOpenFile\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/pallets/click/commit/8b19813f2bfca99f1018a587a8cf54fc959f2e5d\"\u003e\u003ccode\u003e8b19813\u003c/code\u003e\u003c/a\u003e Release version 8.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/2c8cd3ac958a7eb316d67f2d316c27086c4c0369\"\u003e\u003ccode\u003e2c8cd3a\u003c/code\u003e\u003c/a\u003e Add FAQ entry about \u003ccode\u003eUnicodeEncodeError\u003c/code\u003e on Windows (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3778\"\u003e#3778\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/131c86aadddfa5cb6dca8339c9d6294c4eacb8ac\"\u003e\u003ccode\u003e131c86a\u003c/code\u003e\u003c/a\u003e Add FAQ entry about \u003ccode\u003eUnicodeEncodeError\u003c/code\u003e on Windows\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/e1fd5946ab26aaf372009eaff1acf947140b40fb\"\u003e\u003ccode\u003ee1fd594\u003c/code\u003e\u003c/a\u003e Add support of \u003ccode\u003epathlib.Path\u003c/code\u003e to \u003ccode\u003eedit\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3781\"\u003e#3781\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/a1d87858abd77fa8e3ffc204670ccd75b96c4781\"\u003e\u003ccode\u003ea1d8785\u003c/code\u003e\u003c/a\u003e Add support of \u003ccode\u003epathlib.Path\u003c/code\u003e to \u003ccode\u003eedit\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/2103e157683c5e4cadc8ee1838df526a54bde9a4\"\u003e\u003ccode\u003e2103e15\u003c/code\u003e\u003c/a\u003e Forward all user's parameters set in \u003ccode\u003ePAGER\u003c/code\u003e and improve flag detection (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3777\"\u003e#3777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/a6256bfb5971d5e58585fe7b6c656134e1ade5a4\"\u003e\u003ccode\u003ea6256bf\u003c/code\u003e\u003c/a\u003e Forwards all user's parameters set in \u003ccode\u003ePAGER\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/61b69e967e525bd502f5bf42def4d551e761fe0e\"\u003e\u003ccode\u003e61b69e9\u003c/code\u003e\u003c/a\u003e Resolve the pager command once, in \u003ccode\u003e_pager_contextmanager\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3776\"\u003e#3776\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/9835b0f7612d1b1ea180a975fd6d24cf16791ba8\"\u003e\u003ccode\u003e9835b0f\u003c/code\u003e\u003c/a\u003e Resolve the pager command once, in \u003ccode\u003e_pager_contextmanager\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/f36d58bbd7f188178de2d4fe1d0292c510375ca7\"\u003e\u003ccode\u003ef36d58b\u003c/code\u003e\u003c/a\u003e Refactor pager stream handling (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3767\"\u003e#3767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets/click/compare/8.4.2...8.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cuda-pathfinder` from 1.7.0 to 1.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/NVIDIA/cuda-python/releases\"\u003ecuda-pathfinder's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ecuda-pathfinder v1.8.0\u003c/h2\u003e\n\u003ch2\u003eRelease notes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://nvidia.github.io/cuda-python/cuda-pathfinder/latest/release/1.8.0-notes.html\"\u003ehttps://nvidia.github.io/cuda-python/cuda-pathfinder/latest/release/1.8.0-notes.html\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://nvidia.github.io/cuda-python/cuda-pathfinder/1.8.0/\"\u003ehttps://nvidia.github.io/cuda-python/cuda-pathfinder/1.8.0/\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ePyPI\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://pypi.org/project/cuda-pathfinder/1.8.0/\"\u003ehttps://pypi.org/project/cuda-pathfinder/1.8.0/\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eConda\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://anaconda.org/conda-forge/cuda-pathfinder/files?version=1.8.0\"\u003ehttps://anaconda.org/conda-forge/cuda-pathfinder/files?version=1.8.0\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003econda install conda-forge::cuda-pathfinder=1.8.0\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/NVIDIA/cuda-python/commit/339c9bc23f2690f653b06abce3b3a2acc4b7a0c8\"\u003e\u003ccode\u003e339c9bc\u003c/code\u003e\u003c/a\u003e docs(pathfinder): finalize 1.8.0 release notes (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2710\"\u003e#2710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/9cab1db384e23358e139fbfed2d68f28ba51e94d\"\u003e\u003ccode\u003e9cab1db\u003c/code\u003e\u003c/a\u003e build: make Cython/extension artifacts CUDA-major aware (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2472\"\u003e#2472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/ecc7bd9881df80546758a8203249d492a8358c83\"\u003e\u003ccode\u003eecc7bd9\u003c/code\u003e\u003c/a\u003e refactor(pathfinder): author candidates in search order (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2708\"\u003e#2708\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/809407c1fc3b9f458b0db0080738a57075d6db7a\"\u003e\u003ccode\u003e809407c\u003c/code\u003e\u003c/a\u003e fix(pathfinder): use exact dynamic library names (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2689\"\u003e#2689\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/0477f61f6ae4501c2ab80fc335fc5cc711aa7b0e\"\u003e\u003ccode\u003e0477f61\u003c/code\u003e\u003c/a\u003e Recognize CUDA 13.4 cuRAND library names (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2692\"\u003e#2692\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/54ce994cf8bcce3cbdedeaf595e9c57c6bb23c90\"\u003e\u003ccode\u003e54ce994\u003c/code\u003e\u003c/a\u003e Avoid aggregate graph access descriptor initialization (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2688\"\u003e#2688\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/64afb35f621afabf19f5e86c7bf5c1e135057480\"\u003e\u003ccode\u003e64afb35\u003c/code\u003e\u003c/a\u003e cuda.core: account for DLTensor.byte_offset in from_dlpack (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2594\"\u003e#2594\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/fd9685d4f71ce1a55d7b9db49b0c532eb88fa699\"\u003e\u003ccode\u003efd9685d\u003c/code\u003e\u003c/a\u003e fix(cuda.core): preserve ordering for asynchronous memory operations in tests...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/a68ba5e0650a5b3c893868a47fa6be7f6a8fe9ca\"\u003e\u003ccode\u003ea68ba5e\u003c/code\u003e\u003c/a\u003e cuda.core: reject operations on closed resource objects (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2635\"\u003e#2635\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/NVIDIA/cuda-python/commit/c0e6c1cee19f4eeef270fe702eda92f81d3ed53a\"\u003e\u003ccode\u003ec0e6c1c\u003c/code\u003e\u003c/a\u003e Ft testing test fixes (\u003ca href=\"https://redirect.github.com/NVIDIA/cuda-python/issues/2454\"\u003e#2454\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/NVIDIA/cuda-python/compare/cuda-pathfinder-v1.7.0...cuda-pathfinder-v1.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `filelock` from 3.32.4 to 3.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/py-filelock/releases\"\u003efilelock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.32.5\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🧪 test(fork): report where a stalled fork stops by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/715\"\u003etox-dev/filelock#715\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📝 docs: say that mode is read-only in the thread-local section by \u003ca href=\"https://github.com/Gares95\"\u003e\u003ccode\u003e@​Gares95\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/716\"\u003etox-dev/filelock#716\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(lease): clear token after failed acquire by \u003ca href=\"https://github.com/lprnmns\"\u003e\u003ccode\u003e@​lprnmns\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/721\"\u003etox-dev/filelock#721\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/lprnmns\"\u003e\u003ccode\u003e@​lprnmns\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/721\"\u003etox-dev/filelock#721\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.32.4...3.32.5\"\u003ehttps://github.com/tox-dev/filelock/compare/3.32.4...3.32.5\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/filelock/blob/main/docs/changelog.rst\"\u003efilelock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e###########\nChangelog\n###########\u003c/p\u003e\n\u003cp\u003e.. towncrier-draft-entries:: Unreleased\u003c/p\u003e\n\u003cp\u003e.. towncrier release notes start\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.5 (2026-08-31)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eSoftFileLease.token\u003c/code\u003e and \u003ccode\u003eAsyncSoftFileLease.token\u003c/code\u003e now read \u003ccode\u003eNone\u003c/code\u003e after a failed acquisition, so a contender\nturned away by a live holder no longer reports a token for a claim it never published. :pr:\u003ccode\u003e721\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eDocument that \u003ccode\u003emode\u003c/code\u003e has no setter: unlike \u003ccode\u003epoll_interval\u003c/code\u003e, \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003eblocking\u003c/code\u003e and \u003ccode\u003elifetime\u003c/code\u003e, it is fixed at construction and \u003ccode\u003elock.mode = ...\u003c/code\u003e raises \u003ccode\u003eAttributeError\u003c/code\u003e. :pr:\u003ccode\u003e716\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.4 (2026-08-23)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eStrictSoftFileLock\u003c/code\u003e always retries a claim read whose first attempt reports the claim as pending, so a first read\nthat itself outlasts the retry grace no longer fails closed on a claim it could have read. :pr:\u003ccode\u003e705\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eWindowsFileLock\u003c/code\u003e waits out a transient \u003ccode\u003eSTATUS_ACCESS_DENIED\u003c/code\u003e from \u003ccode\u003eNtCreateFile\u003c/code\u003e for up to half a second\nbefore raising \u003ccode\u003ePermissionError\u003c/code\u003e, since a peer unlinking the lock file as it releases can answer that for a moment; a\nreal denial still fails fast. :pr:\u003ccode\u003e705\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eEvery lock class now escapes the hostname it publishes, so a host whose \u003ccode\u003esocket.gethostname()\u003c/code\u003e carries a space, a\nnewline or a byte outside UTF-8 no longer writes a marker it reads back as malformed. Such a host used to lose a held\n\u003ccode\u003eSoftReadWriteLock\u003c/code\u003e read slot to a peer and could not take a write slot or a \u003ccode\u003eStrictSoftFileLock\u003c/code\u003e at all. :pr:\u003ccode\u003e709\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.3 (2026-08-13)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003eThe fork-safety audit hook no longer prints \u003ccode\u003eException ignored in audit hook\u003c/code\u003e with a \u003ccode\u003eTypeError\u003c/code\u003e when an audit\nevent fires during interpreter shutdown, after CPython has already cleared the module globals. :pr:\u003ccode\u003e701\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.2 (2026-07-29)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003eA \u003ccode\u003eSoftReadWriteLock\u003c/code\u003e or \u003ccode\u003eSoftFileLease\u003c/code\u003e acquire whose heartbeat thread fails to start now unlinks its marker and\nhands the claim back, instead of leaving an unrefreshed marker a peer takes while the caller believes it still holds\nthe lock. :pr:\u003ccode\u003e691\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.1 (2026-07-26)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003eCanceling an \u003ccode\u003eAsyncSoftReadWriteLock\u003c/code\u003e acquire now releases the claim instead of leaking a marker whose heartbeat\nwedges every contender. :pr:\u003ccode\u003e686\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/1585dfef9355a5c77d4a9498cc34d3a98056fdb9\"\u003e\u003ccode\u003e1585dfe\u003c/code\u003e\u003c/a\u003e Release 3.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/00177c32686e60bc5ef9875b5841867ea08d4558\"\u003e\u003ccode\u003e00177c3\u003c/code\u003e\u003c/a\u003e 🐛 fix(lease): clear token after failed acquire (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/721\"\u003e#721\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/5aeb9b6a5fe1e86dcb1c44a927aefffd607b17b0\"\u003e\u003ccode\u003e5aeb9b6\u003c/code\u003e\u003c/a\u003e 📝 docs: say that mode is read-only in the thread-local section (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/716\"\u003e#716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/2634dd1dcc597b319770df027491f16d07662952\"\u003e\u003ccode\u003e2634dd1\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/720\"\u003e#720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/37dccf0276f6db1520db9e3482fdf0446c14276e\"\u003e\u003ccode\u003e37dccf0\u003c/code\u003e\u003c/a\u003e 🧪 test(fork): report where a stalled fork stops (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/715\"\u003e#715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tox-dev/py-filelock/compare/3.32.4...3.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.28.0 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.28.0...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `joblib` from 1.5.3 to 1.6.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/joblib/joblib/blob/main/CHANGES.rst\"\u003ejoblib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 1.6.0 - 2026/08/31\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix caching of functions whose source cannot be retrieved, such as functions\ndefined in a notebook cell. Their identity fell back to\n\u003ccode\u003estr(hash(func.__code__))\u003c/code\u003e, which is salted by \u003ccode\u003ePYTHONHASHSEED\u003c/code\u003e and so\ndiffered between processes. A worker reading the \u003ccode\u003efunc_code.py\u003c/code\u003e written by\nanother one concluded that the function had changed and wiped the whole\ncache directory for it, discarding results computed by its peers.\n\u003ccode\u003efunc_code.py\u003c/code\u003e is also no longer rewritten in place, so a reader can no\nlonger catch it half-written and draw the same conclusion.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1694\"\u003ejoblib/joblib#1694\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDrop python 3.9 support. The oldest supported Python version\nis now Python 3.10.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/pull/1773\"\u003ejoblib/joblib#1773\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eeval_expr\u003c/code\u003e (used to evaluate the \u003ccode\u003epre_dispatch\u003c/code\u003e argument of\n\u003ccode\u003eParallel\u003c/code\u003e) to raise a \u003ccode\u003eValueError\u003c/code\u003e as documented instead of leaking a\n\u003ccode\u003eZeroDivisionError\u003c/code\u003e for expressions that divide or take a modulo by zero.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/pull/1810\"\u003ejoblib/joblib#1810\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eMemorizedResult\u003c/code\u003e now forwards \u003ccode\u003emmap_mode\u003c/code\u003e to its store backend, so a\ncached array reconstructed from a location is memory-mapped as requested\ninstead of being loaded fully into memory.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/pull/1799\"\u003ejoblib/joblib#1799\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUnvendor cloudpickle to more quickly benefit from maintenance releases\nof cloudpickle\n\u003ca href=\"https://redirect.github.com/joblib/joblib/pull/1775\"\u003ejoblib/joblib#1775\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eMemory.cache\u003c/code\u003e for functions with a keyword-only argument that has a\ndefault declared before a keyword-only argument without a default.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1731\"\u003ejoblib/joblib#1731\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix behavior of \u003ccode\u003efilter_args\u003c/code\u003e on some precise cases.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/pull/1800\"\u003ejoblib/joblib#1800\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix a concurrency error that could happen with unordered generator.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/pull/1789\"\u003ejoblib/joblib#1789\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003edump()\u003c/code\u003e now accepts any input \u003ccode\u003eos.PathLike\u003c/code\u003e object to be consistent with\n\u003ccode\u003eload\u003c/code\u003e.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/pull/1812\"\u003ejoblib/joblib#1812\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe documentation now uses pydata sphinx theme. Furthermore, optional dependencies\n\u003ccode\u003etest\u003c/code\u003e and \u003ccode\u003edocs\u003c/code\u003e have been added to \u003ccode\u003epyproject.toml\u003c/code\u003e.\n\u003ca href=\"https://redirect.github.com/joblib/joblib/pull/1774\"\u003ejoblib/joblib#1774\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eVendor \u003ccode\u003eloky 3.6.0\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/cd9a6b05fc4f2b1c8202eb62c4e863484f8cc099\"\u003e\u003ccode\u003ecd9a6b0\u003c/code\u003e\u003c/a\u003e Release 1.6.0 (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1844\"\u003e#1844\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/d873f972949d78166af6c945667c53f04d41fed6\"\u003e\u003ccode\u003ed873f97\u003c/code\u003e\u003c/a\u003e MNT vendor loky 3.6.0 (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1843\"\u003e#1843\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/4ff61afd0849f18fddf5fbd137c1f02bfaed5223\"\u003e\u003ccode\u003e4ff61af\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 4 updates (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1832\"\u003e#1832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/804f4725e1a27b1425c8aabcf7312ceb11c3a07d\"\u003e\u003ccode\u003e804f472\u003c/code\u003e\u003c/a\u003e FIX make func_code stable across processes when the source is unavailable (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/65cc49da449f70ffa73bc7c3c57fd418392f9993\"\u003e\u003ccode\u003e65cc49d\u003c/code\u003e\u003c/a\u003e TST Restore RNG sequence in hash compatibility test (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1837\"\u003e#1837\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/c1b654161a2c245acdf9830bf6fc7553f8c0b6b2\"\u003e\u003ccode\u003ec1b6541\u003c/code\u003e\u003c/a\u003e CI Use pytest-run-parallel on free-threaded build (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1819\"\u003e#1819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/f6b80d3ec961409ff4704e9695e9c89599bcf272\"\u003e\u003ccode\u003ef6b80d3\u003c/code\u003e\u003c/a\u003e MNT Simplify isinstance check in hashing (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1835\"\u003e#1835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/fa4d5afd851955f3e2a805cdacaf6bf9512e7576\"\u003e\u003ccode\u003efa4d5af\u003c/code\u003e\u003c/a\u003e MNT remove python 3.9 from CI (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1773\"\u003e#1773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/53cea7b177c3400154613372614a0f35274b036d\"\u003e\u003ccode\u003e53cea7b\u003c/code\u003e\u003c/a\u003e DOC Update release docs to reflect usage of trusted publishing (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1826\"\u003e#1826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/joblib/joblib/commit/26500e91e1cfcacd0d50ba759bfecc4792f3528e\"\u003e\u003ccode\u003e26500e9\u003c/code\u003e\u003c/a\u003e Bump the github-actions group across 1 directory with 3 updates (\u003ca href=\"https://redirect.github.com/joblib/joblib/issues/1790\"\u003e#1790\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/joblib/joblib/compare/1.5.3...1.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic-core` from 2.46.4 to 2.46.5\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/001dea020e0809844e5b17666432c9135a976f46\"\u003e\u003ccode\u003e001dea0\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003epypa/gh-action-pypi-publish\u003c/code\u003e action to v1.14.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/558379fee957fad25858e33596146c72d5674843\"\u003e\u003ccode\u003e558379f\u003c/code\u003e\u003c/a\u003e Bump twine to v7.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/2cfd5d3d2ae721ea882c045f83b7f7a4003aab01\"\u003e\u003ccode\u003e2cfd5d3\u003c/code\u003e\u003c/a\u003e Do not check for docs build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a735bee5c64e1fe50785c376adaf1275e752b8ac\"\u003e\u003ccode\u003ea735bee\u003c/code\u003e\u003c/a\u003e Fix more Clippy lints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7eed4a16b87afaced4d0eafae230453de3410d64\"\u003e\u003ccode\u003e7eed4a1\u003c/code\u003e\u003c/a\u003e Fix Clippy 0.1.95 warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/b353bbb20a4989b4c033e2be2b4a40d36178b16a\"\u003e\u003ccode\u003eb353bbb\u003c/code\u003e\u003c/a\u003e Prepare release v2.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/63d2cccd6e760da6bbc7fe81a53cb2bde3768f5e\"\u003e\u003ccode\u003e63d2ccc\u003c/code\u003e\u003c/a\u003e Count validated model fields once in smart unions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a53ec2ed342fda4e6aa3684399d04ea57be9a6e4\"\u003e\u003ccode\u003ea53ec2e\u003c/code\u003e\u003c/a\u003e Speed up PyPy CI tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/d65e0f96e890ca82f4b66a15d5b3bd65af2c661c\"\u003e\u003ccode\u003ed65e0f9\u003c/code\u003e\u003c/a\u003e Workaround circular import error in Mypy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/47a6dbf8ad6216211bd0df6ec5c2c6c6ed905b72\"\u003e\u003ccode\u003e47a6dbf\u003c/code\u003e\u003c/a\u003e Fix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/core-v2.46.4...core-v2.46.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `regex` from 2026.7.19 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\u003c!-- 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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.7.19...2026.9.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e⚡ Performance — measured locally on this Mac, not lifted from PRs\u003c/h2\u003e\n\u003cp\u003eRun with \u003ccode\u003ecargo bench --bench \u0026lt;name\u0026gt; -- --save-baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.22.2\u003c/code\u003e, then \u003ccode\u003e--baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.23.1\u003c/code\u003e. Numbers are point-in-time wall clock on a single laptop; relative deltas are what matters, absolute numbers will differ on CI hardware.\u003c/p\u003e\n\u003ch3\u003eAdded-vocabulary deserialize — the headline win (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1999\"\u003e#1999\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003e\u003ccode\u003ebench: improve added_vocab_deserialize to reflect real-world workloads\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2000\"\u003e#2000\u003c/a\u003e) is now representative of how transformers actually loads tokenizer.json files. The combined effect of \u003ccode\u003edaachorse\u003c/code\u003e for the matching automaton plus the normalize-on-insert refactor is enormous on this workload:\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~410 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e248 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.1 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e273 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~395 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e235 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.4 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e290 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e400k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~15 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e980 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−94%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eReal-world impact: loading a Llama-3-style tokenizer with a large set of added tokens dropped from \u0026quot;noticeable pause\u0026quot; to \u0026quot;instant\u0026quot;.\u003c/p\u003e\n\u003ch3\u003eBPE encode\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch, no cache\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e530 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e446 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−16%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch\u003c/code\u003e (cached)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e690 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e685 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode\u003c/code\u003e (single)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.95 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.94 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (small)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e32.6 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e31.5 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−3%\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (big)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.01 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e988 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−2%\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eThe BPE per-thread cache PR (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e) shows much larger wins on highly-parallel workloads (+47–62% at 88+ threads on a server box, per the PR's own measurements on Vera). Single-thread batch numbers above are flat or slightly improved because cache-hit overhead was already low without contention.\u003c/p\u003e\n\u003ch3\u003eLlama-3 encode\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/huggingface/tokenizers/commit/7f1623b90b5adfb9bc327d4c3468d2f70bbce262\"\u003e\u003ccode\u003e7f1623b\u003c/code\u003e\u003c/a\u003e Bump version to 0.23.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bbe43ad73d8fc8932b9d0e657ddee3cd70c649a4\"\u003e\u003ccode\u003ebbe43ad\u003c/code\u003e\u003c/a\u003e ci: release workflow fixes (node + python) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2043\"\u003e#2043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/ab0c5d8fc13eb1c5001d9c06806635e2b5a42e9f\"\u003e\u003ccode\u003eab0c5d8\u003c/code\u003e\u003c/a\u003e Fix node release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2034\"\u003e#2034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/decd8e07dad15f296c0adc2bc3a560f62d3de2eb\"\u003e\u003ccode\u003edecd8e0\u003c/code\u003e\u003c/a\u003e bindings/python: free-threaded Python (3.14t) support (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2041\"\u003e#2041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/3992692d483bf3177219b52cb101b1bb055c18e6\"\u003e\u003ccode\u003e3992692\u003c/code\u003e\u003c/a\u003e update for release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2033\"\u003e#2033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bcdd25b97fcd78549903082ecf3ddd87d42c456b\"\u003e\u003ccode\u003ebcdd25b\u003c/code\u003e\u003c/a\u003e BPE cache: per-thread read-through cache to avoid RwLock atomics on hits (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/618eb383f43e207139eb5cdb9bca17796b5e9bd7\"\u003e\u003ccode\u003e618eb38\u003c/code\u003e\u003c/a\u003e Bump follow-redirects in /tokenizers/examples/unstable_wasm/www (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2024\"\u003e#2024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b6b1688bef2e87efc91af18edf7ac38b4d2dfbe6\"\u003e\u003ccode\u003eb6b1688\u003c/code\u003e\u003c/a\u003e chore: bump doc-builder SHA for PR upload workflow (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2025\"\u003e#2025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/19015d6b44aa3896626de5092e4171aed1b56d5b\"\u003e\u003ccode\u003e19015d6\u003c/code\u003e\u003c/a\u003e fix: use uvx --with cairosvg instead of uv pip install --system (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2021\"\u003e#2021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/efbcc68e321c364c8f9541f1c93a158df54d7da4\"\u003e\u003ccode\u003eefbcc68\u003c/code\u003e\u003c/a\u003e Ci benchmarks (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2019\"\u003e#2019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `torch` from 2.13.0 to 2.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytorch/pytorch/releases\"\u003etorch's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ePyTorch 2.14.0 Release Notes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#highlights\"\u003eHighlights\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytorch/pytorch/blob/HEAD/#backwards-incompatible-changes\"\u003eBackwards Incompatible Changes\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://githu...\n\n_Description has been truncated_","html_url":"https://github.com/dwest1507/nietzsche-chat/pull/30","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwest1507%2Fnietzsche-chat/issues/30","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/30/packages"}},{"old_version":"1.28.0","new_version":"1.29.0","update_type":"minor","path":null,"pr_created_at":"2026-09-05T15:35:42.000Z","version_change":"1.28.0 → 1.29.0","issue":{"uuid":"5358997376","node_id":"PR_kwDOPq_tdc8AAAABCVOWNA","number":27,"state":"open","title":"Bump the notebooks-minor-and-patch group with 4 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-05T15:35:42.000Z","updated_at":"2026-09-05T15:36:03.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"notebooks-minor-and-patch","update_count":4,"packages":[{"name":"huggingface-hub","old_version":"1.28.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"selenium","old_version":"4.47.0","new_version":"4.48.0","repository_url":"https://github.com/SeleniumHQ/Selenium"},{"name":"sentence-transformers","old_version":"6.0.0","new_version":"6.0.1","repository_url":"https://github.com/huggingface/sentence-transformers"},{"name":"statsmodels","old_version":"0.14.6","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"}],"path":null,"ecosystem":"pip"},"body":"Bumps the notebooks-minor-and-patch group with 4 updates: [huggingface-hub](https://github.com/huggingface/huggingface_hub), [selenium](https://github.com/SeleniumHQ/Selenium), [sentence-transformers](https://github.com/huggingface/sentence-transformers) and [statsmodels](https://github.com/statsmodels/statsmodels).\n\nUpdates `huggingface-hub` from 1.28.0 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.28.0...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `selenium` from 4.47.0 to 4.48.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/SeleniumHQ/Selenium/releases\"\u003eselenium's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eSelenium 4.48.0\u003c/h2\u003e\n\u003ch2\u003eDetailed Changelogs by Component\u003c/h2\u003e\n\u003cp\u003e\u003c!-- raw HTML omitted --\u003e \u003cstrong\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/blob/trunk/java/CHANGELOG\"\u003eJava\u003c/a\u003e\u003c/strong\u003e     |    \u003c!-- raw HTML omitted --\u003e \u003cstrong\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/blob/trunk/py/CHANGES\"\u003ePython\u003c/a\u003e\u003c/strong\u003e     |    \u003c!-- raw HTML omitted --\u003e \u003cstrong\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/blob/trunk/dotnet/CHANGELOG\"\u003eDotNet\u003c/a\u003e\u003c/strong\u003e     |    \u003c!-- raw HTML omitted --\u003e \u003cstrong\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/blob/trunk/rb/CHANGES\"\u003eRuby\u003c/a\u003e\u003c/strong\u003e     |    \u003c!-- raw HTML omitted --\u003e \u003cstrong\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/blob/trunk/javascript/selenium-webdriver/CHANGES.md\"\u003eJavaScript\u003c/a\u003e\u003c/strong\u003e\n\u003c!-- raw HTML omitted --\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[js] Normalize empty custom locator results by \u003ca href=\"https://github.com/munawiki\"\u003e\u003ccode\u003e@​munawiki\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17851\"\u003eSeleniumHQ/selenium#17851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[py]: fix W3C capabilities built from a list of options (create_matches) by \u003ca href=\"https://github.com/navin772\"\u003e\u003ccode\u003e@​navin772\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17897\"\u003eSeleniumHQ/selenium#17897\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[rb] add low-level BiDi protocol integration specs by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17878\"\u003eSeleniumHQ/selenium#17878\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix badge for CI build on the default branch by \u003ca href=\"https://github.com/nvborisenko\"\u003e\u003ccode\u003e@​nvborisenko\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17901\"\u003eSeleniumHQ/selenium#17901\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[py] Fix broken reStructuredText link in docs by \u003ca href=\"https://github.com/cgoldberg\"\u003e\u003ccode\u003e@​cgoldberg\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17902\"\u003eSeleniumHQ/selenium#17902\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[grid] stop forwarding se:remoteUrl past the Node that consumes it by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17908\"\u003eSeleniumHQ/selenium#17908\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[grid] Forward file upload/download for Kubernetes, Docker and relay sessions by \u003ca href=\"https://github.com/VietND96\"\u003e\u003ccode\u003e@​VietND96\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17914\"\u003eSeleniumHQ/selenium#17914\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] reduce github cache churn and aggressively prune CodeQL caches by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17909\"\u003eSeleniumHQ/selenium#17909\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[java] fix two flaky BiDi tests that left timing-dependent state behind by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17918\"\u003eSeleniumHQ/selenium#17918\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[java] Add warn annotation for undeclared field while JSON coercion  by \u003ca href=\"https://github.com/pujagani\"\u003e\u003ccode\u003e@​pujagani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17917\"\u003eSeleniumHQ/selenium#17917\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[py] temporarily disable nightly TestPyPI publishing by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17920\"\u003eSeleniumHQ/selenium#17920\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[rb] fix Safari test failures by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17922\"\u003eSeleniumHQ/selenium#17922\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] fix the issues that caused the release workflow to fail during last release by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17921\"\u003eSeleniumHQ/selenium#17921\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRevert \u0026quot;[py] temporarily disable nightly TestPyPI publishing (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17920\"\u003e#17920\u003c/a\u003e)\u0026quot; by \u003ca href=\"https://github.com/diemol\"\u003e\u003ccode\u003e@​diemol\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17924\"\u003eSeleniumHQ/selenium#17924\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[rb] fix silent hang on oversized WebSocket frames by \u003ca href=\"https://github.com/aguspe\"\u003e\u003ccode\u003e@​aguspe\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17655\"\u003eSeleniumHQ/selenium#17655\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[js] Ensure BiDi is not exposed on Driver by \u003ca href=\"https://github.com/pujagani\"\u003e\u003ccode\u003e@​pujagani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17926\"\u003eSeleniumHQ/selenium#17926\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] charter: link the accepted BiDi support boundary record by \u003ca href=\"https://github.com/AutomatedTester\"\u003e\u003ccode\u003e@​AutomatedTester\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17928\"\u003eSeleniumHQ/selenium#17928\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHonour the \u003ccode\u003eDO_NOT_TRACK\u003c/code\u003e env var by \u003ca href=\"https://github.com/shs96c\"\u003e\u003ccode\u003e@​shs96c\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17931\"\u003eSeleniumHQ/selenium#17931\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] record flaky tests on trunk and report weekly offenders to Slack by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17930\"\u003eSeleniumHQ/selenium#17930\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] ignore .bazelbsp/ IDE-generated directory by \u003ca href=\"https://github.com/diemol\"\u003e\u003ccode\u003e@​diemol\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17932\"\u003eSeleniumHQ/selenium#17932\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[adr] Install browser extensions from the driver directly by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17817\"\u003eSeleniumHQ/selenium#17817\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[py] generate the internal BiDi protocol layer from the shared binding-neutral schema by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17761\"\u003eSeleniumHQ/selenium#17761\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[rb] always reject a missing required inbound BiDi field by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17936\"\u003eSeleniumHQ/selenium#17936\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] make Java and .NET release reruns pass when already published by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17935\"\u003eSeleniumHQ/selenium#17935\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] Move dependency updates into a weekly workflow by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17934\"\u003eSeleniumHQ/selenium#17934\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[rb] accept a whole-valued float for an integer BiDi field by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17939\"\u003eSeleniumHQ/selenium#17939\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] unlock trunk once the release finishes writing to it by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17938\"\u003eSeleniumHQ/selenium#17938\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[js] Add serialization and domain layer by \u003ca href=\"https://github.com/pujagani\"\u003e\u003ccode\u003e@​pujagani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17927\"\u003eSeleniumHQ/selenium#17927\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] stop updating browsers and CDP during release preparation by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17940\"\u003eSeleniumHQ/selenium#17940\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[py] update new BiDi layer generation to conform to latest proposed ADR by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17942\"\u003eSeleniumHQ/selenium#17942\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[dotnet] [bidi] Throw in case of unknown discriminator by \u003ca href=\"https://github.com/nvborisenko\"\u003e\u003ccode\u003e@​nvborisenko\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17948\"\u003eSeleniumHQ/selenium#17948\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[rb] reject an inbound BiDi scalar outside its union's declared arms by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17947\"\u003eSeleniumHQ/selenium#17947\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[build] alert Slack when a CDP update lands on trunk by \u003ca href=\"https://github.com/titusfortner\"\u003e\u003ccode\u003e@​titusfortner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17950\"\u003eSeleniumHQ/selenium#17950\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[js][bidi] Add BiDi connection-level event subscription by \u003ca href=\"https://github.com/pujagani\"\u003e\u003ccode\u003e@​pujagani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17946\"\u003eSeleniumHQ/selenium#17946\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[dotnet] [bidi] SetMediaFeaturesOverride command in Emulation module by \u003ca href=\"https://github.com/nvborisenko\"\u003e\u003ccode\u003e@​nvborisenko\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17953\"\u003eSeleniumHQ/selenium#17953\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/munawiki\"\u003e\u003ccode\u003e@​munawiki\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/SeleniumHQ/selenium/pull/17851\"\u003eSeleniumHQ/selenium#17851\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/SeleniumHQ/selenium/compare/selenium-4.47.0...selenium-4.48.0\"\u003ehttps://github.com/SeleniumHQ/selenium/compare/selenium-4.47.0...selenium-4.48.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/SeleniumHQ/selenium/commit/27f5213055e28398a5105b7892b7a3bb2012a6ef\"\u003e\u003ccode\u003e27f5213\u003c/code\u003e\u003c/a\u003e [build] Prepare for release of selenium-4.48.0 (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17956\"\u003e#17956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/857ff4fe490f4914c354979efb4f62c74fe387d9\"\u003e\u003ccode\u003e857ff4f\u003c/code\u003e\u003c/a\u003e [build] remove cddl updates from release preparation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/2183264fb7c1d63c7cebc64ba5649b67902b4c35\"\u003e\u003ccode\u003e2183264\u003c/code\u003e\u003c/a\u003e [dotnet] [bidi] SetMediaFeaturesOverride command in Emulation module (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17953\"\u003e#17953\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/5fd1f414be84a2e5b3753512fb1555d91c5c9ae1\"\u003e\u003ccode\u003e5fd1f41\u003c/code\u003e\u003c/a\u003e [build] unlock trunk when release preparation PR is closed without merging\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/5b053b5a2684a2104a56088d90d6c5e278d21e1e\"\u003e\u003ccode\u003e5b053b5\u003c/code\u003e\u003c/a\u003e [js][bidi] Add BiDi connection-level event subscription (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17946\"\u003e#17946\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/498c0e7e8dd4e314710e69855898e877d3fe291f\"\u003e\u003ccode\u003e498c0e7\u003c/code\u003e\u003c/a\u003e [build] alert Slack when a CDP update lands on trunk (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17950\"\u003e#17950\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/7bfaedb223f530da5b6e1e8e0038c50100bd6c4f\"\u003e\u003ccode\u003e7bfaedb\u003c/code\u003e\u003c/a\u003e [rb] reject an inbound BiDi scalar outside its union's declared arms (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17947\"\u003e#17947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/083869ccd9866da3975b7f9cd8496a8ca864c62f\"\u003e\u003ccode\u003e083869c\u003c/code\u003e\u003c/a\u003e [dotnet] [bidi] Throw in case of unknown discriminator (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17948\"\u003e#17948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/5b3666d62507b79ae08b0bf0e18604c28bb8f404\"\u003e\u003ccode\u003e5b3666d\u003c/code\u003e\u003c/a\u003e [py] update new BiDi layer generation to conform to latest proposed ADR (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17942\"\u003e#17942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SeleniumHQ/selenium/commit/a4b3c3d00c8b23177c61eb8820bdb1a308a20eac\"\u003e\u003ccode\u003ea4b3c3d\u003c/code\u003e\u003c/a\u003e [build] stop updating browsers and CDP during release preparation (\u003ca href=\"https://redirect.github.com/SeleniumHQ/Selenium/issues/17940\"\u003e#17940\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/SeleniumHQ/Selenium/compare/selenium-4.47.0...selenium-4.48.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentence-transformers` from 6.0.0 to 6.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/sentence-transformers/releases\"\u003esentence-transformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.0.1 - Restore the PyLate prefix on prompted checkpoints, 80 documented multi-vector models\u003c/h2\u003e\n\u003cp\u003eThis patch release fixes a multi-vector loading bug: PyLate checkpoints that carry both a \u003ccode\u003e[Q]\u003c/code\u003e/\u003ccode\u003e[D]\u003c/code\u003e prefix and a text prompt lost the prefix, so they were encoded without a marker they were trained with. It also grows the documented multi-vector model tables from 51 checkpoints to 80.\u003c/p\u003e\n\u003cp\u003eInstall this version with\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Training + Inference\r\npip install sentence-transformers[train]==6.0.1\r\n\u003ch1\u003eInference only, use one of:\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers==6.0.1\npip install sentence-transformers[onnx-gpu]==6.0.1\npip install sentence-transformers[onnx]==6.0.1\npip install sentence-transformers[openvino]==6.0.1\u003c/p\u003e\n\u003ch1\u003eMultimodal dependencies (optional):\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers[image]==6.0.1\npip install sentence-transformers[audio]==6.0.1\npip install sentence-transformers[video]==6.0.1\u003c/p\u003e\n\u003ch1\u003eOr combine as needed:\u003c/h1\u003e\n\u003cp\u003epip install sentence-transformers[train,onnx,image]==6.0.1\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003ch2\u003eCompose the PyLate prefix with the saved prompt (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3968\"\u003e#3968\u003c/a\u003e)\u003c/h2\u003e\n\u003cp\u003ePyLate supports a prefix as well as prompt text, and Sentence Transformers assumed that these were mutually exclusive. However, the following three checkpoints carry both a prefix and a prompt, and were trained with the prefix prepended to the prompt text:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero\"\u003e\u003ccode\u003elightonai/ColBERT-Zero\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero-unsupervised\"\u003e\u003ccode\u003elightonai/ColBERT-Zero-unsupervised\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://huggingface.co/lightonai/ColBERT-Zero-supervised\"\u003e\u003ccode\u003elightonai/ColBERT-Zero-supervised\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003ePyLate trained these checkpoints on \u003ccode\u003e[CLS] [Q] search_query: ...\u003c/code\u003e and \u003ccode\u003e[CLS] [D] search_document: ...\u003c/code\u003e, but Sentence Transformers dropped the prefix and encoded them as \u003ccode\u003e[CLS] search_query: ...\u003c/code\u003e and \u003ccode\u003e[CLS] search_document: ...\u003c/code\u003e. After the fix, the performance of the \u003ccode\u003eColBERT-Zero\u003c/code\u003e model improved from 0.6569 NDCG@10 to 0.6824 on the NanoBEIR benchmark. To my knowledge, only these 3 checkpoints used both a prefix and a prompt, so this is the only case where the bug would have affected you.\u003c/p\u003e\n\u003ch2\u003eForward \u003ccode\u003etask\u003c/code\u003e to routed modules in \u003ccode\u003eRouter.preprocess\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3967\"\u003e#3967\u003c/a\u003e)\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003eRouter.forward\u003c/code\u003e has always passed \u003ccode\u003etask\u003c/code\u003e down to the routed module, but \u003ccode\u003eRouter.preprocess\u003c/code\u003e did not, so anything a module does with the task at preprocessing time did nothing behind a \u003ccode\u003eRouter\u003c/code\u003e: \u003ccode\u003equery_length\u003c/code\u003e and \u003ccode\u003edocument_length\u003c/code\u003e caps, \u003ccode\u003equery_expansion\u003c/code\u003e, and the chat-template \u003ccode\u003etask\u003c/code\u003e keyword. No released checkpoint combines a \u003ccode\u003eRouter\u003c/code\u003e with those settings, so this is a latent bug rather than one you are likely to have hit. It would have affected anyone building such a model themselves, with no error to indicate it.\u003c/p\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eThe multi-vector \u003ca href=\"https://sbert.net/docs/multi_vector_encoder/pretrained_models.html\"\u003epretrained models tables\u003c/a\u003e grew from 29 text and 22 visual document retrieval checkpoints to 38 and 42 (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3963\"\u003e#3963\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3969\"\u003e#3969\u003c/a\u003e), with \u003ccode\u003erevision\u003c/code\u003e and \u003ccode\u003etrust_remote_code\u003c/code\u003e notes refreshed as upstream pull requests merged (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3972\"\u003e#3972\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eDocumented which Hub tag to filter on for each model type (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3964\"\u003e#3964\u003c/a\u003e), and linked the Multi-Vector Encoder blogposts from the docs (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3966\"\u003e#3966\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded MultiVectorEncoder to the Agent Skill README and refreshed the SauerkrautLM scores (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3955\"\u003e#3955\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eCorrected the minimum versions in the README (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3952\"\u003e#3952\u003c/a\u003e). It still recommended PyTorch 1.11.0+ and \u003ccode\u003etransformers\u003c/code\u003e v4.41.0+, where v6.0 requires PyTorch 2.2+ and \u003ccode\u003etransformers\u003c/code\u003e v5.0+. This is the text rendered as the PyPI project description.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAll Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: Add MultiVectorEncoder to the skills README, refresh the SauerkrautLM scores by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3955\"\u003ehuggingface/sentence-transformers#3955\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix the README dependency versions by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3952\"\u003ehuggingface/sentence-transformers#3952\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Add more MultiVectorEncoder models to the pretrained models tables by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3963\"\u003ehuggingface/sentence-transformers#3963\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Clarify which Hub tags to filter on for each model type by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3964\"\u003ehuggingface/sentence-transformers#3964\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[docs] Link the Multi-Vector Encoder blogposts by \u003ca href=\"https://github.com/tomaarsen\"\u003e\u003ccode\u003e@​tomaarsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/pull/3966\"\u003ehuggingface/sentence-transformers#3966\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/huggingface/sentence-transformers/commit/b0acd1a4d22ba2bc10072868ddea7612561c9424\"\u003e\u003ccode\u003eb0acd1a\u003c/code\u003e\u003c/a\u003e Update README installation versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/9b415ac93b586400258ac9876c81ce28c36547ba\"\u003e\u003ccode\u003e9b415ac\u003c/code\u003e\u003c/a\u003e Release v6.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/cc0669cea57c834c651f001e3cb07b6fc847f147\"\u003e\u003ccode\u003ecc0669c\u003c/code\u003e\u003c/a\u003e Add/update revisions for pretrained MVE models (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3972\"\u003e#3972\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/f8390f466c9d127cd51dd41805557adaab09d472\"\u003e\u003ccode\u003ef8390f4\u003c/code\u003e\u003c/a\u003e [docs] Refresh the MultiVectorEncoder pretrained models tables (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3969\"\u003e#3969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/4b517229c1dc17ead6c2a61b3d248f62fe4738eb\"\u003e\u003ccode\u003e4b51722\u003c/code\u003e\u003c/a\u003e [fix] Compose the PyLate prefix with the saved prompt (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3968\"\u003e#3968\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/e99c4a9f2422c285cd2d286aeda1af237eadd01d\"\u003e\u003ccode\u003ee99c4a9\u003c/code\u003e\u003c/a\u003e [fix] Forward \u003ccode\u003etask\u003c/code\u003e to routed modules in \u003ccode\u003eRouter.preprocess\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3967\"\u003e#3967\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/5d2ec939e960d85afe638bba87523926c63ab263\"\u003e\u003ccode\u003e5d2ec93\u003c/code\u003e\u003c/a\u003e [docs] Link the Multi-Vector Encoder blogposts (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3966\"\u003e#3966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/9c5de2aa8432d7d150e35a7cd4383a39a13e307b\"\u003e\u003ccode\u003e9c5de2a\u003c/code\u003e\u003c/a\u003e [docs] Clarify which Hub tags to filter on for each model type (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3964\"\u003e#3964\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/83680bdf460229a41dd3bf07ed80b5a65d29a430\"\u003e\u003ccode\u003e83680bd\u003c/code\u003e\u003c/a\u003e [docs] Add more MultiVectorEncoder models to the pretrained models tables (\u003ca href=\"https://redirect.github.com/huggingface/sentence-transformers/issues/3\"\u003e#3\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/sentence-transformers/commit/1a43278abe510ca9011fdd0e698c58470ef830eb\"\u003e\u003ccode\u003e1a43278\u003c/code\u003e\u003c/a\u003e docs: Add MultiVectorEncoder to the skills README, refresh the SauerkrautLM s...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/huggingface/sentence-transformers/compare/v6.0.0...v6.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `statsmodels` from 0.14.6 to 0.15.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/statsmodels/statsmodels/releases\"\u003estatsmodels's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 0.15.0\u003c/h2\u003e\n\u003cp\u003eThe statsmodels developers are happy to announce the release of 0.15.0. 358 issues were closed in this release and 655 pull requests were merged. Major new features include:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eStandardized on \u003ccode\u003erng\u003c/code\u003e for controlling randomness across the package (SPEC 007), replacing \u003ccode\u003eseed\u003c/code\u003e/\u003ccode\u003erandom_state\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFunctions with variable-length tuple returns now return documented \u003ccode\u003eNamedTuple\u003c/code\u003e results instead\u003c/li\u003e\n\u003cli\u003eA new abstracted formula engine that supports both \u003ccode\u003epatsy\u003c/code\u003e and \u003ccode\u003eformulaic\u003c/code\u003e as the backend\u003c/li\u003e\n\u003cli\u003eSupport for \u003ccode\u003ePolars\u003c/code\u003e DataFrames and Series as model input\u003c/li\u003e\n\u003cli\u003eSwitched the build backend from \u003ccode\u003esetuptools\u003c/code\u003e to \u003ccode\u003emeson-python\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eNew robust estimators: \u003ccode\u003eCovDetMCD\u003c/code\u003e, \u003ccode\u003eCovDetS\u003c/code\u003e, \u003ccode\u003eCovDetMM\u003c/code\u003e, and \u003ccode\u003eRLMDetSMM\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eNew tests: Diebold-Mariano, Pesaran-Timmermann, Jonckheere-Terpstra, Leybourne-McCabe, and a delete-k block jackknife estimator\u003c/li\u003e\n\u003cli\u003eThe Hamilton filter, local false discovery rate correction, and an L1-penalized GLM solver\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eHurdleCountModel\u003c/code\u003e gained \u003ccode\u003efit_regularized\u003c/code\u003e, and \u003ccode\u003eMICEData\u003c/code\u003e is now iterable\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThis release also raises the minimum supported versions of NumPy, SciPy, and pandas, and tightens input validation for many string-valued options across the package (invalid values that previously failed silently or with a confusing error now raise a clear \u003ccode\u003eValueError\u003c/code\u003e). A handful of long-standing bugs in seldom-exercised code paths were also corrected as part of a systematic coverage audit this cycle, some of which change numerical output for affected models. See the \u003ca href=\"https://www.statsmodels.org/devel/release/version0.15.0.html\"\u003erelease notes\u003c/a\u003e for the complete list of enhancements, breaking changes, and bug fixes.\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/statsmodels/statsmodels/commit/278ff9950636cdd4939b4055e339a8e681d79cab\"\u003e\u003ccode\u003e278ff99\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/statsmodels/statsmodels/issues/10211\"\u003e#10211\u003c/a\u003e from bashtage/update-release-note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/ab3f3bc0b70afa94ce0651e8f7c8a6f33c83b378\"\u003e\u003ccode\u003eab3f3bc\u003c/code\u003e\u003c/a\u003e DOC: Final release note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/9307ef1b3a975a3807009432cbb489c4ae6f5c60\"\u003e\u003ccode\u003e9307ef1\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/statsmodels/statsmodels/issues/8712\"\u003e#8712\u003c/a\u003e from bdpedigo/nobs-style\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/463e5c511f3cb55372e7443c4e833691db3bfb67\"\u003e\u003ccode\u003e463e5c5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/statsmodels/statsmodels/issues/10210\"\u003e#10210\u003c/a\u003e from Panzerkampfwagen-del/mice-data-iterable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/cc734d87f77f7e20b58e2f0a104a0e355cd1e1a1\"\u003e\u003ccode\u003ecc734d8\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into mice-data-iterable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/2912b8478c164b80e0b1dca643024d2fe3d6557b\"\u003e\u003ccode\u003e2912b84\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/statsmodels/statsmodels/issues/10209\"\u003e#10209\u003c/a\u003e from Panzerkampfwagen-del/var-df-model-docstring\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/279b9f4b604bf71f14af0c789f28a4c3e5c85dc0\"\u003e\u003ccode\u003e279b9f4\u003c/code\u003e\u003c/a\u003e ENH: make MICEData iterable, yielding successive imputed datasets\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/ce7f2c03a53b305bb9569d1d8f69d4334b2ad6db\"\u003e\u003ccode\u003ece7f2c0\u003c/code\u003e\u003c/a\u003e DOC: clarify VARResults.df_model counts parameters per equation\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/d1e1875f0c5915eda3abfa878e25209e6244b2dd\"\u003e\u003ccode\u003ed1e1875\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/statsmodels/statsmodels/issues/10205\"\u003e#10205\u003c/a\u003e from bashtage/fix-hurdle-and-l1-cov\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/statsmodels/statsmodels/commit/bb385fb9a1f874768817fd8e84f1a99e25f0d75c\"\u003e\u003ccode\u003ebb385fb\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/statsmodels/statsmodels/issues/10208\"\u003e#10208\u003c/a\u003e from bashtage/update-release-note\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/statsmodels/statsmodels/compare/v0.14.6...v0.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/dwest1507/baby-names-app/pull/27","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/dwest1507%2Fbaby-names-app/issues/27","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/27/packages"}},{"old_version":"1.28.0","new_version":"1.29.0","update_type":"minor","path":null,"pr_created_at":"2026-09-05T14:55:57.000Z","version_change":"1.28.0 → 1.29.0","issue":{"uuid":"5358762751","node_id":"PR_kwDOUOzYNc8AAAABCVDSfA","number":10,"state":"open","title":"Bump the minor-update group across 1 directory with 179 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-05T14:55:57.000Z","updated_at":"2026-09-05T14:56:08.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-update","update_count":179,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"huggingface-hub","old_version":"1.28.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"fastapi","old_version":"0.136.3","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"starlette","old_version":"1.3.1","new_version":"1.6.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"prometheus-fastapi-instrumentator","old_version":"8.0.2","new_version":"8.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"pyzmq","old_version":"27.1.0","new_version":"27.2.0","repository_url":"https://github.com/zeromq/pyzmq"},{"name":"python-json-logger","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"pybase64","old_version":"1.4.3","new_version":"1.5.0","repository_url":"https://github.com/mayeut/pybase64"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions-ai","old_version":"0.4.13","new_version":"0.5.1"},{"name":"triton","old_version":"3.7.1","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"torchcodec","old_version":"0.14.0+cu130","new_version":"0.16.0","repository_url":"https://github.com/pytorch/torchcodec"},{"name":"pynvvideocodec","old_version":"2.0.4","new_version":"2.2.2"},{"name":"nvidia-cutlass-dsl","old_version":"4.6.2","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.8","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.86","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.86","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"cohere","old_version":"7.0.8","new_version":"7.1.1","repository_url":"https://github.com/cohere-ai/cohere-python"},{"name":"cohere-melody","old_version":"0.11.1","new_version":"0.13.4","repository_url":"https://github.com/cohere-ai/melody"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.0","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.3.0","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.1","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"detect-installer","old_version":"0.1.0","new_version":"0.2.1"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi-cloud-cli","old_version":"0.21.0","new_version":"0.24.0","repository_url":"https://github.com/fastapilabs/fastapi-cloud-cli"},{"name":"fastar","old_version":"0.11.0","new_version":"0.12.0","repository_url":"https://github.com/DoctorJohn/fastar"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.15.0","new_version":"0.16.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema-rs","old_version":"0.46.5","new_version":"0.52.1","repository_url":"https://github.com/Stranger6667/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llguidance","old_version":"1.7.6","new_version":"1.8.0","repository_url":"https://github.com/microsoft/llguidance"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.1.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.20.0.48","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.1","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.29.7","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"peft","old_version":"0.19.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.7","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pydantic-settings","old_version":"2.14.2","new_version":"2.15.0","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pyrate-limiter","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/vutran1710/PyrateLimiter"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"rignore","old_version":"0.7.6","new_version":"0.8.1"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"schemathesis","old_version":"4.21.6","new_version":"4.25.2","repository_url":"https://github.com/schemathesis/schemathesis"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"sentry-sdk","old_version":"2.63.0","new_version":"2.68.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.26.8","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.2","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.5","repository_url":"https://github.com/astral-sh/ruff"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 179 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.28.0` | `1.29.0` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.136.3` | `0.141.1` |\n| [starlette](https://github.com/Kludex/starlette) | `1.3.1` | `1.6.0` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `8.0.2` | `8.1.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [pyzmq](https://github.com/zeromq/pyzmq) | `27.1.0` | `27.2.0` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `4.1.0` | `4.2.0` |\n| [pybase64](https://github.com/mayeut/pybase64) | `1.4.3` | `1.5.0` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| opentelemetry-semantic-conventions-ai | `0.4.13` | `0.5.1` |\n| [triton](https://github.com/triton-lang/triton) | `3.7.1` | `3.8.0` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [torchcodec](https://github.com/pytorch/torchcodec) | `0.14.0+cu130` | `0.16.0` |\n| pynvvideocodec | `2.0.4` | `2.2.2` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.6.2` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.8` | `0.2.6` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.86` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.86` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| [cohere](https://github.com/cohere-ai/cohere-python) | `7.0.8` | `7.1.1` |\n| [cohere-melody](https://github.com/cohere-ai/melody) | `0.11.1` | `0.13.4` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.0` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.3.0` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.1` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| detect-installer | `0.1.0` | `0.2.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi-cloud-cli](https://github.com/fastapilabs/fastapi-cloud-cli) | `0.21.0` | `0.24.0` |\n| [fastar](https://github.com/DoctorJohn/fastar) | `0.11.0` | `0.12.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.15.0` | `0.16.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonschema-rs](https://github.com/Stranger6667/jsonschema) | `0.46.5` | `0.52.1` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llguidance](https://github.com/microsoft/llguidance) | `1.7.6` | `1.8.0` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.1.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.20.0.48` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.1` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.29.7` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [peft](https://github.com/huggingface/peft) | `0.19.1` | `0.20.0` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.7` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.14.2` | `2.15.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pyrate-limiter](https://github.com/vutran1710/PyrateLimiter) | `4.4.0` | `4.5.0` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| rignore | `0.7.6` | `0.8.1` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [schemathesis](https://github.com/schemathesis/schemathesis) | `4.21.6` | `4.25.2` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.63.0` | `2.68.1` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.26.8` | `0.27.2` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.2` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.5` |\n\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.28.0 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\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/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.28.0...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `fastapi` from 0.136.3 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15093\"\u003e#15093\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.10\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling sequences with nested Annotated types. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14874\"\u003e#14874\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Accept any base test failure as regression. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16092\"\u003e#16092\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Preserve pytest exit code in regression check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16091\"\u003e#16091\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Test PR regressions against base code. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16090\"\u003e#16090\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.9\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eexclude_defaults\u003c/code\u003e not propagated to dict keys and values in \u003ccode\u003ejsonable_encoder\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16043\"\u003e#16043\u003c/a\u003e by \u003ca href=\"https://github.com/MBGrao\"\u003e\u003ccode\u003e@​MBGrao\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\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/fastapi/fastapi/commit/95f8322ee1dcda7ceace7b1c4f6c9915b36d748f\"\u003e\u003ccode\u003e95f8322\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16106\"\u003e#16106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f137944c435cff4e4b30ea7d12855ea88ddb868c\"\u003e\u003ccode\u003ef137944\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d62354434b2e508fe89024213b220ca8e67dea5e\"\u003e\u003ccode\u003ed623544\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for background tasks and headers from dependencies in `app.fron...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1d211b9c1009d577f39fa2b19b10d9a93a72a0ed\"\u003e\u003ccode\u003e1d211b9\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8a1f8768411e62093e70ce142ea10863a485643c\"\u003e\u003ccode\u003e8a1f876\u003c/code\u003e\u003c/a\u003e 📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16104\"\u003e#16104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c7e7b651d6946c07cc9f675f39c9501d08319e57\"\u003e\u003ccode\u003ec7e7b65\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.0 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16103\"\u003e#16103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/6bceb84053eb2405e9c000aad30ea13367b5ee32\"\u003e\u003ccode\u003e6bceb84\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/5429fed84e84e32672c25a953eca3429b841ce90\"\u003e\u003ccode\u003e5429fed\u003c/code\u003e\u003c/a\u003e ✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more conven...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/628663f4f899c465da423bce681c7adf9a218948\"\u003e\u003ccode\u003e628663f\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.140.13 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16096\"\u003e#16096\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/0b54fd00273019034dd30b120ac842e65d80690e\"\u003e\u003ccode\u003e0b54fd0\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.136.3...0.141.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `starlette` from 1.3.1 to 1.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kludex/starlette/releases\"\u003estarlette's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.6.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003emax_body_size\u003c/code\u003e to \u003ccode\u003eStarlette\u003c/code\u003e and route classes by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3431\"\u003eKludex/starlette#3431\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ehttp.response.debug\u003c/code\u003e info via response extensions by \u003ca href=\"https://github.com/y2kbugger\"\u003e\u003ccode\u003e@​y2kbugger\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3130\"\u003eKludex/starlette#3130\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/y2kbugger\"\u003e\u003ccode\u003e@​y2kbugger\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3130\"\u003eKludex/starlette#3130\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/starlette/compare/1.5.1...1.6.0\"\u003ehttps://github.com/Kludex/starlette/compare/1.5.1...1.6.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.5.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eReject inverted single-byte Range like \u003ccode\u003ebytes=5-4\u003c/code\u003e by \u003ca href=\"https://github.com/nikolauspschuetz\"\u003e\u003ccode\u003e@​nikolauspschuetz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3389\"\u003eencode/starlette#3389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLimit \u003ccode\u003eFileResponse\u003c/code\u003e to 100 ranges by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3430\"\u003eencode/starlette#3430\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/encode/starlette/compare/1.5.0...1.5.1\"\u003ehttps://github.com/encode/starlette/compare/1.5.0...1.5.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.5.0\u003c/h2\u003e\n\u003cp\u003eThis release is all about giving \u003ccode\u003eGZipMiddleware\u003c/code\u003e some love. 🗜️\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eexclude_content_types\u003c/code\u003e parameter to \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3418\"\u003eencode/starlette#3418\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlush GZip output for each streamed chunk by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3419\"\u003eencode/starlette#3419\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSkip compression of partial responses in \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3420\"\u003eencode/starlette#3420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpand default excluded content types in \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3421\"\u003eencode/starlette#3421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/encode/starlette/compare/1.4.1...1.5.0\"\u003ehttps://github.com/encode/starlette/compare/1.4.1...1.5.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.4.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault \u003ccode\u003ethread_minimum_size\u003c/code\u003e in \u003ccode\u003eGZipResponder\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3415\"\u003eKludex/starlette#3415\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/starlette/compare/1.4.0...1.4.1\"\u003ehttps://github.com/Kludex/starlette/compare/1.4.0...1.4.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLazily allocate GZipMiddleware compression resources by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3407\"\u003eKludex/starlette#3407\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003ezlib.compressobj\u003c/code\u003e instead of \u003ccode\u003eGzipFile\u003c/code\u003e in \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3411\"\u003eKludex/starlette#3411\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOffload large GZip compression by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3410\"\u003eKludex/starlette#3410\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/benberryallwood\"\u003e\u003ccode\u003e@​benberryallwood\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3334\"\u003eKludex/starlette#3334\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lkk7\"\u003e\u003ccode\u003e@​lkk7\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3359\"\u003eKludex/starlette#3359\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/starlette/compare/1.3.1...1.4.0\"\u003ehttps://github.com/Kludex/starlette/compare/1.3.1...1.4.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kludex/starlette/blob/main/docs/release-notes.md\"\u003estarlette's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.6.0 (August 8, 2026)\u003c/h2\u003e\n\u003ch4\u003eAdded\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003emax_body_size\u003c/code\u003e to \u003ccode\u003eStarlette\u003c/code\u003e and route classes \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3431\"\u003e#3431\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ehttp.response.debug\u003c/code\u003e information via response extensions \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3130\"\u003e#3130\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.1 (August 8, 2026)\u003c/h2\u003e\n\u003ch4\u003eFixed\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eReject inverted single-byte ranges in \u003ccode\u003eFileResponse\u003c/code\u003e \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3389\"\u003e#3389\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLimit \u003ccode\u003eFileResponse\u003c/code\u003e to 100 ranges \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3430\"\u003e#3430\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.0 (August 8, 2026)\u003c/h2\u003e\n\u003ch4\u003eAdded\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eexclude_content_types\u003c/code\u003e parameter to \u003ccode\u003eGZipMiddleware\u003c/code\u003e \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3418\"\u003e#3418\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanged\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eExpand default excluded content types in \u003ccode\u003eGZipMiddleware\u003c/code\u003e \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3421\"\u003e#3421\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eFixed\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFlush GZip output for each streamed chunk \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3419\"\u003e#3419\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eSkip compression of partial responses in \u003ccode\u003eGZipMiddleware\u003c/code\u003e \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3420\"\u003e#3420\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.4.1 (August 5, 2026)\u003c/h2\u003e\n\u003ch4\u003eFixed\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eDefault \u003ccode\u003ethread_minimum_size\u003c/code\u003e to 128 KiB in \u003ccode\u003eGZipResponder\u003c/code\u003e, keeping it usable without the new keyword argument \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3415\"\u003e#3415\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.4.0 (August 5, 2026)\u003c/h2\u003e\n\u003ch4\u003eAdded\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eOffload large GZip compression to a worker thread, keeping the event loop responsive. \u003ccode\u003eGZipMiddleware\u003c/code\u003e accepts a new \u003ccode\u003ethread_minimum_size\u003c/code\u003e parameter (default 128 KiB) controlling the minimum body chunk size compressed in a thread \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3410\"\u003e#3410\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanged\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eUse \u003ccode\u003ezlib.compressobj\u003c/code\u003e instead of \u003ccode\u003eGzipFile\u003c/code\u003e in \u003ccode\u003eGZipMiddleware\u003c/code\u003e, reducing memory usage during compression \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3411\"\u003e#3411\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLazily allocate \u003ccode\u003eGZipMiddleware\u003c/code\u003e compression resources, avoiding compressor allocation for responses that are never compressed \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3407\"\u003e#3407\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/Kludex/starlette/commit/4f250d6b814587e20c5365f0a5f0c4d42bcb929f\"\u003e\u003ccode\u003e4f250d6\u003c/code\u003e\u003c/a\u003e Version 1.6.0 (\u003ca href=\"https://redirect.github.com/Kludex/starlette/issues/3434\"\u003e#3434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/9eea41ad3c26ad21b9bdfe4578c1cdad6c9b9ac2\"\u003e\u003ccode\u003e9eea41a\u003c/code\u003e\u003c/a\u003e Expose \u003ccode\u003ehttp.response.debug\u003c/code\u003e info via response extensions (\u003ca href=\"https://redirect.github.com/Kludex/starlette/issues/3130\"\u003e#3130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/38f8999a229610b36f39d11f67d80515a15c6330\"\u003e\u003ccode\u003e38f8999\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003emax_body_size\u003c/code\u003e to \u003ccode\u003eStarlette\u003c/code\u003e and route classes (\u003ca href=\"https://redirect.github.com/Kludex/starlette/issues/3431\"\u003e#3431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/c41236c03868fb3779a64101f4ea88cd47877e23\"\u003e\u003ccode\u003ec41236c\u003c/code\u003e\u003c/a\u003e Version 1.5.1 (\u003ca href=\"https://redirect.github.com/Kludex/starlette/issues/3432\"\u003e#3432\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/9c500db197859dba4a8db13fa8e7d2c55de8152c\"\u003e\u003ccode\u003e9c500db\u003c/code\u003e\u003c/a\u003e Limit \u003ccode\u003eFileResponse\u003c/code\u003e to 100 ranges (\u003ca href=\"https://redirect.github.com/Kludex/starlette/issues/3430\"\u003e#3430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/78ae82cad482fe66a73fb1217f0a6609b3f998f6\"\u003e\u003ccode\u003e78ae82c\u003c/code\u003e\u003c/a\u003e Reject inverted single-byte Range like bytes=5-4 (\u003ca href=\"https://redirect.github.com/Kludex/starlette/issues/3389\"\u003e#3389\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/c1d6edaf43920104d4389e983c3e0314f6af14cf\"\u003e\u003ccode\u003ec1d6eda\u003c/code\u003e\u003c/a\u003e chore(deps): bump pymdown-extensions from 11.0 to 11.0.1 (\u003ca href=\"https://redirect.github.com/Kludex/starlette/issues/3429\"\u003e#3429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/ee66ca48418780d6415d231851b31464febc32de\"\u003e\u003ccode\u003eee66ca4\u003c/code\u003e\u003c/a\u003e chore(deps): bump the python-packages group across 1 directory with 8 updates...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/00d10167523f819d39d5ca36732348d58645a447\"\u003e\u003ccode\u003e00d1016\u003c/code\u003e\u003c/a\u003e fix(tests): skip test_staticfiles_filename_too_long on Windows where os.pathc...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/starlette/commit/d96887ea7b49db3d1d15994be6438c7fe99936f4\"\u003e\u003ccode\u003ed96887e\u003c/code\u003e\u003c/a\u003e Add Pydantic Logfire banner to the docs (\u003ca href=\"https://redirect.github.com/Kludex/starlette/issues/3428\"\u003e#3428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kludex/starlette/compare/1.3.1...1.6.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `aiohttp` from 3.13.3 to 3.14.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aio-libs/aiohttp/blob/master/CHANGES.rst\"\u003eaiohttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.14.3 (2026-07-22)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed the client dropping only the first \u003ccode\u003eAuthorization\u003c/code\u003e, \u003ccode\u003eCookie\u003c/code\u003e and\n\u003ccode\u003eProxy-Authorization\u003c/code\u003e header when a redirect crossed an origin -- by :user:\u003ccode\u003earshsmith1\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n:issue:\u003ccode\u003e13180\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed error message construction in the C HTTP parser -- by :user:\u003ccode\u003ebdraco\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n:issue:\u003ccode\u003e13222\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch1\u003e3.14.2 (2026-07-20)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed :py:attr:\u003ccode\u003e~aiohttp.web.StreamResponse.last_modified\u003c/code\u003e rounding a\n:class:\u003ccode\u003edatetime.datetime\u003c/code\u003e with a fractional second down.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n:issue:\u003ccode\u003e5303\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed resolving \u003ccode\u003elocalhost\u003c/code\u003e on Windows to fall back without \u003ccode\u003eAI_ADDRCONFIG\u003c/code\u003e\nwhen the first lookup fails, so \u003ccode\u003elocalhost\u003c/code\u003e still works without an active\nnetwork.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n:issue:\u003ccode\u003e5357\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/5e392ce0456f5235a4ee6ad46f0e806df2f15873\"\u003e\u003ccode\u003e5e392ce\u003c/code\u003e\u003c/a\u003e Release v3.14.3 (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/49f65d54150397892f7bcc4aae887767d51c322d\"\u003e\u003ccode\u003e49f65d5\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13222\"\u003e#13222\u003c/a\u003e/f4866933 backport][3.14] Build C parser error message from bounded...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/240099e5216a01b32919dcd8dd5c6c0b1bf83671\"\u003e\u003ccode\u003e240099e\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13180\"\u003e#13180\u003c/a\u003e/ee53d655 backport][3.14] drop every copy of credential headers on ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/d93f30a302f8b930074fe14a2be7b2088ba28111\"\u003e\u003ccode\u003ed93f30a\u003c/code\u003e\u003c/a\u003e Bump version (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13202\"\u003e#13202\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/c1b9212ad3d93c24b5fc66ad0849597166bc816e\"\u003e\u003ccode\u003ec1b9212\u003c/code\u003e\u003c/a\u003e Release v3.14.2 (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13201\"\u003e#13201\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/380d4b55e8df48dfd62f1addfb530426f6bc4106\"\u003e\u003ccode\u003e380d4b5\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13054\"\u003e#13054\u003c/a\u003e/ed8b040c backport][3.14] escape backslashes in digest auth quoted-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/e1e1bee363dfba04a9a75c8801717da2ed5bdcb9\"\u003e\u003ccode\u003ee1e1bee\u003c/code\u003e\u003c/a\u003e Make llhttp method array size dynamic (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13174\"\u003e#13174\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13196\"\u003e#13196\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/aa4cf29b6a5ad6f4d21fa1dd3f69193dc2f5d505\"\u003e\u003ccode\u003eaa4cf29\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13170\"\u003e#13170\u003c/a\u003e/2b906869 backport][3.14] Fix StreamResponse.last_modified rounding...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/71b57b40d85a0723c92b0a5a37ebdf518210d2ea\"\u003e\u003ccode\u003e71b57b4\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13172\"\u003e#13172\u003c/a\u003e/a57747ed backport][3.14] Fix C parser folding fragment into query_...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/64a03fb620b623e5a5a1b7103c07ae3e536a0d40\"\u003e\u003ccode\u003e64a03fb\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/13169\"\u003e#13169\u003c/a\u003e/1adc0cd7 backport][3.14] ...\n\n_Description has been truncated_","html_url":"https://github.com/zhao6300/vllm-opt/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/zhao6300%2Fvllm-opt/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"}},{"old_version":"1.25.1","new_version":"1.29.0","update_type":"minor","path":"/data-management/viewer","pr_created_at":"2026-09-05T09:25:14.000Z","version_change":"1.25.1 → 1.29.0","issue":{"uuid":"5357000050","node_id":"PR_kwDORckIoM8AAAABCTteuQ","number":1465,"state":"open","title":"security(deps): Bump the dataviewer-dependencies group in /data-management/viewer with 11 updates","user":"dependabot[bot]","labels":["dataviewer","dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-05T09:25:14.000Z","updated_at":"2026-09-05T09:27:14.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"security(deps): Bump","group_name":"dataviewer-dependencies","update_count":11,"packages":[{"name":"fastapi","old_version":"0.140.7","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"uvicorn","old_version":"0.51.0","new_version":"0.52.4"},{"name":"pydantic","old_version":"2.13.4","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"python-dotenv","old_version":"1.2.2","new_version":"1.2.3","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"numpy","old_version":"2.5.1","new_version":"2.5.2","repository_url":"https://github.com/numpy/numpy"},{"name":"scipy","old_version":"1.18.0","new_version":"1.18.1","repository_url":"https://github.com/scipy/scipy"},{"name":"pyarrow","old_version":"25.0.0","new_version":"25.0.1","repository_url":"https://github.com/apache/arrow"},{"name":"ruff","old_version":"0.16.0","new_version":"0.16.5","repository_url":"https://github.com/astral-sh/ruff"},{"name":"azure-storage-blob","old_version":"12.30.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"huggingface-hub","old_version":"1.25.1","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"ultralytics","old_version":"8.4.108","new_version":"8.4.132","repository_url":"https://github.com/ultralytics/ultralytics"}],"path":"/data-management/viewer","ecosystem":"pip"},"body":"Bumps the dataviewer-dependencies group in /data-management/viewer with 11 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.140.7` | `0.141.1` |\n| [uvicorn[standard]](https://github.com/Kludex/uvicorn) | `0.51.0` | `0.52.4` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.13.4` | `2.13.5` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.2.2` | `1.2.3` |\n| [numpy](https://github.com/numpy/numpy) | `2.5.1` | `2.5.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.18.0` | `1.18.1` |\n| [pyarrow](https://github.com/apache/arrow) | `25.0.0` | `25.0.1` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.16.0` | `0.16.5` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.30.0` | `12.30.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.25.1` | `1.29.0` |\n| [ultralytics](https://github.com/ultralytics/ultralytics) | `8.4.108` | `8.4.132` |\n\nUpdates `fastapi` from 0.140.7 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15093\"\u003e#15093\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.10\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling sequences with nested Annotated types. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14874\"\u003e#14874\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Accept any base test failure as regression. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16092\"\u003e#16092\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Preserve pytest exit code in regression check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16091\"\u003e#16091\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Test PR regressions against base code. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16090\"\u003e#16090\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.9\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eexclude_defaults\u003c/code\u003e not propagated to dict keys and values in \u003ccode\u003ejsonable_encoder\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16043\"\u003e#16043\u003c/a\u003e by \u003ca href=\"https://github.com/MBGrao\"\u003e\u003ccode\u003e@​MBGrao\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/95f8322ee1dcda7ceace7b1c4f6c9915b36d748f\"\u003e\u003ccode\u003e95f8322\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16106\"\u003e#16106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f137944c435cff4e4b30ea7d12855ea88ddb868c\"\u003e\u003ccode\u003ef137944\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d62354434b2e508fe89024213b220ca8e67dea5e\"\u003e\u003ccode\u003ed623544\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for background tasks and headers from dependencies in `app.fron...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1d211b9c1009d577f39fa2b19b10d9a93a72a0ed\"\u003e\u003ccode\u003e1d211b9\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8a1f8768411e62093e70ce142ea10863a485643c\"\u003e\u003ccode\u003e8a1f876\u003c/code\u003e\u003c/a\u003e 📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16104\"\u003e#16104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c7e7b651d6946c07cc9f675f39c9501d08319e57\"\u003e\u003ccode\u003ec7e7b65\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.0 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16103\"\u003e#16103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/6bceb84053eb2405e9c000aad30ea13367b5ee32\"\u003e\u003ccode\u003e6bceb84\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/5429fed84e84e32672c25a953eca3429b841ce90\"\u003e\u003ccode\u003e5429fed\u003c/code\u003e\u003c/a\u003e ✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more conven...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/628663f4f899c465da423bce681c7adf9a218948\"\u003e\u003ccode\u003e628663f\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.140.13 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16096\"\u003e#16096\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/0b54fd00273019034dd30b120ac842e65d80690e\"\u003e\u003ccode\u003e0b54fd0\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.140.7...0.141.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `uvicorn[standard]` from 0.51.0 to 0.52.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kludex/uvicorn/releases\"\u003euvicorn[standard]'s releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.52.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove duplicate \u003ccode\u003eDate\u003c/code\u003e headers from accepted WebSocket handshakes with \u003ccode\u003ewebsockets-sansio\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/pull/3078\"\u003e#3078\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/uvicorn/compare/0.52.3...0.52.4\"\u003ehttps://github.com/Kludex/uvicorn/compare/0.52.3...0.52.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 0.52.3\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate \u003ccode\u003ezttp\u003c/code\u003e to 0.0.24 and use its combined receive path, improving HTTP/1.1 request parsing performance (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3067\"\u003e#3067\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/uvicorn/compare/0.52.2...0.52.3\"\u003ehttps://github.com/Kludex/uvicorn/compare/0.52.2...0.52.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 0.52.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate \u003ccode\u003ezttp\u003c/code\u003e to 0.0.22, fixing bodyless request receives and improving HTTP/1 request parsing performance (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3063\"\u003e#3063\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/uvicorn/compare/0.52.1...0.52.2\"\u003ehttps://github.com/Kludex/uvicorn/compare/0.52.1...0.52.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 0.52.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eComplete the closing handshake on server-initiated WebSocket closes in the \u003ccode\u003ewebsockets-sansio\u003c/code\u003e and \u003ccode\u003ewsproto\u003c/code\u003e implementations, waiting for the client's close reply with a 10 second timeout instead of resetting the connection (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3053\"\u003e#3053\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing write flow control to the \u003ccode\u003ewebsockets-sansio\u003c/code\u003e implementation, preventing data truncation on server-initiated closes with large in-flight payloads (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3048\"\u003e#3048\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle connection loss while a WebSocket write is waiting on backpressure (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3050\"\u003e#3050\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove duplicate \u003ccode\u003eContent-Type\u003c/code\u003e and \u003ccode\u003eContent-Length\u003c/code\u003e headers from WebSocket denial responses on the \u003ccode\u003ewebsockets-sansio\u003c/code\u003e implementation, and deliver non-UTF-8 denial bodies intact (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3041\"\u003e#3041\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/uvicorn/compare/0.52.0...0.52.1\"\u003ehttps://github.com/Kludex/uvicorn/compare/0.52.0...0.52.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 0.52.0\u003c/h2\u003e\n\u003cp\u003eThis release adds an experimental HTTP/1.1 implementation backed by \u003ca href=\"https://zttp.marcelotryle.com/\"\u003ezttp\u003c/a\u003e, a sans-IO HTTP parser I've been developing on the side: a core written in Zig, with bindings to Python. It has been running under a fuzzer for some weeks now, and has been through multiple rounds of security auditing.\u003c/p\u003e\n\u003cp\u003eIt is still \u003cstrong\u003eexperimental\u003c/strong\u003e, so don't put it in front of production traffic yet. Try it with \u003ccode\u003e--http zttp\u003c/code\u003e, and please send any feedback to the \u003ca href=\"https://github.com/Kludex/uvicorn/issues\"\u003eissue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd an experimental \u003ccode\u003ezttp\u003c/code\u003e HTTP/1.1 implementation, selectable with \u003ccode\u003e--http zttp\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/2979\"\u003e#2979\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKeep non-ASCII WebSocket request headers intact with websockets 17.0, which encodes them with ISO-8859-1 (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3036\"\u003e#3036\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/uvicorn/compare/0.51.0...0.52.0\"\u003ehttps://github.com/Kludex/uvicorn/compare/0.51.0...0.52.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kludex/uvicorn/blob/main/docs/release-notes.md\"\u003euvicorn[standard]'s changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.52.4 (August 18, 2026)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove duplicate \u003ccode\u003eDate\u003c/code\u003e headers from accepted WebSocket handshakes with \u003ccode\u003ewebsockets-sansio\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/pull/3078\"\u003e#3078\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.52.3 (August 13, 2026)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate \u003ccode\u003ezttp\u003c/code\u003e to 0.0.24 and use its combined receive path, improving HTTP/1.1 request parsing performance (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3067\"\u003e#3067\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.52.2 (August 13, 2026)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate \u003ccode\u003ezttp\u003c/code\u003e to 0.0.22, fixing bodyless request receives and improving HTTP/1 request parsing performance (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3063\"\u003e#3063\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.52.1 (August 1, 2026)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eComplete the closing handshake on server-initiated WebSocket closes in the \u003ccode\u003ewebsockets-sansio\u003c/code\u003e and \u003ccode\u003ewsproto\u003c/code\u003e implementations, waiting for the client's close reply with a 10 second timeout instead of resetting the connection (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3053\"\u003e#3053\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing write flow control to the \u003ccode\u003ewebsockets-sansio\u003c/code\u003e implementation, preventing data truncation on server-initiated closes with large in-flight payloads (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3048\"\u003e#3048\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHandle connection loss while a WebSocket write is waiting on backpressure (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3050\"\u003e#3050\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove duplicate \u003ccode\u003eContent-Type\u003c/code\u003e and \u003ccode\u003eContent-Length\u003c/code\u003e headers from WebSocket denial responses on the \u003ccode\u003ewebsockets-sansio\u003c/code\u003e implementation, and deliver non-UTF-8 denial bodies intact (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3041\"\u003e#3041\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.52.0 (July 29, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release adds an experimental HTTP/1.1 implementation backed by \u003ca href=\"https://zttp.marcelotryle.com/\"\u003ezttp\u003c/a\u003e, a sans-IO HTTP parser I've been developing on the side: a core written in Zig, with bindings to Python. It has been running under a fuzzer for some weeks now, and has been through multiple rounds of security auditing.\u003c/p\u003e\n\u003cp\u003eIt is still \u003cstrong\u003eexperimental\u003c/strong\u003e, so don't put it in front of production traffic yet. Try it with \u003ccode\u003e--http zttp\u003c/code\u003e, and please send any feedback to the \u003ca href=\"https://github.com/Kludex/uvicorn/issues\"\u003eissue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd an experimental \u003ccode\u003ezttp\u003c/code\u003e HTTP/1.1 implementation, selectable with \u003ccode\u003e--http zttp\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/2979\"\u003e#2979\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eKeep non-ASCII WebSocket request headers intact with websockets 17.0, which encodes them with ISO-8859-1 (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3036\"\u003e#3036\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/Kludex/uvicorn/commit/8988c23704fc373c9206cca53ec57dd8ad7f44a5\"\u003e\u003ccode\u003e8988c23\u003c/code\u003e\u003c/a\u003e Stabilize macOS Python 3.13 signal shutdown tests (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3084\"\u003e#3084\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/898ddca9254b53c5bf7a6ee509756704caaa949f\"\u003e\u003ccode\u003e898ddca\u003c/code\u003e\u003c/a\u003e Update PyPI publish action to version 1.14.2 (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3083\"\u003e#3083\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/3869f8aac2bdd040fa3fbe564e1dad67e2637641\"\u003e\u003ccode\u003e3869f8a\u003c/code\u003e\u003c/a\u003e Restore Mermaid diagram rendering (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3080\"\u003e#3080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/64148a9c574e1eb87d3d09b3ce4c256606f8d973\"\u003e\u003ccode\u003e64148a9\u003c/code\u003e\u003c/a\u003e Version 0.52.4 (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3079\"\u003e#3079\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/9e9e5691bd14d5c4cd66d9bd76c7730bc48461a2\"\u003e\u003ccode\u003e9e9e569\u003c/code\u003e\u003c/a\u003e docs: correct release example PR number (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3072\"\u003e#3072\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/b783dacab50b9d6767b0cf65826b2dc3aae21909\"\u003e\u003ccode\u003eb783dac\u003c/code\u003e\u003c/a\u003e Remove duplicate Date header from SansIO WebSocket handshakes (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3078\"\u003e#3078\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/27019b2a4b1fa6d68a289fcf7d738fbdc6ee4e5d\"\u003e\u003ccode\u003e27019b2\u003c/code\u003e\u003c/a\u003e chore(deps): bump the python-packages group across 1 directory with 11 update...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/1b6427311bb84a15addee688f6d41d96e33f8b0a\"\u003e\u003ccode\u003e1b64273\u003c/code\u003e\u003c/a\u003e Fix a typo in index.md (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3006\"\u003e#3006\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/a68da608147c5f79d962352dce11de8f6e32d972\"\u003e\u003ccode\u003ea68da60\u003c/code\u003e\u003c/a\u003e Version 0.52.3 (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3068\"\u003e#3068\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Kludex/uvicorn/commit/6e3bb4c5c22531c16d341f2da49f2653307f412f\"\u003e\u003ccode\u003e6e3bb4c\u003c/code\u003e\u003c/a\u003e Use zttp 0.0.24 fast receive path (\u003ca href=\"https://redirect.github.com/Kludex/uvicorn/issues/3067\"\u003e#3067\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Kludex/uvicorn/compare/0.51.0...0.52.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.13.4 to 2.13.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pydantic/pydantic/releases\"\u003epydantic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.5 (2026-08-28)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow reuse of validators when plugins are set by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13535\"\u003e#13535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal on some \u003ccode\u003epydantic-core\u003c/code\u003e struct fields by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13624\"\u003e#13624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13629\"\u003e#13629\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCount validated model fields once in smart unions by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13731\"\u003e#13731\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/pydantic/pydantic/blob/v2.13.5/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.5 (2026-08-28)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.13.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow reuse of validators when plugins are set by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13535\"\u003e#13535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal on some \u003ccode\u003epydantic-core\u003c/code\u003e struct fields by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13624\"\u003e#13624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13629\"\u003e#13629\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCount validated model fields once in smart unions by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13731\"\u003e#13731\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/001dea020e0809844e5b17666432c9135a976f46\"\u003e\u003ccode\u003e001dea0\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003epypa/gh-action-pypi-publish\u003c/code\u003e action to v1.14.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/558379fee957fad25858e33596146c72d5674843\"\u003e\u003ccode\u003e558379f\u003c/code\u003e\u003c/a\u003e Bump twine to v7.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/2cfd5d3d2ae721ea882c045f83b7f7a4003aab01\"\u003e\u003ccode\u003e2cfd5d3\u003c/code\u003e\u003c/a\u003e Do not check for docs build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a735bee5c64e1fe50785c376adaf1275e752b8ac\"\u003e\u003ccode\u003ea735bee\u003c/code\u003e\u003c/a\u003e Fix more Clippy lints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7eed4a16b87afaced4d0eafae230453de3410d64\"\u003e\u003ccode\u003e7eed4a1\u003c/code\u003e\u003c/a\u003e Fix Clippy 0.1.95 warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/b353bbb20a4989b4c033e2be2b4a40d36178b16a\"\u003e\u003ccode\u003eb353bbb\u003c/code\u003e\u003c/a\u003e Prepare release v2.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/63d2cccd6e760da6bbc7fe81a53cb2bde3768f5e\"\u003e\u003ccode\u003e63d2ccc\u003c/code\u003e\u003c/a\u003e Count validated model fields once in smart unions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a53ec2ed342fda4e6aa3684399d04ea57be9a6e4\"\u003e\u003ccode\u003ea53ec2e\u003c/code\u003e\u003c/a\u003e Speed up PyPy CI tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/d65e0f96e890ca82f4b66a15d5b3bd65af2c661c\"\u003e\u003ccode\u003ed65e0f9\u003c/code\u003e\u003c/a\u003e Workaround circular import error in Mypy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/47a6dbf8ad6216211bd0df6ec5c2c6c6ed905b72\"\u003e\u003ccode\u003e47a6dbf\u003c/code\u003e\u003c/a\u003e Fix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.13.4...v2.13.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `python-dotenv` from 1.2.2 to 1.2.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/theskumar/python-dotenv/releases\"\u003epython-dotenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.2.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eStrip a leading UTF-8 BOM from \u003ccode\u003e.env\u003c/code\u003e file contents so the first variable is no longer silently lost when the file is saved with BOM (e.g. by some JetBrains IDEs on Windows) by [\u003ca href=\"https://github.com/h1whelan\"\u003e\u003ccode\u003e@​h1whelan\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/640\"\u003e#640\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eset_key\u003c/code\u003e now escapes backslashes, so values containing them (Windows paths, regular expressions) survive a write/read round-trip. Quoted values ending in an escaped backslash are no longer mis-parsed as an escaped quote, which used to swallow the following lines by [\u003ca href=\"https://github.com/dchaudhari7177\"\u003e\u003ccode\u003e@​dchaudhari7177\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/680\"\u003e#680\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003edotenv run\u003c/code\u003e now prints a friendly error instead of a traceback when no command is given by [\u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/606\"\u003e#606\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCache the parsed result for empty \u003ccode\u003e.env\u003c/code\u003e files so repeated \u003ccode\u003edotenv_values\u003c/code\u003e/\u003ccode\u003eload_dotenv\u003c/code\u003e calls no longer re-read the file by [\u003ca href=\"https://github.com/ReinerBRO\"\u003e\u003ccode\u003e@​ReinerBRO\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/638\"\u003e#638\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/theskumar/python-dotenv/blob/main/CHANGELOG.md\"\u003epython-dotenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[1.2.3] - 2026-08-16\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eStrip a leading UTF-8 BOM from \u003ccode\u003e.env\u003c/code\u003e file contents so the first variable is no longer silently lost when the file is saved with BOM (e.g. by some JetBrains IDEs on Windows) by [\u003ca href=\"https://github.com/h1whelan\"\u003e\u003ccode\u003e@​h1whelan\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/640\"\u003e#640\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eset_key\u003c/code\u003e now escapes backslashes, so values containing them (Windows paths, regular expressions) survive a write/read round-trip. Quoted values ending in an escaped backslash are no longer mis-parsed as an escaped quote, which used to swallow the following lines by [\u003ca href=\"https://github.com/dchaudhari7177\"\u003e\u003ccode\u003e@​dchaudhari7177\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/680\"\u003e#680\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003edotenv run\u003c/code\u003e now prints a friendly error instead of a traceback when no command is given by [\u003ca href=\"https://github.com/bbc2\"\u003e\u003ccode\u003e@​bbc2\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/606\"\u003e#606\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCache the parsed result for empty \u003ccode\u003e.env\u003c/code\u003e files so repeated \u003ccode\u003edotenv_values\u003c/code\u003e/\u003ccode\u003eload_dotenv\u003c/code\u003e calls no longer re-read the file by [\u003ca href=\"https://github.com/ReinerBRO\"\u003e\u003ccode\u003e@​ReinerBRO\u003c/code\u003e\u003c/a\u003e] in \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/638\"\u003e#638\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/theskumar/python-dotenv/commit/49515afee2d50c33cad9419b3800b3a0dc93fc59\"\u003e\u003ccode\u003e49515af\u003c/code\u003e\u003c/a\u003e Bump version: 1.2.2 → 1.2.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/8ac846ff2760b65470e769d7eed33e540f0934e1\"\u003e\u003ccode\u003e8ac846f\u003c/code\u003e\u003c/a\u003e chore: add release runbook (RELEASING.md) and make release target\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/bb31c944fb4b40e8dea59587f525840c38326166\"\u003e\u003ccode\u003ebb31c94\u003c/code\u003e\u003c/a\u003e docs: add 1.2.3 release notes (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/606\"\u003e#606\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/638\"\u003e#638\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/680\"\u003e#680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/f7b18d9c72d1abcc2ad4023424b84f5bee30d266\"\u003e\u003ccode\u003ef7b18d9\u003c/code\u003e\u003c/a\u003e fix: round-trip backslashes through set_key (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/680\"\u003e#680\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/751f8c148222e58aa173c83c4e5e6cfccb2cc124\"\u003e\u003ccode\u003e751f8c1\u003c/code\u003e\u003c/a\u003e ci(deps): bump actions/checkout from 6.0.2 to 6.0.3 in the github-actions gro...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/f1937b68f338d7ebd7754da377ca08b2f0df8dbb\"\u003e\u003ccode\u003ef1937b6\u003c/code\u003e\u003c/a\u003e chore(deps): update mkdocs-include-markdown-plugin requirement from \u0026gt;=6.0.0 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/45b93720dd5e9e127d0be3971a04855d34e464d8\"\u003e\u003ccode\u003e45b9372\u003c/code\u003e\u003c/a\u003e chore(deps): update pytest requirement from \u0026gt;=3.9 to \u0026gt;=9.0.3 (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/653\"\u003e#653\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/72896e9244d2a1ff8d5e1934d3df8a35c813799a\"\u003e\u003ccode\u003e72896e9\u003c/code\u003e\u003c/a\u003e docs: fix broken mkdocs link in CONTRIBUTING.md (\u003ca href=\"https://redirect.github.com/theskumar/python-dotenv/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/72754a16a4743e4c92edf87ce59ba0e4ff78758d\"\u003e\u003ccode\u003e72754a1\u003c/code\u003e\u003c/a\u003e ci(deps): bump peaceiris/actions-gh-pages from 4.0.0 to 4.1.0 in the github-a...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/theskumar/python-dotenv/commit/078325e92558330e9addc661b789c7b6123fa73c\"\u003e\u003ccode\u003e078325e\u003c/code\u003e\u003c/a\u003e ci(security): harden CI/CD supply chain with SHA pinning and least-privilege ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/theskumar/python-dotenv/compare/v1.2.2...v1.2.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `numpy` from 2.5.1 to 2.5.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/numpy/numpy/releases\"\u003enumpy's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.5.2 (Aug 9, 2026)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.5.2 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.5.2 is a patch release that fixes bugs discovered after the 2.5.1\nrelease. The big news is that it includes wheels for the newly released\nPython 3.15.0rc1.\u003c/p\u003e\n\u003cp\u003eThis release supports Python versions 3.12-3.15\u003c/p\u003e\n\u003ch2\u003eC API changes\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003ePyArray_StringDTypeObject\u003c/code\u003e is opaque under the abi3t stable ABI\u003c/h3\u003e\n\u003cp\u003eThe \u003ccode\u003ePyArray_StringDTypeObject\u003c/code\u003e was accidentally exposed in NumPy\n2.5 when targeting the free-threading-compatible stable ABI\n(\u003ccode\u003ePy_TARGET_ABI3T\u003c/code\u003e). \u003ccode\u003ePyArray_StringDTypeObject\u003c/code\u003e is now an opaque\nstruct: extensions compiled that way cannot access its fields, since\nthe struct layout depends on the size of the object header. Any code\nthat accessed \u003ccode\u003ePyArray_StringDTypeObject\u003c/code\u003e fields in an abi3t build\nwould have crashed, so we are making this API change in a bugfix\nrelease.\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eNpyString\u003c/code\u003e allocator API remains usable by passing the\ndescriptor object pointer, e.g.\n\u003ccode\u003eNpyString_acquire_allocator((PyArray_StringDTypeObject *)descr)\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e(\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31771\"\u003egh-31771\u003c/a\u003e)\u003c/p\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eA total of 16 people contributed to this release. People with a \u0026quot;+\u0026quot; by their\nnames contributed a patch for the first time.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAbhijeetsingh Meena +\u003c/li\u003e\n\u003cli\u003eCharalampos Stratakis\u003c/li\u003e\n\u003cli\u003eCharles Harris\u003c/li\u003e\n\u003cli\u003eChris Ninham +\u003c/li\u003e\n\u003cli\u003eDavid Woods\u003c/li\u003e\n\u003cli\u003eGeonho +\u003c/li\u003e\n\u003cli\u003eGopu Yeshwanth Reddy +\u003c/li\u003e\n\u003cli\u003eIason Krommydas\u003c/li\u003e\n\u003cli\u003eIjtihed Kilani\u003c/li\u003e\n\u003cli\u003eJelle Zijlstra +\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eKumar Aditya\u003c/li\u003e\n\u003cli\u003eMike Boyle\u003c/li\u003e\n\u003cli\u003eNathan Goldbaum\u003c/li\u003e\n\u003cli\u003eRaghuveer Devulapalli\u003c/li\u003e\n\u003cli\u003eSebastian Berg\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/numpy/numpy/commit/48fecee5453aa1d31e6b79dcb3969dc1a6d1a891\"\u003e\u003ccode\u003e48fecee\u003c/code\u003e\u003c/a\u003e REL: Prepare for the NumPy 2.5.2 release (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32226\"\u003e#32226\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/ecf599ce3995e07be7298d226cbcce34b31a1f0a\"\u003e\u003ccode\u003eecf599c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32221\"\u003e#32221\u003c/a\u003e from charris/backport-32151\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/3c7ac97a576ef0ec22ce5aa1b924724942124d59\"\u003e\u003ccode\u003e3c7ac97\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32220\"\u003e#32220\u003c/a\u003e from charris/backport-32205\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/23b30f49b390ffa504364886717d75cf22789b74\"\u003e\u003ccode\u003e23b30f4\u003c/code\u003e\u003c/a\u003e BUG: avoid segfaults when legacy copyswap slot is not defined (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32151\"\u003e#32151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/4964ca8930f3a2ca8da14399c5ea68a6f3fc088b\"\u003e\u003ccode\u003e4964ca8\u003c/code\u003e\u003c/a\u003e TYP: \u003ccode\u003eisclose\u003c/code\u003e shape-typing fix for 2d array-likes (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32205\"\u003e#32205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/c37ed944dcb27b4e0320972f2b5a5a5a07737c53\"\u003e\u003ccode\u003ec37ed94\u003c/code\u003e\u003c/a\u003e MAINT: Skip limited_api tests on some platforms. (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32214\"\u003e#32214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/5cfd73b6f0114592724aa90ebebbf091ffb775f1\"\u003e\u003ccode\u003e5cfd73b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32206\"\u003e#32206\u003c/a\u003e from charris/update-cibuildwheel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/d8262bcae74ad393a2a65cf50f36eb9f402aeeec\"\u003e\u003ccode\u003ed8262bc\u003c/code\u003e\u003c/a\u003e MAINT: Update cibuildwheel to v4.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/988d94d8cf4e3bfbff59107ee177543eed024be1\"\u003e\u003ccode\u003e988d94d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32158\"\u003e#32158\u003c/a\u003e from charris/backport-32133\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/b2e4f97f15635817791aa12832a90c5a1347b821\"\u003e\u003ccode\u003eb2e4f97\u003c/code\u003e\u003c/a\u003e BUG: avoid possible stack overflow in arraydescr_dealloc (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/32133\"\u003e#32133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/numpy/numpy/compare/v2.5.1...v2.5.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `scipy` from 1.18.0 to 1.18.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/scipy/scipy/releases\"\u003escipy's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eSciPy 1.18.1 Release Notes\u003c/h1\u003e\n\u003cp\u003eSciPy \u003ccode\u003e1.18.1\u003c/code\u003e is a bug-fix release with no new features\ncompared to \u003ccode\u003e1.18.0\u003c/code\u003e. This release includes binaries on\nPyPI for Python \u003ccode\u003e3.15\u003c/code\u003e, and the minimum required version\nof the GCC toolchain has been increased to \u003ccode\u003e10.3.0\u003c/code\u003e.\u003c/p\u003e\n\u003ch1\u003eAuthors\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eName (commits)\u003c/li\u003e\n\u003cli\u003eWasim Akram (2) +\u003c/li\u003e\n\u003cli\u003eJake Bowhay (1)\u003c/li\u003e\n\u003cli\u003eMichael Bratsch (1)\u003c/li\u003e\n\u003cli\u003eDietrich Brunn (1)\u003c/li\u003e\n\u003cli\u003eEvgeni Burovski (1)\u003c/li\u003e\n\u003cli\u003eAadya Chinubhai (1)\u003c/li\u003e\n\u003cli\u003eLucas Colley (3)\u003c/li\u003e\n\u003cli\u003eTekin Ertekin (1) +\u003c/li\u003e\n\u003cli\u003eFuyugithub (2) +\u003c/li\u003e\n\u003cli\u003eRalf Gommers (11)\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu (1)\u003c/li\u003e\n\u003cli\u003eIjtihed Kilani (1) +\u003c/li\u003e\n\u003cli\u003eAndrew Nelson (2)\u003c/li\u003e\n\u003cli\u003eIlhan Polat (1)\u003c/li\u003e\n\u003cli\u003eTyler Reddy (39)\u003c/li\u003e\n\u003cli\u003eromao05 (1) +\u003c/li\u003e\n\u003cli\u003eMichael Simacek (1) +\u003c/li\u003e\n\u003cli\u003eJacob Vanderplas (2)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eA total of 18 people contributed to this release.\nPeople with a \u0026quot;+\u0026quot; by their names contributed a patch for the first time.\nThis list of names is automatically generated, and may not be fully complete.\u003c/p\u003e\n\u003cp\u003eNote that the source and binary assets associated with this release were published to PyPI using \u003ca href=\"https://docs.pypi.org/trusted-publishers/\"\u003etrusted publishing\u003c/a\u003e, and so the trusted assets and their hashes are made available more securely at \u003ca href=\"https://pypi.org/project/scipy/1.18.1/\"\u003ehttps://pypi.org/project/scipy/1.18.1/\u003c/a\u003e rather than providing them here in a less secure manner.\u003c/p\u003e\n\u003cp\u003eA complete list of issues and pull requests associated with this release is available in the associated \u003ca href=\"https://github.com/scipy/scipy/releases/download/v1.18.1/README.txt\"\u003e\u003ccode\u003eREADME.txt\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/e4e854eaa8f18d807cd3496028e257e36caa93cc\"\u003e\u003ccode\u003ee4e854e\u003c/code\u003e\u003c/a\u003e REL: SciPy 1.18.1 rel commit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/3c8e5f83e56996ae853e34ff80d87a1ad0758186\"\u003e\u003ccode\u003e3c8e5f8\u003c/code\u003e\u003c/a\u003e BLD, MAINT: pythran bounds for \u003ccode\u003e1.18.1\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/scipy/scipy/issues/25978\"\u003e#25978\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/54c0f956656ba02daf9b1c48af9b089656c9d4cf\"\u003e\u003ccode\u003e54c0f95\u003c/code\u003e\u003c/a\u003e BLD, MAINT: pythran bounds for \u003ccode\u003e1.18.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/45a355d11e858ef76f5f2975f06f276115beb5ef\"\u003e\u003ccode\u003e45a355d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/scipy/scipy/issues/25884\"\u003e#25884\u003c/a\u003e from tylerjereddy/treddy_backports_1.18.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/a717e28c89e40c22edabcb8d64dd41d537f63683\"\u003e\u003ccode\u003ea717e28\u003c/code\u003e\u003c/a\u003e DOC: PR 25884 revisions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/bb489c02a6b5e094646609051936128265e12692\"\u003e\u003ccode\u003ebb489c0\u003c/code\u003e\u003c/a\u003e DOC: PR 25884 revisions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/09bca241fe2f4f2f23b5a3f43a285a7a2c79fe26\"\u003e\u003ccode\u003e09bca24\u003c/code\u003e\u003c/a\u003e BLD: package: pin meson on win-64 to avoid clang-cl bug (\u003ca href=\"https://redirect.github.com/scipy/scipy/issues/25913\"\u003e#25913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/095fe563cc65e121cea2493c1f1ad22018b5e25e\"\u003e\u003ccode\u003e095fe56\u003c/code\u003e\u003c/a\u003e DOC, BLD: PR 25884 revisions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/e66ea6414cbd718fe86751dcd23533b44f19588a\"\u003e\u003ccode\u003ee66ea64\u003c/code\u003e\u003c/a\u003e DOC: update minimum GCC version in toolchain roadmap\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/c0216532f619338e75842b7802b52c128c40e94f\"\u003e\u003ccode\u003ec021653\u003c/code\u003e\u003c/a\u003e TST: tolerance bumps and skips on 32-bit platforms\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/scipy/scipy/compare/v1.18.0...v1.18.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyarrow` from 25.0.0 to 25.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/apache/arrow/releases\"\u003epyarrow's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eApache Arrow 25.0.1\u003c/h2\u003e\n\u003cp\u003eRelease Notes URL: \u003ca href=\"https://arrow.apache.org/release/25.0.1.html\"\u003ehttps://arrow.apache.org/release/25.0.1.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eApache Arrow 25.0.1 RC1\u003c/h2\u003e\n\u003cp\u003eRelease Notes: Release Candidate: 25.0.1 RC1\u003c/p\u003e\n\u003ch2\u003eApache Arrow 25.0.1 RC0\u003c/h2\u003e\n\u003cp\u003eRelease Notes: Release Candidate: 25.0.1 RC0\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/apache/arrow/commit/beccec0d0c451b7aa3e4530416ac431b3c035c69\"\u003e\u003ccode\u003ebeccec0\u003c/code\u003e\u003c/a\u003e MINOR: [Release] Update versions for 25.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/7bdf01ada82ff9ee76155227bf09f2949187bd2c\"\u003e\u003ccode\u003e7bdf01a\u003c/code\u003e\u003c/a\u003e MINOR: [Release] Update .deb/.rpm changelogs for 25.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/91dbae1f71772dff7f7d07817fcff6f47c2645e0\"\u003e\u003ccode\u003e91dbae1\u003c/code\u003e\u003c/a\u003e MINOR: [Release] Update CHANGELOG.md for 25.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/849d4634e7784d568477f5e159a13b003a7dff4c\"\u003e\u003ccode\u003e849d463\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50808\"\u003eGH-50808\u003c/a\u003e: [Python] Narrow Feather deprecation to V1 format (\u003ca href=\"https://redirect.github.com/apache/arrow/issues/50685\"\u003e#50685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/e70ebf50f0b7a67f3892a307d1dc583e51411bf2\"\u003e\u003ccode\u003ee70ebf5\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50600\"\u003eGH-50600\u003c/a\u003e: [Release] Pin Python version in Conda verification\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/f5037be3f02318738713500f83fc6aef37002f1b\"\u003e\u003ccode\u003ef5037be\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50578\"\u003eGH-50578\u003c/a\u003e: [C++][FlightRPC][ODBC] Always return SQL_NO_DATA from GetMoreResult...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/149158986337257eed43392ee04a2680504de77c\"\u003e\u003ccode\u003e1491589\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50503\"\u003eGH-50503\u003c/a\u003e: [Parquet] Remove SVE128 unpack (\u003ca href=\"https://redirect.github.com/apache/arrow/issues/50611\"\u003e#50611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/d1eaaedef3c7b05668e620fee1478fc884f36296\"\u003e\u003ccode\u003ed1eaaed\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50326\"\u003eGH-50326\u003c/a\u003e: [Python] Convert arrays to Python objects without per-element Scala...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/fe141358b2783f2b85eaa982834aece0cb90c5b1\"\u003e\u003ccode\u003efe14135\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50428\"\u003eGH-50428\u003c/a\u003e: [C++] Better mimalloc configuration on macOS (\u003ca href=\"https://redirect.github.com/apache/arrow/issues/50549\"\u003e#50549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/8fb632a2eebdaf5ff230a797e587a4c3359f9fac\"\u003e\u003ccode\u003e8fb632a\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50383\"\u003eGH-50383\u003c/a\u003e: [Release] Remove deprecated -f flag on conda create environment (\u003ca href=\"https://redirect.github.com/apache/arrow/issues/5\"\u003e#5\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/apache/arrow/compare/apache-arrow-25.0.0...apache-arrow-25.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.16.0 to 0.16.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.16.5\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-08-27.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow rules without codes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28049\"\u003e#28049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eIntroduce category selectors (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27666\"\u003e#27666\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate preview default rules and categories (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27877\"\u003e#27877\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Detect blocking generic HTTP requests (\u003ccode\u003eASYNC210\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28024\"\u003e#28024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-datetimez\u003c/code\u003e] Allow timezone-safe \u003ccode\u003estrptime\u003c/code\u003e chains (\u003ccode\u003eDTZ007\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28023\"\u003e#28023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Respect side effects in \u003ccode\u003elambda\u003c/code\u003e defaults (\u003ccode\u003eSIM401\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28000\"\u003e#28000\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix duplicated \u0026quot;of\u0026quot; in \u003ccode\u003eClientOptions\u003c/code\u003e doc comment (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27978\"\u003e#27978\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument rule acceptance guidelines (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27910\"\u003e#27910\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocument the new category selectors (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27906\"\u003e#27906\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sharkdp\"\u003e\u003ccode\u003e@​sharkdp\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jelle-openai\"\u003e\u003ccode\u003e@​jelle-openai\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ntBre\"\u003e\u003ccode\u003e@​ntBre\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aarushkandukoori\"\u003e\u003ccode\u003e@​aarushkandukoori\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eInstall ruff 0.16.5\u003c/h2\u003e\n\u003ch3\u003eInstall prebuilt binaries via shell script\u003c/h3\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003ecurl --proto '=https' --tlsv1.2 -LsSf https://releases.astral.sh/github/ruff/releases/download/0.16.5/ruff-installer.sh | sh\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch3\u003eInstall prebuilt binaries via powershell script\u003c/h3\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003epowershell -ExecutionPolicy Bypass -c \u0026quot;irm https://releases.astral.sh/github/ruff/releases/download/0.16.5/ruff-installer.ps1 | iex\u0026quot;\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eDownload ruff 0.16.5\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.16.5\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-08-27.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow rules without codes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28049\"\u003e#28049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eIntroduce category selectors (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27666\"\u003e#27666\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate preview default rules and categories (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27877\"\u003e#27877\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Detect blocking generic HTTP requests (\u003ccode\u003eASYNC210\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28024\"\u003e#28024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-datetimez\u003c/code\u003e] Allow timezone-safe \u003ccode\u003estrptime\u003c/code\u003e chains (\u003ccode\u003eDTZ007\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28023\"\u003e#28023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Respect side effects in \u003ccode\u003elambda\u003c/code\u003e defaults (\u003ccode\u003eSIM401\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/28000\"\u003e#28000\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix duplicated \u0026quot;of\u0026quot; in \u003ccode\u003eClientOptions\u003c/code\u003e doc comment (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27978\"\u003e#27978\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument rule acceptance guidelines (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27910\"\u003e#27910\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocument the new category selectors (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27906\"\u003e#27906\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sharkdp\"\u003e\u003ccode\u003e@​sharkdp\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jelle-openai\"\u003e\u003ccode\u003e@​jelle-openai\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ntBre\"\u003e\u003ccode\u003e@​ntBre\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aarushkandukoori\"\u003e\u003ccode\u003e@​aarushkandukoori\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.16.4\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-08-20.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH116\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/26460\"\u003e#26460\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Restrict \u003ccode\u003edelete-full-slice\u003c/code\u003e to lists (\u003ccode\u003eFURB131\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27711\"\u003e#27711\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Skip \u003ccode\u003eFURB101\u003c/code\u003e and \u003ccode\u003eFURB103\u003c/code\u003e when the \u003ccode\u003eopen\u003c/code\u003e argument is a file descriptor (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27643\"\u003e#27643\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003eInvalidInstruction\u003c/code\u003e on Windows CPUs that do not support \u003ccode\u003ePOPCNT\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27803\"\u003e#27803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Emit semantic syntax errors in string type definitions as \u003ccode\u003eF722\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27835\"\u003e#27835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Allow \u003ccode\u003eos._exit\u003c/code\u003e imports in \u003ccode\u003eimport-private-name\u003c/code\u003e (\u003ccode\u003ePLC2701\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/27738\"\u003e#27738\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/9e4938c4a60bed3e87a11ee1e1db1bd23f4d964a\"\u003e\u003ccode\u003e9e4938c\u003c/code\u003e\u003c/a\u003e Bump 0.16.5 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28110\"\u003e#28110\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/aad0e909ef1390f4b2a3ba8aa0a67fb8ea5cbacd\"\u003e\u003ccode\u003eaad0e90\u003c/code\u003e\u003c/a\u003e Allow rules without codes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28049\"\u003e#28049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/5fdab73c5052350400c36b08c5d7710210343bc4\"\u003e\u003ccode\u003e5fdab73\u003c/code\u003e\u003c/a\u003e Update preview default rules and categories (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/27877\"\u003e#27877\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/29c8e5b2d0a46eb7dc4ff11c1b0a0dc5ccea52e4\"\u003e\u003ccode\u003e29c8e5b\u003c/code\u003e\u003c/a\u003e Document rule acceptance guidelines (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/27910\"\u003e#27910\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/50a4d7fd106603a5616b01ac3bef3306252b248f\"\u003e\u003ccode\u003e50a4d7f\u003c/code\u003e\u003c/a\u003e Document the new category selectors (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/27906\"\u003e#27906\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/ada87950ea188f882f69b7bd6e2213a9696e3ee2\"\u003e\u003ccode\u003eada8795\u003c/code\u003e\u003c/a\u003e Introduce category selectors (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/27666\"\u003e#27666\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d8947238863b61922bfc83f07edcc697c1cc07c0\"\u003e\u003ccode\u003ed894723\u003c/code\u003e\u003c/a\u003e [ty] Infer lambda parameters through callable type aliases (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28109\"\u003e#28109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/2685fdebbcf9938736fed8c45886a629f9c99a06\"\u003e\u003ccode\u003e2685fde\u003c/code\u003e\u003c/a\u003e [ty] Narrow functional enum members in \u003ccode\u003e==\u003c/code\u003e and \u003ccode\u003ematch\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28103\"\u003e#28103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/efcffd2178ce62e9951a53d4c50cadc225a0cfec\"\u003e\u003ccode\u003eefcffd2\u003c/code\u003e\u003c/a\u003e [ty] Intersection simplifications with subtype-related generic specialization...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/eb780488037504e11f145ed778654fd8a825028b\"\u003e\u003ccode\u003eeb78048\u003c/code\u003e\u003c/a\u003e [ty] Bump ecosystem-analyzer for HTML escaping (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/28104\"\u003e#28104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.16.0...0.16.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `azure-storage-blob` from 12.30.0 to 12.30.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Azure/azure-sdk-for-python/releases\"\u003eazure-storage-blob's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eazure-storage-blob_12.30.1\u003c/h2\u003e\n\u003ch2\u003e12.30.1 (2026-08-24)\u003c/h2\u003e\n\u003ch3\u003eBugs Fixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug where client-side encryption 2.0 could not detect a rearrangement of otherwise-untampered authenticated regions in blob content. This is now detected and exceptions are thrown. For data recovery purposes, this behavior can be reverted by setting the \u0026quot;AZURE_STORAGE_CSE_V2_ALLOW_MISORDERED_AUTH_REGIONS\u0026quot; environment variable.\u003c/li\u003e\n\u003cli\u003eFixed a bug in client-side encryption where version downgrades, and other metadata tampering, was only detected at the start of a download.\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/Azure/azure-sdk-for-python/commit/c274a90a7614f9ce8717f16580536eececae0dd3\"\u003e\u003ccode\u003ec274a90\u003c/code\u003e\u003c/a\u003e Exclude azure-storage-extensions from storage CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/7edaedd4aa4d72e58f53690e846ab13ece809235\"\u003e\u003ccode\u003e7edaedd\u003c/code\u003e\u003c/a\u003e Sync ci.yml from main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/ca8e6ac281a94f372f0056f7e8f1f3e776b868d1\"\u003e\u003ccode\u003eca8e6ac\u003c/code\u003e\u003c/a\u003e [Storage] Prepare GA patch for CSE fixes (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/48692\"\u003e#48692\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/Azure/azure-sdk-for-python/compare/azure-storage-blob_12.30.0...azure-storage-blob_12.30.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.25.1 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.25.1...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ultralytics` from 8.4.108 to 8.4.132\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ultralytics/ultralytics/releases\"\u003eultralytics's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev8.4.132 - Extend fraction to the test split (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25966\"\u003e#25966\u003c/a\u003e)\u003c/h2\u003e\n\u003ch2\u003e🌟 Summary\u003c/h2\u003e\n\u003cp\u003e🚀 Ultralytics v8.4.132 improves dataset efficiency, hardware compatibility, export workflows, and experiment-tracking documentation, with the headline feature being finer control over test-split downloads.\u003c/p\u003e\n\u003ch2\u003e📊 Key Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e🎯 Test-split control with \u003ccode\u003efraction\u003c/code\u003e\u003c/strong\u003e \u003cem\u003e(PR \u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25966\"\u003e#25966\u003c/a\u003e — \u003ca href=\"https://github.com/fcakyon\"\u003e\u003ccode\u003e@​fcakyon\u003c/code\u003e\u003c/a\u003e)\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eList-based \u003ccode\u003efraction\u003c/code\u003e now supports train, validation, and test splits.\u003c/li\u003e\n\u003cli\u003eUse a third value to limit test data or set it to \u003ccode\u003e0\u003c/code\u003e to skip test-image downloads entirely.\u003c/li\u003e\n\u003cli\u003eExisting two-value lists remain compatible and continue using the full test split.\u003c/li\u003e\n\u003cli\u003eThe same split-selection behavior is shared across training, validation, dataset conversion, and export calibration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e⚡ More efficient NDJSON workflows\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePlatform NDJSON runs no longer need to download unused test images, which can significantly reduce transfer time, storage use, and bandwidth during multi-dataset sweeps.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e🩹 Corrected NMS and validation on Ascend NPU\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNMS now uses the optimized torchvision path on supported Ascend NPU setups while continuing to avoid unsupported XPU behavior.\u003c/li\u003e\n\u003cli\u003eFixes repeated NMS time-limit warnings and prevents incomplete batches from producing incorrect mAP results.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e📚 Improved YOLO26 end-to-end and export guidance\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDocumentation now more accurately describes NMS-free detection, segmentation, pose, and OBB models.\u003c/li\u003e\n\u003cli\u003eClarifies export-format fallbacks, quantization limitations, Hailo behavior, detection limits, and expected accuracy trade-offs.\u003c/li\u003e\n\u003cli\u003eUpdates performance claims and explains when custom post-processing or NMS is still required.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e🔄 Broader support for exported non-YOLO models\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDocuments loading generic exported models through \u003ccode\u003eYOLO()\u003c/code\u003e when \u003ccode\u003etask\u003c/code\u003e and \u003ccode\u003eimgsz\u003c/code\u003e are supplied explicitly.\u003c/li\u003e\n\u003cli\u003eAdds guidance for using format-specific backend classes and explains input-layout, autograd, and post-processing differences.\u003c/li\u003e\n\u003cli\u003eCorrects TensorFlow SavedModel, LiteRT, and numerical-parity documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e🧪 Better classification subset sampling\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFraction-based sampling for local classification datasets now selects images across classes instead of taking a class-ordered prefix.\u003c/li\u003e\n\u003cli\u003eProduces more representative subsets for quick experiments and validation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e📈 Updated experiment-tracking integrations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRay Tune now uses its public context and reporting APIs.\u003c/li\u003e\n\u003cli\u003eClearML, Comet, TensorBoard, MLflow, Ray Tune, and W\u0026amp;B instructions now better match current callback behavior.\u003c/li\u003e\n\u003cli\u003eNeptune integration and settings were retired following the service shutdown.\u003c/li\u003e\n\u003cli\u003eMLflow environment-variable handling is more flexible, and TensorBoard setup is clearly documented as optional.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e🧩 Additional training and export corrections\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRT-DETR documentation recommends disabling deterministic mode on CUDA, since its attention operation cannot provide fully deterministic backward training.\u003c/li\u003e\n\u003cli\u003eCopy-Paste augmentation is correctly documented for both segment and OBB tasks.\u003c/li\u003e\n\u003cli\u003eClassification color-jitter settings are clarified when automatic augmentation is disabled.\u003c/li\u003e\n\u003cli\u003eIMX exports no longer reject end-to-end models at the exporter entry point.\u003c/li\u003e\n\u003cli\u003eCLA workflow matching now accepts signature comments with surrounding whitespace or text.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🎯 Purpose \u0026amp; Impact\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e💾 Lower data-transfer costs:\u003c/strong\u003e Users running Platform or NDJSON workflows can avoid downloading test data they do not need.\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/ultralytics/ultralytics/commit/94aec674e24efcd953c441c976a3b76fb4373865\"\u003e\u003ccode\u003e94aec67\u003c/code\u003e\u003c/a\u003e Extend fraction to the test split (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25966\"\u003e#25966\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/4889c0f3ffab72f4e877f6161b5063a242b8bc39\"\u003e\u003ccode\u003e4889c0f\u003c/code\u003e\u003c/a\u003e Recommend deterministic=False for RT-DETR training (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25965\"\u003e#25965\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/bd5977c3c67bc1c5abe0f5b9ce9ad7cc4e2e2a44\"\u003e\u003ccode\u003ebd5977c\u003c/code\u003e\u003c/a\u003e Fix classification fraction sampling (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25968\"\u003e#25968\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/9d0f2f7d93559d131d168122e9352ddd720b245b\"\u003e\u003ccode\u003e9d0f2f7\u003c/code\u003e\u003c/a\u003e Correct copy-paste task attribution and the export conf default claim (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25969\"\u003e#25969\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/749811baa2b1ab5c9ad796ee69fac380639489c8\"\u003e\u003ccode\u003e749811b\u003c/code\u003e\u003c/a\u003e Correct end-to-end detection guide claims and export fallback coverage (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25971\"\u003e#25971\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/a0289cff9adb8d553b3d900c8ecfefc3f1850851\"\u003e\u003ccode\u003ea0289cf\u003c/code\u003e\u003c/a\u003e Document running non-YOLO exports through Ultralytics and correct parity clai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/0e581acdce68854cae20a7a3cd7e8bd88595a1f6\"\u003e\u003ccode\u003e0e581ac\u003c/code\u003e\u003c/a\u003e Add \u003ca href=\"https://youtu.be/rMllxg8ZLs8\"\u003ehttps://youtu.be/rMllxg8ZLs8\u003c/a\u003e to docs (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25975\"\u003e#25975\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/56d6f980a799220ab84291fbb309c796e7a1d049\"\u003e\u003ccode\u003e56d6f98\u003c/code\u003e\u003c/a\u003e Update experiment tracking callbacks and docs (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25972\"\u003e#25972\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/0a50543f5e05cc2d039ba308af606ebda4fe1ce1\"\u003e\u003ccode\u003e0a50543\u003c/code\u003e\u003c/a\u003e Fix NMS time-limit truncation and wrong mAP on Ascend NPU (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25963\"\u003e#25963\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ultralytics/ultralytics/commit/4eb7a6ebc7e27068f529eb71a85af8fbcf7f269d\"\u003e\u003ccode\u003e4eb7a6e\u003c/code\u003e\u003c/a\u003e Match CLA signature comments by substring in the workflow gate (\u003ca href=\"https://redirect.github.com/ultralytics/ultralytics/issues/25970\"\u003e#25970\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ultralytics/ultralytics/compare/v8.4.108...v8.4.132\"\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- `@depend...\n\n_Description has been truncated_","html_url":"https://github.com/microsoft/physical-ai-toolchain/pull/1465","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fphysical-ai-toolchain/issues/1465","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1465/packages"}},{"old_version":"1.25.1","new_version":"1.29.0","update_type":"minor","path":null,"pr_created_at":"2026-09-05T09:23:51.000Z","version_change":"1.25.1 → 1.29.0","issue":{"uuid":"5356994405","node_id":"PR_kwDORckIoM8AAAABCTtNeg","number":1463,"state":"open","title":"security(deps): Bump the lerobot-dependencies group across 1 directory with 10 updates","user":"dependabot[bot]","labels":["dependencies","python","training"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-05T09:23:51.000Z","updated_at":"2026-09-05T09:24:13.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"security(deps): Bump","group_name":"lerobot-dependencies","update_count":10,"packages":[{"name":"azure-storage-blob","old_version":"12.30.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"mlflow-skinny","old_version":"3.14.0","new_version":"3.15.2","repository_url":"https://github.com/mlflow/mlflow"},{"name":"pydantic","old_version":"2.13.4","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"sentry-sdk","old_version":"2.66.1","new_version":"2.68.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"datasets","old_version":"5.0.0","new_version":"5.0.1","repository_url":"https://github.com/huggingface/datasets"},{"name":"pyarrow","old_version":"25.0.0","new_version":"25.0.1","repository_url":"https://github.com/apache/arrow"},{"name":"huggingface-hub","old_version":"1.25.1","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"gitpython","old_version":"3.1.57","new_version":"3.1.61","repository_url":"https://github.com/gitpython-developers/GitPython"},{"name":"cryptography","old_version":"50.0.0","new_version":"50.0.1","repository_url":"https://github.com/pyca/cryptography"},{"name":"wrapt","old_version":"2.2.2","new_version":"2.3.0","repository_url":"https://github.com/GrahamDumpleton/wrapt"}],"path":null,"ecosystem":"pip"},"body":"Bumps the lerobot-dependencies group with 10 updates in the /training/il/lerobot directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.30.0` | `12.30.1` |\n| [mlflow-skinny](https://github.com/mlflow/mlflow) | `3.14.0` | `3.15.2` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.13.4` | `2.13.5` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.66.1` | `2.68.1` |\n| [datasets](https://github.com/huggingface/datasets) | `5.0.0` | `5.0.1` |\n| [pyarrow](https://github.com/apache/arrow) | `25.0.0` | `25.0.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.25.1` | `1.29.0` |\n| [gitpython](https://github.com/gitpython-developers/GitPython) | `3.1.57` | `3.1.61` |\n| [cryptography](https://github.com/pyca/cryptography) | `50.0.0` | `50.0.1` |\n| [wrapt](https://github.com/GrahamDumpleton/wrapt) | `2.2.2` | `2.3.0` |\n\n\nUpdates `azure-storage-blob` from 12.30.0 to 12.30.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Azure/azure-sdk-for-python/releases\"\u003eazure-storage-blob's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eazure-storage-blob_12.30.1\u003c/h2\u003e\n\u003ch2\u003e12.30.1 (2026-08-24)\u003c/h2\u003e\n\u003ch3\u003eBugs Fixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug where client-side encryption 2.0 could not detect a rearrangement of otherwise-untampered authenticated regions in blob content. This is now detected and exceptions are thrown. For data recovery purposes, this behavior can be reverted by setting the \u0026quot;AZURE_STORAGE_CSE_V2_ALLOW_MISORDERED_AUTH_REGIONS\u0026quot; environment variable.\u003c/li\u003e\n\u003cli\u003eFixed a bug in client-side encryption where version downgrades, and other metadata tampering, was only detected at the start of a download.\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/Azure/azure-sdk-for-python/commit/c274a90a7614f9ce8717f16580536eececae0dd3\"\u003e\u003ccode\u003ec274a90\u003c/code\u003e\u003c/a\u003e Exclude azure-storage-extensions from storage CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/7edaedd4aa4d72e58f53690e846ab13ece809235\"\u003e\u003ccode\u003e7edaedd\u003c/code\u003e\u003c/a\u003e Sync ci.yml from main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/ca8e6ac281a94f372f0056f7e8f1f3e776b868d1\"\u003e\u003ccode\u003eca8e6ac\u003c/code\u003e\u003c/a\u003e [Storage] Prepare GA patch for CSE fixes (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/48692\"\u003e#48692\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/Azure/azure-sdk-for-python/compare/azure-storage-blob_12.30.0...azure-storage-blob_12.30.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mlflow-skinny` from 3.14.0 to 3.15.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mlflow/mlflow/releases\"\u003emlflow-skinny's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.15.2\u003c/h2\u003e\n\u003cp\u003eMLflow 3.15.2 is a patch release that includes several major features and improvements.\u003c/p\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Evaluation] Support immutable evaluation dataset versions (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24845\"\u003e#24845\u003c/a\u003e, \u003ca href=\"https://github.com/danielseong1\"\u003e\u003ccode\u003e@​danielseong1\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Evaluation] Add scorer_ensemble primitive for combining scorer results (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24749\"\u003e#24749\u003c/a\u003e, \u003ca href=\"https://github.com/alkispoly-db\"\u003e\u003ccode\u003e@​alkispoly-db\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Evaluation] Preserve base judge invocation flow in MemAlign aligned judges (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24883\"\u003e#24883\u003c/a\u003e, \u003ca href=\"https://github.com/veronicalyu320\"\u003e\u003ccode\u003e@​veronicalyu320\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracking] Pre-import \u003ccode\u003edatabricks.sdk\u003c/code\u003e in Databricks to avoid telemetry deadlock (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24841\"\u003e#24841\u003c/a\u003e, \u003ca href=\"https://github.com/aaronteo-db\"\u003e\u003ccode\u003e@​aaronteo-db\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Build / Tracking] Align \u003ccode\u003eruns.status\u003c/code\u003e constraint metadata (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24890\"\u003e#24890\u003c/a\u003e, \u003ca href=\"https://github.com/joshuawong-db\"\u003e\u003ccode\u003e@​joshuawong-db\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMLflow 3.15.1 is a patch release that includes bug fixes and documentation updates.\u003c/p\u003e\n\u003ch3\u003eBug fixes:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Model Registry] Skip \u003ccode\u003eenv_pack\u003c/code\u003e on ARM client images (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24762\"\u003e#24762\u003c/a\u003e, \u003ca href=\"https://github.com/qyc\"\u003e\u003ccode\u003e@​qyc\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Scoring / Tracking] Harden version parsing against missing/non-PEP440 versions on Databricks Serverless (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24799\"\u003e#24799\u003c/a\u003e, \u003ca href=\"https://github.com/PattaraS\"\u003e\u003ccode\u003e@​PattaraS\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation updates:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Docs] Clarify scorer versioning documentation (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24769\"\u003e#24769\u003c/a\u003e, \u003ca href=\"https://github.com/nihalmenon\"\u003e\u003ccode\u003e@​nihalmenon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.15.0\u003c/h2\u003e\n\u003cp\u003eMLflow 3.15.0 includes several major features and improvements\u003c/p\u003e\n\u003ch3\u003eMajor New Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e🧩 \u003ca href=\"https://mlflow.org/docs/latest/genai/mcp-registry/\"\u003eMCP Registry\u003c/a\u003e\u003c/strong\u003e: A centralized catalog for registering, versioning, and sharing Model Context Protocol servers — with semantic-versioned configs, promotable aliases, tags, auto-discovered tools, and ready-made connection instructions for Claude Code and \u003ccode\u003e.mcp.json\u003c/code\u003e. Manage it from the UI, REST API, or Python!\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e🤖 MLflow Assistant enhancements\u003c/strong\u003e: The in-app AI assistant now supports multiple LLM providers (Claude Code, Codex, and OpenAI-compatible/Gateway endpoints) chosen from a single settings page, displays live per-session token usage and estimated cost in the composer, and is easier to set up — \u003ccode\u003emlflow agent setup\u003c/code\u003e can enable it in one prompt, with API keys stored securely in the Gateway's LLM Connections.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e🗂️ Sharable table views\u003c/strong\u003e: Save named views of the Runs table — capturing columns, order, widths, filters, and sort — and share them by URL.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚡ Proxy-less artifact upload/download via presigned URLs\u003c/strong\u003e: Large artifact transfers can now bypass the tracking server and talk directly to cloud storage (e.g. S3) through presigned URLs, cutting server load and timeouts on big files. We fall back to proxied transfer automatically for backward compatibility.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e🖼️ Multi-modal attachments in LLM judges\u003c/strong\u003e: \u003ccode\u003e{{ trace }}\u003c/code\u003e judges created with \u003ccode\u003emake_judge()\u003c/code\u003e can now \u003cem\u003esee\u003c/em\u003e images captured in trace spans via a new \u003ccode\u003eget_span_image\u003c/code\u003e tool, which fetches attachments as base64 data URLs and passes them to multimodal models (Anthropic, Gemini, and OpenAI-compatible via litellm) — enabling evaluation of vision tasks, screenshots, and other visual content.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther Assorted Features \u0026amp; Improvements:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Tracing / Tracking] Add Pydantic AI 2.x autologging support (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24721\"\u003e#24721\u003c/a\u003e, \u003ca href=\"https://github.com/B-Step62\"\u003e\u003ccode\u003e@​B-Step62\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracing / UI] [3/3] Add action recommendation for low-value issue detection result (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24580\"\u003e#24580\u003c/a\u003e, \u003ca href=\"https://github.com/B-Step62\"\u003e\u003ccode\u003e@​B-Step62\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Gateway] Support per-endpoint budget policies in the AI Gateway (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24370\"\u003e#24370\u003c/a\u003e, \u003ca href=\"https://github.com/joelrobin18\"\u003e\u003ccode\u003e@​joelrobin18\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Evaluation / Gateway] Add \u003ccode\u003esap-ai-core:/\u003c/code\u003e provider for SAP AI Core Orchestration v2 with \u003ccode\u003eextra_headers\u003c/code\u003e support (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24356\"\u003e#24356\u003c/a\u003e, \u003ca href=\"https://github.com/shivamxtech\"\u003e\u003ccode\u003e@​shivamxtech\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Model Registry] [Model Registry] Migrate UC model artifact download to native temp-creds (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24576\"\u003e#24576\u003c/a\u003e, \u003ca href=\"https://github.com/AknA13\"\u003e\u003ccode\u003e@​AknA13\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Gateway / Tracing / UI] [2/3] Simplify issue detection start modal (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24579\"\u003e#24579\u003c/a\u003e, \u003ca href=\"https://github.com/B-Step62\"\u003e\u003ccode\u003e@​B-Step62\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracing / UI] [1/3] Run issue detection in the background (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24578\"\u003e#24578\u003c/a\u003e, \u003ca href=\"https://github.com/B-Step62\"\u003e\u003ccode\u003e@​B-Step62\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracing] [BUG] Fix otel parent context propagation (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24444\"\u003e#24444\u003c/a\u003e, \u003ca href=\"https://github.com/iyashk\"\u003e\u003ccode\u003e@​iyashk\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Model Registry] [Model Registry] Gate UC model-registry client on native \u003ccode\u003e/api/2.1\u003c/code\u003e endpoints (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24517\"\u003e#24517\u003c/a\u003e, \u003ca href=\"https://github.com/AknA13\"\u003e\u003ccode\u003e@​AknA13\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Docs / Tracking] Enable artifacts-only mode with workspaces (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24452\"\u003e#24452\u003c/a\u003e, \u003ca href=\"https://github.com/kramaranya\"\u003e\u003ccode\u003e@​kramaranya\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracing / UI] Stop eagerly prefetching full neighboring traces in tracing UI (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24411\"\u003e#24411\u003c/a\u003e, \u003ca href=\"https://github.com/DaoDaoNoCode\"\u003e\u003ccode\u003e@​DaoDaoNoCode\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Docs / Gateway] Authenticate OpenAI-protocol coding agents through the RBAC gateway (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24294\"\u003e#24294\u003c/a\u003e, \u003ca href=\"https://github.com/joshuawong-db\"\u003e\u003ccode\u003e@​joshuawong-db\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mlflow/mlflow/blob/master/CHANGELOG.md\"\u003emlflow-skinny's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.15.2 (2026-08-25)\u003c/h2\u003e\n\u003cp\u003eMLflow 3.15.2 is a patch release that includes several major features and improvements.\u003c/p\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Evaluation] Support immutable evaluation dataset versions (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24845\"\u003e#24845\u003c/a\u003e, \u003ca href=\"https://github.com/danielseong1\"\u003e\u003ccode\u003e@​danielseong1\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Evaluation] Add scorer_ensemble primitive for combining scorer results (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24749\"\u003e#24749\u003c/a\u003e, \u003ca href=\"https://github.com/alkispoly-db\"\u003e\u003ccode\u003e@​alkispoly-db\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Evaluation] Preserve base judge invocation flow in MemAlign aligned judges (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24883\"\u003e#24883\u003c/a\u003e, \u003ca href=\"https://github.com/veronicalyu320\"\u003e\u003ccode\u003e@​veronicalyu320\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracking] Pre-import \u003ccode\u003edatabricks.sdk\u003c/code\u003e in Databricks to avoid telemetry deadlock (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24841\"\u003e#24841\u003c/a\u003e, \u003ca href=\"https://github.com/aaronteo-db\"\u003e\u003ccode\u003e@​aaronteo-db\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Build / Tracking] Align \u003ccode\u003eruns.status\u003c/code\u003e constraint metadata (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24890\"\u003e#24890\u003c/a\u003e, \u003ca href=\"https://github.com/joshuawong-db\"\u003e\u003ccode\u003e@​joshuawong-db\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.15.1 (2026-08-03)\u003c/h2\u003e\n\u003cp\u003eMLflow 3.15.1 is a patch release that includes bug fixes and documentation updates.\u003c/p\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Model Registry] Skip \u003ccode\u003eenv_pack\u003c/code\u003e on ARM client images (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24762\"\u003e#24762\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24835\"\u003e#24835\u003c/a\u003e, \u003ca href=\"https://github.com/qyc\"\u003e\u003ccode\u003e@​qyc\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Scoring / Tracking] Harden version parsing against missing/non-PEP440 versions on Databricks Serverless (+ lint rule) (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24799\"\u003e#24799\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24813\"\u003e#24813\u003c/a\u003e, \u003ca href=\"https://github.com/PattaraS\"\u003e\u003ccode\u003e@​PattaraS\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eDocumentation updates:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Docs] Clarify scorer versioning documentation (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24769\"\u003e#24769\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24805\"\u003e#24805\u003c/a\u003e, \u003ca href=\"https://github.com/nihalmenon\"\u003e\u003ccode\u003e@​nihalmenon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.15.0 (2026-07-31)\u003c/h2\u003e\n\u003cp\u003eMLflow 3.15.0 includes several major features and improvements\u003c/p\u003e\n\u003ch3\u003eMajor New Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e🧩 \u003ca href=\"https://mlflow.org/docs/latest/genai/mcp-registry/\"\u003eMCP Registry\u003c/a\u003e\u003c/strong\u003e: A centralized catalog for registering, versioning, and sharing Model Context Protocol servers — with semantic-versioned configs, promotable aliases, tags, auto-discovered tools, and ready-made connection instructions for Claude Code and \u003ccode\u003e.mcp.json\u003c/code\u003e. Manage it from the UI, REST API, or Python!\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e🤖 MLflow Assistant enhancements\u003c/strong\u003e: The in-app AI assistant now supports multiple LLM providers (Claude Code, Codex, and OpenAI-compatible/Gateway endpoints) chosen from a single settings page, displays live per-session token usage and estimated cost in the composer, and is easier to set up — \u003ccode\u003emlflow agent setup\u003c/code\u003e can enable it in one prompt, with API keys stored securely in the Gateway's LLM Connections.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e🗂️ Sharable table views\u003c/strong\u003e: Save named views of the Runs table — capturing columns, order, widths, filters, and sort — and share them by URL.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e⚡ Proxy-less artifact upload/download via presigned URLs\u003c/strong\u003e: Large artifact transfers can now bypass the tracking server and talk directly to cloud storage (e.g. S3) through presigned URLs, cutting server load and timeouts on big files. We fall back to proxied transfer automatically for backward compatibility.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e🖼️ Multi-modal attachments in LLM judges\u003c/strong\u003e: \u003ccode\u003e{{ trace }}\u003c/code\u003e judges created with \u003ccode\u003emake_judge()\u003c/code\u003e can now \u003cem\u003esee\u003c/em\u003e images captured in trace spans via a new \u003ccode\u003eget_span_image\u003c/code\u003e tool, which fetches attachments as base64 data URLs and passes them to multimodal models (Anthropic, Gemini, and OpenAI-compatible via litellm) — enabling evaluation of vision tasks, screenshots, and other visual content.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther Assorted Features \u0026amp; Improvements:\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[Tracing / Tracking] Add Pydantic AI 2.x autologging support (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24721\"\u003e#24721\u003c/a\u003e, \u003ca href=\"https://github.com/B-Step62\"\u003e\u003ccode\u003e@​B-Step62\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracing / UI] [3/3] Add action recommendation for low-value issue detection result (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24580\"\u003e#24580\u003c/a\u003e, \u003ca href=\"https://github.com/B-Step62\"\u003e\u003ccode\u003e@​B-Step62\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Gateway] Support per-endpoint budget policies in the AI Gateway (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24370\"\u003e#24370\u003c/a\u003e, \u003ca href=\"https://github.com/joelrobin18\"\u003e\u003ccode\u003e@​joelrobin18\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Evaluation / Gateway] Add \u003ccode\u003esap-ai-core:/\u003c/code\u003e provider for SAP AI Core Orchestration v2 with \u003ccode\u003eextra_headers\u003c/code\u003e support (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24356\"\u003e#24356\u003c/a\u003e, \u003ca href=\"https://github.com/shivamxtech\"\u003e\u003ccode\u003e@​shivamxtech\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Model Registry] [Model Registry] Migrate UC model artifact download to native temp-creds (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24576\"\u003e#24576\u003c/a\u003e, \u003ca href=\"https://github.com/AknA13\"\u003e\u003ccode\u003e@​AknA13\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Gateway / Tracing / UI] [2/3] Simplify issue detection start modal (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24579\"\u003e#24579\u003c/a\u003e, \u003ca href=\"https://github.com/B-Step62\"\u003e\u003ccode\u003e@​B-Step62\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracing / UI] [1/3] Run issue detection in the background (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24578\"\u003e#24578\u003c/a\u003e, \u003ca href=\"https://github.com/B-Step62\"\u003e\u003ccode\u003e@​B-Step62\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[Tracing] [BUG] Fix otel parent context propagation (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24444\"\u003e#24444\u003c/a\u003e, \u003ca href=\"https://github.com/iyashk\"\u003e\u003ccode\u003e@​iyashk\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/ca15da96555ef1ef80a61393bf8559ffe5c2e8df\"\u003e\u003ccode\u003eca15da9\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003ebuild-docs\u003c/code\u003e workflow for publishing release docs (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24857\"\u003e#24857\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/25331\"\u003e#25331\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/b2af1074494c2e9ca3892324e5b115db9f634186\"\u003e\u003ccode\u003eb2af107\u003c/code\u003e\u003c/a\u003e Bump version to 3.15.2 (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/25327\"\u003e#25327\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/e3efd508b8bacc4f072a5508a0dc3a38901dedbd\"\u003e\u003ccode\u003ee3efd50\u003c/code\u003e\u003c/a\u003e Backport runs.status constraint metadata alignment (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24890\"\u003e#24890\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/878e786d8710a914ee3d36e1fcc7356923560291\"\u003e\u003ccode\u003e878e786\u003c/code\u003e\u003c/a\u003e Backport MLFLOW_TRACE_ARCHIVAL_CONFIG delenv in workspace store tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/c2e884846cf5a713fc2fbca0c92299e17ee83fb5\"\u003e\u003ccode\u003ec2e8848\u003c/code\u003e\u003c/a\u003e Pin litellm\u0026lt;1.97 in test-requirements for genai job\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/dd646e32b042c297f44c9c18dbcb01af04711fc3\"\u003e\u003ccode\u003edd646e3\u003c/code\u003e\u003c/a\u003e Backport httpx2 lock assertion for unpinned openai\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/dde2279d3e06d3de9d9d532cccca6c16266bcfad\"\u003e\u003ccode\u003edde2279\u003c/code\u003e\u003c/a\u003e Pin ag2\u0026lt;1 and litellm\u0026lt;1.97 to fix branch-3.15 CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/d5198d714ed0ef98bcfb90c02fc53f54617b7da4\"\u003e\u003ccode\u003ed5198d7\u003c/code\u003e\u003c/a\u003e Preserve base judge invocation flow in MemAlign aligned judges (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24883\"\u003e#24883\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/fb67e7d0d6041467652f0557ef17161636c0965d\"\u003e\u003ccode\u003efb67e7d\u003c/code\u003e\u003c/a\u003e [GenAI] Support immutable evaluation dataset versions (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24845\"\u003e#24845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mlflow/mlflow/commit/0b363e612f9fc59b8c4ac5f557d2abdedabc32bf\"\u003e\u003ccode\u003e0b363e6\u003c/code\u003e\u003c/a\u003e Pre-import \u003ccode\u003edatabricks.sdk\u003c/code\u003e in Databricks to avoid telemetry deadlock (\u003ca href=\"https://redirect.github.com/mlflow/mlflow/issues/24841\"\u003e#24841\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mlflow/mlflow/compare/v3.14.0...v3.15.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pydantic` from 2.13.4 to 2.13.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pydantic/pydantic/releases\"\u003epydantic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.5 (2026-08-28)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow reuse of validators when plugins are set by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13535\"\u003e#13535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal on some \u003ccode\u003epydantic-core\u003c/code\u003e struct fields by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13624\"\u003e#13624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13629\"\u003e#13629\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCount validated model fields once in smart unions by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13731\"\u003e#13731\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/pydantic/pydantic/blob/v2.13.5/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.13.5 (2026-08-28)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.13.5\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAllow reuse of validators when plugins are set by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13535\"\u003e#13535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal on some \u003ccode\u003epydantic-core\u003c/code\u003e struct fields by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13624\"\u003e#13624\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13629\"\u003e#13629\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCount validated model fields once in smart unions by \u003ca href=\"https://github.com/tamird\"\u003e\u003ccode\u003e@​tamird\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/13731\"\u003e#13731\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/001dea020e0809844e5b17666432c9135a976f46\"\u003e\u003ccode\u003e001dea0\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003epypa/gh-action-pypi-publish\u003c/code\u003e action to v1.14.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/558379fee957fad25858e33596146c72d5674843\"\u003e\u003ccode\u003e558379f\u003c/code\u003e\u003c/a\u003e Bump twine to v7.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/2cfd5d3d2ae721ea882c045f83b7f7a4003aab01\"\u003e\u003ccode\u003e2cfd5d3\u003c/code\u003e\u003c/a\u003e Do not check for docs build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a735bee5c64e1fe50785c376adaf1275e752b8ac\"\u003e\u003ccode\u003ea735bee\u003c/code\u003e\u003c/a\u003e Fix more Clippy lints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/7eed4a16b87afaced4d0eafae230453de3410d64\"\u003e\u003ccode\u003e7eed4a1\u003c/code\u003e\u003c/a\u003e Fix Clippy 0.1.95 warnings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/b353bbb20a4989b4c033e2be2b4a40d36178b16a\"\u003e\u003ccode\u003eb353bbb\u003c/code\u003e\u003c/a\u003e Prepare release v2.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/63d2cccd6e760da6bbc7fe81a53cb2bde3768f5e\"\u003e\u003ccode\u003e63d2ccc\u003c/code\u003e\u003c/a\u003e Count validated model fields once in smart unions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/a53ec2ed342fda4e6aa3684399d04ea57be9a6e4\"\u003e\u003ccode\u003ea53ec2e\u003c/code\u003e\u003c/a\u003e Speed up PyPy CI tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/d65e0f96e890ca82f4b66a15d5b3bd65af2c661c\"\u003e\u003ccode\u003ed65e0f9\u003c/code\u003e\u003c/a\u003e Workaround circular import error in Mypy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/47a6dbf8ad6216211bd0df6ec5c2c6c6ed905b72\"\u003e\u003ccode\u003e47a6dbf\u003c/code\u003e\u003c/a\u003e Fix missing GC traversal in \u003ccode\u003epydantic-core\u003c/code\u003e for \u003ccode\u003eGeneralFieldsSerializer\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.13.4...v2.13.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry-sdk` from 2.66.1 to 2.68.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/releases\"\u003esentry-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.68.1\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003eenable_logs\u003c/code\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e(logs) Don't stop sending auto-collected logs when \u003ccode\u003eenable_logs=True\u003c/code\u003e by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7237\"\u003e#7237\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eIf you have \u003ccode\u003eenable_logs\u003c/code\u003e set to \u003ccode\u003eTrue\u003c/code\u003e, our logging integrations for the standard library logging module as well as Loguru will auto-collect logs and send them to Sentry as Sentry logs by default, preserving old behavior. Turning automatic collection off for a specific integration can still be achieved using the \u003ccode\u003ecapture_sentry_logs\u003c/code\u003e integration option.\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.logging import LoggingIntegration\nfrom sentry_sdk.integrations.loguru import LoguruIntegration\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\nenable_logs=True,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nLoggingIntegration(capture_sentry_logs=True),\u003cbr /\u003e\nLoguruIntegration(capture_sentry_logs=False),\u003cbr /\u003e\n],\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003ePlease note that the \u003ccode\u003eenable_logs\u003c/code\u003e option is deprecated and will be removed in the next major release. The \u003ccode\u003esentry_sdk.logger.X\u003c/code\u003e API now works regardless of it, and auto-collection can be opted into via the \u003ccode\u003ecapture_sentry_logs\u003c/code\u003e integration-level options, which are \u003ccode\u003eFalse\u003c/code\u003e by default, unless you have \u003ccode\u003eenable_logs=True\u003c/code\u003e. We've added this compatibility layer to make the transition to a \u003ccode\u003eenable_logs\u003c/code\u003e-free world easier.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes 🐛\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e(django) Add \u003ccode\u003efailed_request_status_codes\u003c/code\u003e by \u003ca href=\"https://github.com/mgaligniana\"\u003e\u003ccode\u003e@​mgaligniana\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7140\"\u003e#7140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(anthropic) Gate \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7207\"\u003e#7207\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(google_genai) Gate streaming \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7210\"\u003e#7210\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(langchain) Use \u003ccode\u003egen_ai.tool.definitions\u003c/code\u003e attribute when data collection is enabled by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7204\"\u003e#7204\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(langgraph,huggingface_hub) Gate \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7208\"\u003e#7208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(openai) Gate \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7205\"\u003e#7205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(openai_agents) Gate \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7209\"\u003e#7209\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.68.0\u003c/h2\u003e\n\u003ch3\u003eImportant\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eWe're making \u003ccode\u003eenable_logs\u003c/code\u003e and \u003ccode\u003eenable_metrics\u003c/code\u003e no-op with this release (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7177\"\u003e#7177\u003c/a\u003e), and they'll be dropped in the next major.\u003c/p\u003e\n\u003cp\u003ePreviously, \u003ccode\u003eenable_logs\u003c/code\u003e also controlled automatic logs collection from the logging and Loguru integrations. These integrations now get an integration-level \u003ccode\u003ecapture_sentry_logs\u003c/code\u003e boolean option to allow for more control over the auto-collection. These options are \u003ccode\u003eFalse\u003c/code\u003e by default, i.e., \u003cstrong\u003enothing is auto-collected without your explicit opt-in\u003c/strong\u003e.\u003c/p\u003e\n\u003ch4\u003eAction Needed\u003c/h4\u003e\n\u003cp\u003eIf you had \u003ccode\u003eenable_logs\u003c/code\u003e set to \u003ccode\u003eTrue\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eIf you were using the \u003ccode\u003esentry_sdk.logger.X\u003c/code\u003e API, no action necessary, the API will just work.\u003c/li\u003e\n\u003cli\u003eIf you were auto-collecting logs from either \u003ccode\u003eLoggingIntegration\u003c/code\u003e or \u003ccode\u003eLoguruIntegration\u003c/code\u003e, the auto-collection \u003cstrong\u003ewill be turned off in this release\u003c/strong\u003e. You can switch auto-collection on explicitly with:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.logging import LoggingIntegration\nfrom sentry_sdk.integrations.loguru import LoguruIntegration\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md\"\u003esentry-sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.68.1\u003c/h2\u003e\n\u003ch3\u003e\u003ccode\u003eenable_logs\u003c/code\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e(logs) Don't stop sending auto-collected logs when \u003ccode\u003eenable_logs=True\u003c/code\u003e by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7237\"\u003e#7237\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eIf you have \u003ccode\u003eenable_logs\u003c/code\u003e set to \u003ccode\u003eTrue\u003c/code\u003e, our logging integrations for the standard library logging module as well as Loguru will auto-collect logs and send them to Sentry as Sentry logs by default, preserving old behavior. Turning automatic collection off for a specific integration can still be achieved using the \u003ccode\u003ecapture_sentry_logs\u003c/code\u003e integration option.\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.logging import LoggingIntegration\nfrom sentry_sdk.integrations.loguru import LoguruIntegration\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\nenable_logs=True,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nLoggingIntegration(capture_sentry_logs=True),\u003cbr /\u003e\nLoguruIntegration(capture_sentry_logs=False),\u003cbr /\u003e\n],\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003ePlease note that the \u003ccode\u003eenable_logs\u003c/code\u003e option is deprecated and will be removed in the next major release. The \u003ccode\u003esentry_sdk.logger.X\u003c/code\u003e API now works regardless of it, and auto-collection can be opted into via the \u003ccode\u003ecapture_sentry_logs\u003c/code\u003e integration-level options, which are \u003ccode\u003eFalse\u003c/code\u003e by default, unless you have \u003ccode\u003eenable_logs=True\u003c/code\u003e. We've added this compatibility layer to make the transition to a \u003ccode\u003eenable_logs\u003c/code\u003e-free world easier.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes 🐛\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e(django) Add \u003ccode\u003efailed_request_status_codes\u003c/code\u003e by \u003ca href=\"https://github.com/mgaligniana\"\u003e\u003ccode\u003e@​mgaligniana\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7140\"\u003e#7140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(anthropic) Gate \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7207\"\u003e#7207\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(google_genai) Gate streaming \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7210\"\u003e#7210\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(langchain) Use \u003ccode\u003egen_ai.tool.definitions\u003c/code\u003e attribute when data collection is enabled by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7204\"\u003e#7204\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(langgraph,huggingface_hub) Gate \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7208\"\u003e#7208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(openai) Gate \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7205\"\u003e#7205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e(openai_agents) Gate \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, not inputs by \u003ca href=\"https://github.com/ericapisani\"\u003e\u003ccode\u003e@​ericapisani\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7209\"\u003e#7209\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.68.0\u003c/h2\u003e\n\u003ch3\u003eImportant\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eWe're making \u003ccode\u003eenable_logs\u003c/code\u003e and \u003ccode\u003eenable_metrics\u003c/code\u003e no-op with this release (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/pull/7177\"\u003e#7177\u003c/a\u003e), and they'll be dropped in the next major.\u003c/p\u003e\n\u003cp\u003ePreviously, \u003ccode\u003eenable_logs\u003c/code\u003e also controlled automatic logs collection from the logging and Loguru integrations. These integrations now get an integration-level \u003ccode\u003ecapture_sentry_logs\u003c/code\u003e boolean option to allow for more control over the auto-collection. These options are \u003ccode\u003eFalse\u003c/code\u003e by default, i.e., \u003cstrong\u003enothing is auto-collected without your explicit opt-in\u003c/strong\u003e.\u003c/p\u003e\n\u003ch4\u003eAction Needed\u003c/h4\u003e\n\u003cp\u003eIf you had \u003ccode\u003eenable_logs\u003c/code\u003e set to \u003ccode\u003eTrue\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eIf you were using the \u003ccode\u003esentry_sdk.logger.X\u003c/code\u003e API, no action necessary, the API will just work.\u003c/li\u003e\n\u003cli\u003eIf you were auto-collecting logs from either \u003ccode\u003eLoggingIntegration\u003c/code\u003e or \u003ccode\u003eLoguruIntegration\u003c/code\u003e, the auto-collection \u003cstrong\u003ewill be turned off in this release\u003c/strong\u003e. You can switch auto-collection on explicitly with:\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003e\u003c/code\u003e\u003c/pre\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/getsentry/sentry-python/commit/98f7d91809e71ed5a7b827f8b4f9acfc7ac1bae0\"\u003e\u003ccode\u003e98f7d91\u003c/code\u003e\u003c/a\u003e Update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/8f886ff9b784da7c45f51a0dfbe42c7838e68c42\"\u003e\u003ccode\u003e8f886ff\u003c/code\u003e\u003c/a\u003e release: 2.68.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/df4ec02a1b4bfc50f6218908fe497dd0ec566801\"\u003e\u003ccode\u003edf4ec02\u003c/code\u003e\u003c/a\u003e fix(logs): Don't stop sending auto-collected logs when \u003ccode\u003eenable_logs=True\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/e32031816394208bce58c050ff563bfde8d7b228\"\u003e\u003ccode\u003ee320318\u003c/code\u003e\u003c/a\u003e test(pyramid): Add tests for data_collection gating of request body (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/7218\"\u003e#7218\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/7b8a3857122d0a9c69aca784bd730bb0dcf729f6\"\u003e\u003ccode\u003e7b8a385\u003c/code\u003e\u003c/a\u003e test(bottle): Add tests for data_collection gating of request body (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/7217\"\u003e#7217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/cbcadc9cba1295fb78a90a2823d6fbd36bce1ba3\"\u003e\u003ccode\u003ecbcadc9\u003c/code\u003e\u003c/a\u003e test(sanic): Add tests for data_collection gating of request body (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/7216\"\u003e#7216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/e42c798e0cd549b42bc748a53c7e16c2763ec427\"\u003e\u003ccode\u003ee42c798\u003c/code\u003e\u003c/a\u003e feat(tornado): Gate request body collection on data_collection option (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/7215\"\u003e#7215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/d05bb60e0d9ecc66b2cc8b62ba0cfc0eaa343088\"\u003e\u003ccode\u003ed05bb60\u003c/code\u003e\u003c/a\u003e test(django): Add tests for data_collection gating of request body (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/7213\"\u003e#7213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/bcce67b1a6869229a0c74bcd93e4b8bcfde5cc7a\"\u003e\u003ccode\u003ebcce67b\u003c/code\u003e\u003c/a\u003e feat(wsgi): Gate request body collection on data_collection option (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/7212\"\u003e#7212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/41220c4adba83c307aabae28057db830808adb3a\"\u003e\u003ccode\u003e41220c4\u003c/code\u003e\u003c/a\u003e fix(google_genai): Gate streaming \u003ccode\u003egen_ai.response.tool_calls\u003c/code\u003e on outputs, no...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-python/compare/2.66.1...2.68.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `datasets` from 5.0.0 to 5.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/datasets/releases\"\u003edatasets's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.0.1\u003c/h2\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix version string in \u003cstrong\u003einit\u003c/strong\u003e.py by \u003ca href=\"https://github.com/qgallouedec\"\u003e\u003ccode\u003e@​qgallouedec\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8244\"\u003ehuggingface/datasets#8244\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix conda build by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8250\"\u003ehuggingface/datasets#8250\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix JSON loader schema inference for files starting with a UTF-8 BOM (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8241\"\u003e#8241\u003c/a\u003e) by \u003ca href=\"https://github.com/archievi\"\u003e\u003ccode\u003e@​archievi\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8243\"\u003ehuggingface/datasets#8243\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport hermes traces by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8255\"\u003ehuggingface/datasets#8255\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix batch(by_column=...) crashing after shard/shuffle/split by \u003ca href=\"https://github.com/pkooij\"\u003e\u003ccode\u003e@​pkooij\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8259\"\u003ehuggingface/datasets#8259\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix traces streaming by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8277\"\u003ehuggingface/datasets#8277\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003esupport droid agent traces by \u003ca href=\"https://github.com/cfahlgren1\"\u003e\u003ccode\u003e@​cfahlgren1\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8263\"\u003ehuggingface/datasets#8263\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix CI: commit operation equality (hfh 1.20.0) and pytest parametrize collection error by \u003ca href=\"https://github.com/Wauplin\"\u003e\u003ccode\u003e@​Wauplin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8283\"\u003ehuggingface/datasets#8283\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix lance auth by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8301\"\u003ehuggingface/datasets#8301\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix symlink-following arbitrary file write in archive extraction by \u003ca href=\"https://github.com/AAtomical\"\u003e\u003ccode\u003e@​AAtomical\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8303\"\u003ehuggingface/datasets#8303\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBug Fix: Resuming Twice Resets the Dataloader by \u003ca href=\"https://github.com/francesco-bertolotti\"\u003e\u003ccode\u003e@​francesco-bertolotti\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8295\"\u003ehuggingface/datasets#8295\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump fsspec and simpler wds compr by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8337\"\u003ehuggingface/datasets#8337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: validate Arrow IPC record batches by \u003ca href=\"https://github.com/XciD\"\u003e\u003ccode\u003e@​XciD\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8350\"\u003ehuggingface/datasets#8350\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake the dataset fingerprint independent of Arrow chunking by \u003ca href=\"https://github.com/SuryanshSS1011\"\u003e\u003ccode\u003e@​SuryanshSS1011\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8339\"\u003ehuggingface/datasets#8339\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix casting a nullable LargeList to a different inner type by \u003ca href=\"https://github.com/vineethsaivs\"\u003e\u003ccode\u003e@​vineethsaivs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8346\"\u003ehuggingface/datasets#8346\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: replace AutoFeatureExtractor with AutoImageProcessor in image preprocessing docs by \u003ca href=\"https://github.com/gautamkishore\"\u003e\u003ccode\u003e@​gautamkishore\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8326\"\u003ehuggingface/datasets#8326\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix column drop in Arrow path of axis=1 concatenation by \u003ca href=\"https://github.com/ebarkhordar\"\u003e\u003ccode\u003e@​ebarkhordar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8342\"\u003ehuggingface/datasets#8342\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRaise on length mismatch in batched IterableDataset.map by \u003ca href=\"https://github.com/sohumt123\"\u003e\u003ccode\u003e@​sohumt123\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8332\"\u003ehuggingface/datasets#8332\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix require_storage_embed recursing into require_storage_cast by \u003ca href=\"https://github.com/vineethsaivs\"\u003e\u003ccode\u003e@​vineethsaivs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8349\"\u003ehuggingface/datasets#8349\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix path traversal via metadata file_name in folder-based builders by \u003ca href=\"https://github.com/Kaif10\"\u003e\u003ccode\u003e@​Kaif10\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8325\"\u003ehuggingface/datasets#8325\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport batched=True in Dataset.to_dict by \u003ca href=\"https://github.com/vineethsaivs\"\u003e\u003ccode\u003e@​vineethsaivs\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8333\"\u003ehuggingface/datasets#8333\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix hdf5 external files by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8355\"\u003ehuggingface/datasets#8355\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eremove bad require_storage test by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8357\"\u003ehuggingface/datasets#8357\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eensure fiels are in repo by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8356\"\u003ehuggingface/datasets#8356\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep flat numeric columns with nulls numeric in numpy format by \u003ca href=\"https://github.com/ebarkhordar\"\u003e\u003ccode\u003e@​ebarkhordar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8352\"\u003ehuggingface/datasets#8352\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix bucket dataset card handling and push metadata accounting by \u003ca href=\"https://github.com/pjh4993\"\u003e\u003ccode\u003e@​pjh4993\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8354\"\u003ehuggingface/datasets#8354\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix CSV loader dropping on_bad_lines/encoding_errors on pandas 2.0-2.2 by \u003ca href=\"https://github.com/ebarkhordar\"\u003e\u003ccode\u003e@​ebarkhordar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8358\"\u003ehuggingface/datasets#8358\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eKeep integers on the python read path for fixed-shape ArrayXD columns with nulls by \u003ca href=\"https://github.com/ebarkhordar\"\u003e\u003ccode\u003e@​ebarkhordar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8363\"\u003ehuggingface/datasets#8363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRebatch arrow source before formatting in IterableDataset.filter to fix resume data loss by \u003ca href=\"https://github.com/ebarkhordar\"\u003e\u003ccode\u003e@​ebarkhordar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8360\"\u003ehuggingface/datasets#8360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDecode Json() columns in Dataset.to_pandas() by \u003ca href=\"https://github.com/ebarkhordar\"\u003e\u003ccode\u003e@​ebarkhordar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8344\"\u003ehuggingface/datasets#8344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix buckets on windows by \u003ca href=\"https://github.com/lhoestq\"\u003e\u003ccode\u003e@​lhoestq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8369\"\u003ehuggingface/datasets#8369\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix DatasetDict.push_to_hub leaving removed splits in the dataset card by \u003ca href=\"https://github.com/pjh4993\"\u003e\u003ccode\u003e@​pjh4993\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8367\"\u003ehuggingface/datasets#8367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreserve nullable integer columns in to_json/to_csv/to_sql by \u003ca href=\"https://github.com/ebarkhordar\"\u003e\u003ccode\u003e@​ebarkhordar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8366\"\u003ehuggingface/datasets#8366\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocs\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix duplicate \u0026quot;to\u0026quot; in IterableDataset push-to-hub example by \u003ca href=\"https://github.com/DaoyuanLi2816\"\u003e\u003ccode\u003e@​DaoyuanLi2816\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8252\"\u003ehuggingface/datasets#8252\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eClarify dataset creation vs loading workflows in create_dataset tutorial by \u003ca href=\"https://github.com/zanvari\"\u003e\u003ccode\u003e@​zanvari\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8235\"\u003ehuggingface/datasets#8235\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/DaoyuanLi2816\"\u003e\u003ccode\u003e@​DaoyuanLi2816\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8252\"\u003ehuggingface/datasets#8252\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zanvari\"\u003e\u003ccode\u003e@​zanvari\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8235\"\u003ehuggingface/datasets#8235\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/archievi\"\u003e\u003ccode\u003e@​archievi\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8243\"\u003ehuggingface/datasets#8243\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pkooij\"\u003e\u003ccode\u003e@​pkooij\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8259\"\u003ehuggingface/datasets#8259\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AAtomical\"\u003e\u003ccode\u003e@​AAtomical\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8303\"\u003ehuggingface/datasets#8303\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/francesco-bertolotti\"\u003e\u003ccode\u003e@​francesco-bertolotti\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8295\"\u003ehuggingface/datasets#8295\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/XciD\"\u003e\u003ccode\u003e@​XciD\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8350\"\u003ehuggingface/datasets#8350\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SuryanshSS1011\"\u003e\u003ccode\u003e@​SuryanshSS1011\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8339\"\u003ehuggingface/datasets#8339\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/vineethsaivs\"\u003e\u003ccode\u003e@​vineethsaivs\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/8346\"\u003ehuggingface/datasets#8346\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/huggingface/datasets/commit/921c2a7c0c9494e86fd145e03f68d12fa4ef90a2\"\u003e\u003ccode\u003e921c2a7\u003c/code\u003e\u003c/a\u003e release: 5.0.1 (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8370\"\u003e#8370\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/c6fc5cdbf0a527b0ebd7a74fc73274a0fa3b8cb2\"\u003e\u003ccode\u003ec6fc5cd\u003c/code\u003e\u003c/a\u003e Preserve nullable integer columns in to_json/to_csv/to_sql (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8366\"\u003e#8366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/6747b871de3c8ae5aabc97b17251bfac2d8d9ee5\"\u003e\u003ccode\u003e6747b87\u003c/code\u003e\u003c/a\u003e Fix DatasetDict.push_to_hub leaving removed splits in the dataset card (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8367\"\u003e#8367\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/b305031c4ec070e5e657049abaa70659883958e2\"\u003e\u003ccode\u003eb305031\u003c/code\u003e\u003c/a\u003e fix buckets on windows (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8369\"\u003e#8369\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/030a3e540e8e5cc850c01b0ea3bc0db448255567\"\u003e\u003ccode\u003e030a3e5\u003c/code\u003e\u003c/a\u003e Decode Json() columns in Dataset.to_pandas() (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8344\"\u003e#8344\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/0f207a0a60d63f64d985844044c33ff7cdd4d14f\"\u003e\u003ccode\u003e0f207a0\u003c/code\u003e\u003c/a\u003e Rebatch arrow source before formatting in IterableDataset.filter to fix resum...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/adad35d93ec636ac47d66088c6faadc7d4f0730b\"\u003e\u003ccode\u003eadad35d\u003c/code\u003e\u003c/a\u003e Keep integers on the python read path for fixed-shape ArrayXD columns with nu...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/89667468df606540b4da9280dd974297d9c08734\"\u003e\u003ccode\u003e8966746\u003c/code\u003e\u003c/a\u003e Fix CSV loader dropping on_bad_lines/encoding_errors on pandas 2.0-2.2 (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8358\"\u003e#8358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/b8e861a26be89e232ccd869f698aa08caa779148\"\u003e\u003ccode\u003eb8e861a\u003c/code\u003e\u003c/a\u003e Fix bucket dataset card handling and push metadata accounting (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8354\"\u003e#8354\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/521a590f9b642908c3eb116eb77db9d5512126e9\"\u003e\u003ccode\u003e521a590\u003c/code\u003e\u003c/a\u003e Keep flat numeric columns with nulls numeric in numpy format (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/8352\"\u003e#8352\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/datasets/compare/5.0.0...5.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyarrow` from 25.0.0 to 25.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/apache/arrow/releases\"\u003epyarrow's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eApache Arrow 25.0.1\u003c/h2\u003e\n\u003cp\u003eRelease Notes URL: \u003ca href=\"https://arrow.apache.org/release/25.0.1.html\"\u003ehttps://arrow.apache.org/release/25.0.1.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eApache Arrow 25.0.1 RC1\u003c/h2\u003e\n\u003cp\u003eRelease Notes: Release Candidate: 25.0.1 RC1\u003c/p\u003e\n\u003ch2\u003eApache Arrow 25.0.1 RC0\u003c/h2\u003e\n\u003cp\u003eRelease Notes: Release Candidate: 25.0.1 RC0\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/apache/arrow/commit/beccec0d0c451b7aa3e4530416ac431b3c035c69\"\u003e\u003ccode\u003ebeccec0\u003c/code\u003e\u003c/a\u003e MINOR: [Release] Update versions for 25.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/7bdf01ada82ff9ee76155227bf09f2949187bd2c\"\u003e\u003ccode\u003e7bdf01a\u003c/code\u003e\u003c/a\u003e MINOR: [Release] Update .deb/.rpm changelogs for 25.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/91dbae1f71772dff7f7d07817fcff6f47c2645e0\"\u003e\u003ccode\u003e91dbae1\u003c/code\u003e\u003c/a\u003e MINOR: [Release] Update CHANGELOG.md for 25.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/849d4634e7784d568477f5e159a13b003a7dff4c\"\u003e\u003ccode\u003e849d463\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50808\"\u003eGH-50808\u003c/a\u003e: [Python] Narrow Feather deprecation to V1 format (\u003ca href=\"https://redirect.github.com/apache/arrow/issues/50685\"\u003e#50685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/e70ebf50f0b7a67f3892a307d1dc583e51411bf2\"\u003e\u003ccode\u003ee70ebf5\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50600\"\u003eGH-50600\u003c/a\u003e: [Release] Pin Python version in Conda verification\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/f5037be3f02318738713500f83fc6aef37002f1b\"\u003e\u003ccode\u003ef5037be\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50578\"\u003eGH-50578\u003c/a\u003e: [C++][FlightRPC][ODBC] Always return SQL_NO_DATA from GetMoreResult...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/149158986337257eed43392ee04a2680504de77c\"\u003e\u003ccode\u003e1491589\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50503\"\u003eGH-50503\u003c/a\u003e: [Parquet] Remove SVE128 unpack (\u003ca href=\"https://redirect.github.com/apache/arrow/issues/50611\"\u003e#50611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/d1eaaedef3c7b05668e620fee1478fc884f36296\"\u003e\u003ccode\u003ed1eaaed\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50326\"\u003eGH-50326\u003c/a\u003e: [Python] Convert arrays to Python objects without per-element Scala...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/fe141358b2783f2b85eaa982834aece0cb90c5b1\"\u003e\u003ccode\u003efe14135\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50428\"\u003eGH-50428\u003c/a\u003e: [C++] Better mimalloc configuration on macOS (\u003ca href=\"https://redirect.github.com/apache/arrow/issues/50549\"\u003e#50549\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/apache/arrow/commit/8fb632a2eebdaf5ff230a797e587a4c3359f9fac\"\u003e\u003ccode\u003e8fb632a\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/apache/arrow/issues/50383\"\u003eGH-50383\u003c/a\u003e: [Release] Remove deprecated -f flag on conda create environment (\u003ca href=\"https://redirect.github.com/apache/arrow/issues/5\"\u003e#5\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/apache/arrow/compare/apache-arrow-25.0.0...apache-arrow-25.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.25.1 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.25.1...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gitpython` from 3.1.57 to 3.1.61\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gitpython-developers/GitPython/releases\"\u003egitpython's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.1.61\u003c/h2\u003e\n\u003cp\u003eFix accidental removal of exploitable regex in \u003ccode\u003eActor\u003c/code\u003e by bringing it back, and deprecating it.\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix repository discovery precedence by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2218\"\u003egitpython-developers/GitPython#2218\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: wait for git daemon to listen before connecting by \u003ca href=\"https://github.com/Vogtinator\"\u003e\u003ccode\u003e@​Vogtinator\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2219\"\u003egitpython-developers/GitPython#2219\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: restore Actor.name_email_regex by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2221\"\u003egitpython-developers/GitPython#2221\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/Vogtinator\"\u003e\u003ccode\u003e@​Vogtinator\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2219\"\u003egitpython-developers/GitPython#2219\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gitpython-developers/GitPython/compare/3.1.60...3.1.61\"\u003ehttps://github.com/gitpython-developers/GitPython/compare/3.1.60...3.1.61\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.1.60 Security\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eprepare changelog prior to release by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2212\"\u003egitpython-developers/GitPython#2212\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePreserve Git config escape semantics by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2213\"\u003egitpython-developers/GitPython#2213\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHarden diff path and actor identity parsing by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2215\"\u003egitpython-developers/GitPython#2215\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire explicit opt-in for filesystem diffs by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2217\"\u003egitpython-developers/GitPython#2217\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gitpython-developers/GitPython/compare/3.1.59...3.1.60\"\u003ehttps://github.com/gitpython-developers/GitPython/compare/3.1.59...3.1.60\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.1.59 - Security\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eprepare changelog for upcoming release by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2207\"\u003egitpython-developers/GitPython#2207\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBlock file-reading Git options by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2208\"\u003egitpython-developers/GitPython#2208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eindex: write blobs via git hash-object, not gitdb's odb.store by \u003ca href=\"https://github.com/caroescm\"\u003e\u003ccode\u003e@​caroescm\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2209\"\u003egitpython-developers/GitPython#2209\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBlock separate git directories during clone by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2210\"\u003egitpython-developers/GitPython#2210\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: harden config parsing boundaries by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2211\"\u003egitpython-developers/GitPython#2211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erepo.index.add()\u003c/code\u003e now respects worktree filters  \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2209\"\u003egitpython-developers/GitPython#2209\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gitpython-developers/GitPython/compare/3.1.58...3.1.59\"\u003ehttps://github.com/gitpython-developers/GitPython/compare/3.1.58...3.1.59\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.1.58 - Security and Fixes\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etest: allow Python startup before timeout by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gitpython-developers/GitPython/pull/2195\"\u003egitpython-developers/GitPython#2195\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eResolve Windows hook Bash through PATH by \u003ca href=\"https://github.com/Byron\"\u003e\u003ccode\u003e@​Byron\u003c/code\u003e\u003c/a\u003e i...\n\n_Description has been truncated_","html_url":"https://github.com/microsoft/physical-ai-toolchain/pull/1463","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2Fphysical-ai-toolchain/issues/1463","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1463/packages"}},{"old_version":"1.27.0","new_version":"1.29.0","update_type":"minor","path":null,"pr_created_at":"2026-09-05T05:30:00.000Z","version_change":"1.27.0 → 1.29.0","issue":{"uuid":"5355854093","node_id":"PR_kwDOUHlKes8AAAABCS106w","number":10,"state":"open","title":"build(deps): bump the minor-update group across 1 directory with 185 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-05T05:30:00.000Z","updated_at":"2026-09-05T05:30:09.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"minor-update","update_count":185,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"transformers","old_version":"5.14.1","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"huggingface-hub","old_version":"1.27.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.1","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"fastapi","old_version":"0.136.3","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"starlette","old_version":"1.3.1","new_version":"1.6.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"prometheus-fastapi-instrumentator","old_version":"8.0.2","new_version":"8.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"pyzmq","old_version":"27.1.0","new_version":"27.2.0","repository_url":"https://github.com/zeromq/pyzmq"},{"name":"python-json-logger","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"pybase64","old_version":"1.4.3","new_version":"1.5.0","repository_url":"https://github.com/mayeut/pybase64"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions-ai","old_version":"0.4.13","new_version":"0.5.1"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"torchcodec","old_version":"0.14.0+cu130","new_version":"0.16.0","repository_url":"https://github.com/pytorch/torchcodec"},{"name":"auto-round-lib","old_version":"0.14.2","new_version":"0.15.0","repository_url":"https://github.com/intel/auto-round"},{"name":"tpu-inference","old_version":"0.26.0","new_version":"0.28.0","repository_url":"https://github.com/vllm-project/tpu-inference"},{"name":"pynvvideocodec","old_version":"2.0.4","new_version":"2.2.2"},{"name":"nvidia-cutlass-dsl","old_version":"4.6.2","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.8","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.86","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.86","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"cohere","old_version":"7.0.8","new_version":"7.1.1","repository_url":"https://github.com/cohere-ai/cohere-python"},{"name":"cohere-melody","old_version":"0.9.0","new_version":"0.13.4","repository_url":"https://github.com/cohere-ai/melody"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.0","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.3.0","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.0","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi-cloud-cli","old_version":"0.21.0","new_version":"0.24.0","repository_url":"https://github.com/fastapilabs/fastapi-cloud-cli"},{"name":"fastar","old_version":"0.11.0","new_version":"0.12.0","repository_url":"https://github.com/DoctorJohn/fastar"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"h11","old_version":"0.14.0","new_version":"0.16.0","repository_url":"https://github.com/python-hyper/h11"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"idna","old_version":"3.10","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.15.0","new_version":"0.16.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema-rs","old_version":"0.46.5","new_version":"0.52.1","repository_url":"https://github.com/Stranger6667/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llguidance","old_version":"1.7.6","new_version":"1.8.0","repository_url":"https://github.com/microsoft/llguidance"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.1.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.20.0.48","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.1","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.29.7","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"peft","old_version":"0.19.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.7","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pydantic-settings","old_version":"2.14.2","new_version":"2.15.0","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pyrate-limiter","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/vutran1710/PyrateLimiter"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"rignore","old_version":"0.7.6","new_version":"0.8.1"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"schemathesis","old_version":"4.21.6","new_version":"4.25.2","repository_url":"https://github.com/schemathesis/schemathesis"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"sentry-sdk","old_version":"2.63.0","new_version":"2.68.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"triton","old_version":"3.7.1","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.26.8","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.1","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.5","repository_url":"https://github.com/astral-sh/ruff"},{"name":"zentorch","old_version":"2.11.0.0","new_version":"2.13.0.0","repository_url":"https://github.com/amd/ZenDNN-pytorch-plugin"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 185 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [transformers](https://github.com/huggingface/transformers) | `5.14.1` | `5.16.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.27.0` | `1.29.0` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.1` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.136.3` | `0.141.1` |\n| [starlette](https://github.com/Kludex/starlette) | `1.3.1` | `1.6.0` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `8.0.2` | `8.1.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [pyzmq](https://github.com/zeromq/pyzmq) | `27.1.0` | `27.2.0` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `4.1.0` | `4.2.0` |\n| [pybase64](https://github.com/mayeut/pybase64) | `1.4.3` | `1.5.0` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| opentelemetry-semantic-conventions-ai | `0.4.13` | `0.5.1` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [torchcodec](https://github.com/pytorch/torchcodec) | `0.14.0+cu130` | `0.16.0` |\n| [auto-round-lib](https://github.com/intel/auto-round) | `0.14.2` | `0.15.0` |\n| [tpu-inference](https://github.com/vllm-project/tpu-inference) | `0.26.0` | `0.28.0` |\n| pynvvideocodec | `2.0.4` | `2.2.2` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.6.2` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.8` | `0.2.6` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.86` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.86` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| [cohere](https://github.com/cohere-ai/cohere-python) | `7.0.8` | `7.1.1` |\n| [cohere-melody](https://github.com/cohere-ai/melody) | `0.9.0` | `0.13.4` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.0` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.3.0` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.0` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi-cloud-cli](https://github.com/fastapilabs/fastapi-cloud-cli) | `0.21.0` | `0.24.0` |\n| [fastar](https://github.com/DoctorJohn/fastar) | `0.11.0` | `0.12.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.19` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.15.0` | `0.16.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonschema-rs](https://github.com/Stranger6667/jsonschema) | `0.46.5` | `0.52.1` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llguidance](https://github.com/microsoft/llguidance) | `1.7.6` | `1.8.0` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.1.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.20.0.48` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.1` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.29.7` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [peft](https://github.com/huggingface/peft) | `0.19.1` | `0.20.0` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.7` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.14.2` | `2.15.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pyrate-limiter](https://github.com/vutran1710/PyrateLimiter) | `4.4.0` | `4.5.0` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| rignore | `0.7.6` | `0.8.1` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [schemathesis](https://github.com/schemathesis/schemathesis) | `4.21.6` | `4.25.2` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.63.0` | `2.68.1` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [triton](https://github.com/triton-lang/triton) | `3.7.1` | `3.8.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.26.8` | `0.27.2` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.1` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.5` |\n| [zentorch](https://github.com/amd/ZenDNN-pytorch-plugin) | `2.11.0.0` | `2.13.0.0` |\n\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 5.14.1 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\n\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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.14.1...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.27.0 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\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/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.27.0...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e⚡ Performance — measured locally on this Mac, not lifted from PRs\u003c/h2\u003e\n\u003cp\u003eRun with \u003ccode\u003ecargo bench --bench \u0026lt;name\u0026gt; -- --save-baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.22.2\u003c/code\u003e, then \u003ccode\u003e--baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.23.1\u003c/code\u003e. Numbers are point-in-time wall clock on a single laptop; relative deltas are what matters, absolute numbers will differ on CI hardware.\u003c/p\u003e\n\u003ch3\u003eAdded-vocabulary deserialize — the headline win (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1999\"\u003e#1999\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003e\u003ccode\u003ebench: improve added_vocab_deserialize to reflect real-world workloads\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2000\"\u003e#2000\u003c/a\u003e) is now representative of how transformers actually loads tokenizer.json files. The combined effect of \u003ccode\u003edaachorse\u003c/code\u003e for the matching automaton plus the normalize-on-insert refactor is enormous on this workload:\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~410 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e248 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.1 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e273 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~395 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e235 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.4 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e290 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e400k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~15 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e980 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−94%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eReal-world impact: loading a Llama-3-style tokenizer with a large set of added tokens dropped from \u0026quot;noticeable pause\u0026quot; to \u0026quot;instant\u0026quot;.\u003c/p\u003e\n\u003ch3\u003eBPE encode\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch, no cache\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e530 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e446 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−16%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch\u003c/code\u003e (cached)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e690 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e685 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode\u003c/code\u003e (single)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.95 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.94 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (small)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e32.6 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e31.5 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−3%\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (big)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.01 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e988 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−2%\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eThe BPE per-thread cache PR (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e) shows much larger wins on highly-parallel workloads (+47–62% at 88+ threads on a server box, per the PR's own measurements on Vera). Single-thread batch numbers above are flat or slightly improved because cache-hit overhead was already low without contention.\u003c/p\u003e\n\u003ch3\u003eLlama-3 encode\u003c/h3\u003e\n\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/huggingface/tokenizers/commit/7f1623b90b5adfb9bc327d4c3468d2f70bbce262\"\u003e\u003ccode\u003e7f1623b\u003c/code\u003e\u003c/a\u003e Bump version to 0.23.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bbe43ad73d8fc8932b9d0e657ddee3cd70c649a4\"\u003e\u003ccode\u003ebbe43ad\u003c/code\u003e\u003c/a\u003e ci: release workflow fixes (node + python) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2043\"\u003e#2043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/ab0c5d8fc13eb1c5001d9c06806635e2b5a42e9f\"\u003e\u003ccode\u003eab0c5d8\u003c/code\u003e\u003c/a\u003e Fix node release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2034\"\u003e#2034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/decd8e07dad15f296c0adc2bc3a560f62d3de2eb\"\u003e\u003ccode\u003edecd8e0\u003c/code\u003e\u003c/a\u003e bindings/python: free-threaded Python (3.14t) support (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2041\"\u003e#2041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/3992692d483bf3177219b52cb101b1bb055c18e6\"\u003e\u003ccode\u003e3992692\u003c/code\u003e\u003c/a\u003e update for release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2033\"\u003e#2033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bcdd25b97fcd78549903082ecf3ddd87d42c456b\"\u003e\u003ccode\u003ebcdd25b\u003c/code\u003e\u003c/a\u003e BPE cache: per-thread read-through cache to avoid RwLock atomics on hits (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/618eb383f43e207139eb5cdb9bca17796b5e9bd7\"\u003e\u003ccode\u003e618eb38\u003c/code\u003e\u003c/a\u003e Bump follow-redirects in /tokenizers/examples/unstable_wasm/www (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2024\"\u003e#2024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b6b1688bef2e87efc91af18edf7ac38b4d2dfbe6\"\u003e\u003ccode\u003eb6b1688\u003c/code\u003e\u003c/a\u003e chore: bump doc-builder SHA for PR upload workflow (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2025\"\u003e#2025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/19015d6b44aa3896626de5092e4171aed1b56d5b\"\u003e\u003ccode\u003e19015d6\u003c/code\u003e\u003c/a\u003e fix: use uvx --with cairosvg instead of uv pip install --system (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2021\"\u003e#2021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/efbcc68e321c364c8f9541f1c93a158df54d7da4\"\u003e\u003ccode\u003eefbcc68\u003c/code\u003e\u003c/a\u003e Ci benchmarks (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2019\"\u003e#2019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `fastapi` from 0.136.3 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15093\"\u003e#15093\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.10\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling sequences with nested Annotated types. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14874\"\u003e#14874\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Accept any base test failure as regression. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16092\"\u003e#16092\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Preserve pytest exit code in regression check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16091\"\u003e#16091\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Test PR regressions against base code. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16090\"\u003e#16090\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.9\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eexclude_defaults\u003c/code\u003e not propagated to dict keys and values in \u003ccode\u003ejsonable_encoder\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16043\"\u003e#16043\u003c/a\u003e by \u003ca href=\"https://github.com/MBGrao\"\u003e\u003ccode\u003e@​MBGrao\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\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/fastapi/fastapi/commit/95f8322ee1dcda7ceace7b1c4f6c9915b36d748f\"\u003e\u003ccode\u003e95f8322\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16106\"\u003e#16106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f137944c435cff4e4b30ea7d12855ea88ddb868c\"\u003e\u003ccode\u003ef137944\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d62354434b2e508fe89024213b220ca8e67dea5e\"\u003e\u003ccode\u003ed623544\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for background tasks and head...\n\n_Description has been truncated_","html_url":"https://github.com/Entrpi/vllm-glm-5.3-flash-spark/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Entrpi%2Fvllm-glm-5.3-flash-spark/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"}},{"old_version":"1.10.2","new_version":"1.29.0","update_type":"minor","path":null,"pr_created_at":"2026-09-05T04:10:37.000Z","version_change":"1.10.2 → 1.29.0","issue":{"uuid":"5355478249","node_id":"PR_kwDOTx9lYc8AAAABCSjYaA","number":10,"state":"open","title":"Bump the minor-update group across 1 directory with 172 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-05T04:10:37.000Z","updated_at":"2026-09-05T04:10:47.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-update","update_count":172,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"transformers","old_version":"5.5.3","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.1","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"safetensors","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/huggingface/safetensors"},{"name":"fastapi","old_version":"0.128.0","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"tpu-inference","old_version":"0.20.0","new_version":"0.28.0","repository_url":"https://github.com/vllm-project/tpu-inference"},{"name":"fastsafetensors","old_version":"0.2.2","new_version":"0.3.3","repository_url":"https://github.com/foundation-model-stack/fastsafetensors"},{"name":"nvidia-cutlass-dsl","old_version":"4.5.2","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.2","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"anyio","old_version":"4.6.2.post1","new_version":"4.14.2","repository_url":"https://github.com/agronholm/anyio"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"arrow","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/arrow-py/arrow"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"bitsandbytes","old_version":"0.49.2","new_version":"0.50.2","repository_url":"https://github.com/bitsandbytes-foundation/bitsandbytes"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.86","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.86","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.1.7","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.0","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.2","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.0","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"h11","old_version":"0.14.0","new_version":"0.16.0","repository_url":"https://github.com/python-hyper/h11"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"harfile","old_version":"0.3.0","new_version":"0.5.0","repository_url":"https://github.com/schemathesis/harfile"},{"name":"hf-xet","old_version":"1.4.3","new_version":"1.6.0","repository_url":"https://github.com/huggingface/xet-core"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"huggingface-hub","old_version":"1.10.2","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"hypothesis-graphql","old_version":"0.11.1","new_version":"0.13.1","repository_url":"https://github.com/Stranger6667/hypothesis-graphql"},{"name":"idna","old_version":"3.10","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonpointer","old_version":"3.0.0","new_version":"3.1.1","repository_url":"https://github.com/stefankoegl/python-json-pointer"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.0.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.19.0.56","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.0","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.28.9","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"peft","old_version":"0.18.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.7","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-subtests","old_version":"0.14.1","new_version":"0.15.0","repository_url":"https://github.com/pytest-dev/pytest-subtests"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"tomli","old_version":"2.2.1","new_version":"2.4.1","repository_url":"https://github.com/hukkin/tomli"},{"name":"triton","old_version":"3.6.0","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.15.2","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.1","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.5","repository_url":"https://github.com/astral-sh/ruff"},{"name":"zentorch","old_version":"2.11.0.0","new_version":"2.13.0.0","repository_url":"https://github.com/amd/ZenDNN-pytorch-plugin"},{"name":"helion","old_version":"1.0.0","new_version":"1.4.0","repository_url":"https://github.com/pytorch/helion"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 172 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [transformers](https://github.com/huggingface/transformers) | `5.5.3` | `5.16.1` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.1` |\n| [safetensors](https://github.com/huggingface/safetensors) | `0.7.0` | `0.8.0` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.128.0` | `0.141.1` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [tpu-inference](https://github.com/vllm-project/tpu-inference) | `0.20.0` | `0.28.0` |\n| [fastsafetensors](https://github.com/foundation-model-stack/fastsafetensors) | `0.2.2` | `0.3.3` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.5.2` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.2` | `0.2.6` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.6.2.post1` | `4.14.2` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [arrow](https://github.com/arrow-py/arrow) | `1.3.0` | `1.4.0` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [bitsandbytes](https://github.com/bitsandbytes-foundation/bitsandbytes) | `0.49.2` | `0.50.2` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.86` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.86` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.1.7` | `8.5.0` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.0` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.2` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.0` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [harfile](https://github.com/schemathesis/harfile) | `0.3.0` | `0.5.0` |\n| [hf-xet](https://github.com/huggingface/xet-core) | `1.4.3` | `1.6.0` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.10.2` | `1.29.0` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [hypothesis-graphql](https://github.com/Stranger6667/hypothesis-graphql) | `0.11.1` | `0.13.1` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.19` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonpointer](https://github.com/stefankoegl/python-json-pointer) | `3.0.0` | `3.1.1` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.0.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.19.0.56` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.0` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.28.9` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [peft](https://github.com/huggingface/peft) | `0.18.1` | `0.20.0` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.7` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-subtests](https://github.com/pytest-dev/pytest-subtests) | `0.14.1` | `0.15.0` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [tomli](https://github.com/hukkin/tomli) | `2.2.1` | `2.4.1` |\n| [triton](https://github.com/triton-lang/triton) | `3.6.0` | `3.8.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.15.2` | `0.27.2` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.1` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.5` |\n| [zentorch](https://github.com/amd/ZenDNN-pytorch-plugin) | `2.11.0.0` | `2.13.0.0` |\n| [helion](https://github.com/pytorch/helion) | `1.0.0` | `1.4.0` |\n\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 5.5.3 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\n\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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.5.3...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e⚡ Performance — measured locally on this Mac, not lifted from PRs\u003c/h2\u003e\n\u003cp\u003eRun with \u003ccode\u003ecargo bench --bench \u0026lt;name\u0026gt; -- --save-baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.22.2\u003c/code\u003e, then \u003ccode\u003e--baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.23.1\u003c/code\u003e. Numbers are point-in-time wall clock on a single laptop; relative deltas are what matters, absolute numbers will differ on CI hardware.\u003c/p\u003e\n\u003ch3\u003eAdded-vocabulary deserialize — the headline win (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1999\"\u003e#1999\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003e\u003ccode\u003ebench: improve added_vocab_deserialize to reflect real-world workloads\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2000\"\u003e#2000\u003c/a\u003e) is now representative of how transformers actually loads tokenizer.json files. The combined effect of \u003ccode\u003edaachorse\u003c/code\u003e for the matching automaton plus the normalize-on-insert refactor is enormous on this workload:\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~410 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e248 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.1 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e273 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~395 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e235 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.4 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e290 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e400k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~15 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e980 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−94%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eReal-world impact: loading a Llama-3-style tokenizer with a large set of added tokens dropped from \u0026quot;noticeable pause\u0026quot; to \u0026quot;instant\u0026quot;.\u003c/p\u003e\n\u003ch3\u003eBPE encode\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch, no cache\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e530 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e446 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−16%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch\u003c/code\u003e (cached)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e690 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e685 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode\u003c/code\u003e (single)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.95 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.94 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (small)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e32.6 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e31.5 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−3%\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (big)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.01 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e988 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−2%\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eThe BPE per-thread cache PR (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e) shows much larger wins on highly-parallel workloads (+47–62% at 88+ threads on a server box, per the PR's own measurements on Vera). Single-thread batch numbers above are flat or slightly improved because cache-hit overhead was already low without contention.\u003c/p\u003e\n\u003ch3\u003eLlama-3 encode\u003c/h3\u003e\n\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/huggingface/tokenizers/commit/7f1623b90b5adfb9bc327d4c3468d2f70bbce262\"\u003e\u003ccode\u003e7f1623b\u003c/code\u003e\u003c/a\u003e Bump version to 0.23.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bbe43ad73d8fc8932b9d0e657ddee3cd70c649a4\"\u003e\u003ccode\u003ebbe43ad\u003c/code\u003e\u003c/a\u003e ci: release workflow fixes (node + python) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2043\"\u003e#2043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/ab0c5d8fc13eb1c5001d9c06806635e2b5a42e9f\"\u003e\u003ccode\u003eab0c5d8\u003c/code\u003e\u003c/a\u003e Fix node release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2034\"\u003e#2034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/decd8e07dad15f296c0adc2bc3a560f62d3de2eb\"\u003e\u003ccode\u003edecd8e0\u003c/code\u003e\u003c/a\u003e bindings/python: free-threaded Python (3.14t) support (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2041\"\u003e#2041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/3992692d483bf3177219b52cb101b1bb055c18e6\"\u003e\u003ccode\u003e3992692\u003c/code\u003e\u003c/a\u003e update for release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2033\"\u003e#2033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bcdd25b97fcd78549903082ecf3ddd87d42c456b\"\u003e\u003ccode\u003ebcdd25b\u003c/code\u003e\u003c/a\u003e BPE cache: per-thread read-through cache to avoid RwLock atomics on hits (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/618eb383f43e207139eb5cdb9bca17796b5e9bd7\"\u003e\u003ccode\u003e618eb38\u003c/code\u003e\u003c/a\u003e Bump follow-redirects in /tokenizers/examples/unstable_wasm/www (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2024\"\u003e#2024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b6b1688bef2e87efc91af18edf7ac38b4d2dfbe6\"\u003e\u003ccode\u003eb6b1688\u003c/code\u003e\u003c/a\u003e chore: bump doc-builder SHA for PR upload workflow (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2025\"\u003e#2025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/19015d6b44aa3896626de5092e4171aed1b56d5b\"\u003e\u003ccode\u003e19015d6\u003c/code\u003e\u003c/a\u003e fix: use uvx --with cairosvg instead of uv pip install --system (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2021\"\u003e#2021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/efbcc68e321c364c8f9541f1c93a158df54d7da4\"\u003e\u003ccode\u003eefbcc68\u003c/code\u003e\u003c/a\u003e Ci benchmarks (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2019\"\u003e#2019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `safetensors` from 0.7.0 to 0.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/safetensors/releases\"\u003esafetensors's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.8.0\u003c/h2\u003e\n\u003ch2\u003eNews\u003c/h2\u003e\n\u003cp\u003esafetensors joins the PyTorch foundation!\u003c/p\u003e\n\n\u003cp\u003eRead more on that: \u003ca href=\"https://huggingface.co/blog/safetensors-joins-pytorch-foundation\"\u003ehttps://huggingface.co/blog/safetensors-joins-pytorch-foundation\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eWhat's changed\u003c/h2\u003e\n\u003cp\u003eSafetensors 0.8.0 brings direct to Metal loading on Apple Silicon, GIL-free serialization, broader hardware and dtype coverage, and a stronger Python API.\u003c/p\u003e\n\u003ch3\u003eBreaking\u003c/h3\u003e\n\u003cp\u003eThe \u003ccode\u003eserialize\u003c/code\u003e and \u003ccode\u003eserialize_file\u003c/code\u003e functions now release the GIL during writes, enabling true multithreaded saves from Python. Their input contract has also changed: tensor metadata is now passed via a \u003ccode\u003eTensorSpec\u003c/code\u003e class (exported from safetensors) instead of plain dicts, making API more explicit and robust to misinputs. This is a breaking change for anyone calling the low-level \u003ccode\u003eserialize\u003c/code\u003e / \u003ccode\u003eserialize_file\u003c/code\u003e API directly; the high-level wrappers (\u003ccode\u003esafetensors.torch\u003c/code\u003e, \u003ccode\u003esafetensors.numpy\u003c/code\u003e, \u003ccode\u003esafetensors.paddle\u003c/code\u003e) are updated internally and their public API is unchanged.\u003c/p\u003e\n\u003cp\u003eThe minimum supported Python version is now 3.10 (was 3.9). Python 3.9 reached end-of-life in October 2025.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eTensorIndexer::Narrow\u003c/code\u003e now carries a \u003ccode\u003estep: NonZeroUsize\u003c/code\u003e parameter, so a slice is now \u003ccode\u003estart:stop:step\u003c/code\u003e. This is a fix as this silent error was hidden behind the \u003ccode\u003eStorage::Torch\u003c/code\u003e variant which offloaded slicing logic to torch directly.\u003c/p\u003e\n\u003ch3\u003eCI\u003c/h3\u003e\n\u003cp\u003eOn the platform side, this release adds Windows ARM64 wheel builds, riscv64 Linux wheels, and CI has been hardened with pinned GitHub Actions SHAs.\u003c/p\u003e\n\u003cp\u003eAlso dropped the anaconda CI we had as there's already an automatic tracker via conda-forge.\u003c/p\u003e\n\u003ch3\u003eNew features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDirect MPS load on Apple Silicon: tensors are directly loaded in an \u003ccode\u003eMTLBuffer\u003c/code\u003e and handed to the frameworks that support it (only torch atm) via DLPack, skipping needless copies.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003ebackend\u003c/code\u003e parameter introduced, for the addition of the \u003ccode\u003epread\u003c/code\u003e backend. We now support loading files via \u003ccode\u003epread(2)\u003c/code\u003e syscall instead of just mmap. Useful for specific archs/platforms.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eget_slice\u003c/code\u003e now handles ellipsis \u003ccode\u003e[...]\u003c/code\u003e and strided slices \u003ccode\u003e[:, ::8]\u003c/code\u003e wherever safetensors does the slicing itself (\u003ccode\u003epread\u003c/code\u003e for any framework, MPS, and \u003ccode\u003emmap\u003c/code\u003e outside torch/paddle), which silently dropped the step or rejected \u003ccode\u003e...\u003c/code\u003e before.\u003c/li\u003e\n\u003cli\u003eMUSA device support for MooreThreads GPUs.\u003c/li\u003e\n\u003cli\u003eNew dtype support includes \u003ccode\u003efloat8_e4m3fnuz\u003c/code\u003e and \u003ccode\u003efloat8_e5m2fnuz\u003c/code\u003e (AMD FNUZ FP8 formats).\u003c/li\u003e\n\u003cli\u003eThe reader is now explicitly lenient about leading whitespace in the JSON header, which keeps the door open for future page-aligned writes.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements/perf\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFile writes on macOS now use \u003ccode\u003eF_NOCACHE\u003c/code\u003e for direct I/O, yielding roughly 30% faster \u003ccode\u003esave_file\u003c/code\u003e on Apple Silicon.\u003c/li\u003e\n\u003cli\u003eThe packaging dependency has been dropped from the \u003ccode\u003e[torch]\u003c/code\u003e extra, replaced by a simple \u003ccode\u003ehasattr\u003c/code\u003e probe for efficiency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd arm64 windows support by \u003ca href=\"https://github.com/finnagin\"\u003e\u003ccode\u003e@​finnagin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/678\"\u003esafetensors/safetensors#678\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(backend): support musa backend for MooreThreads GPU by \u003ca href=\"https://github.com/caizhi-mt\"\u003e\u003ccode\u003e@​caizhi-mt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/671\"\u003esafetensors/safetensors#671\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd gil free serialize_file(serialize_file_threadable) by \u003ca href=\"https://github.com/TomQunChao\"\u003e\u003ccode\u003e@​TomQunChao\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/679\"\u003esafetensors/safetensors#679\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: remove outdated comment by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/685\"\u003esafetensors/safetensors#685\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add direct io write fast path on macos by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/687\"\u003esafetensors/safetensors#687\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: keep dropped reference to tensor moved from gpu to cpu by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/689\"\u003esafetensors/safetensors#689\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: bump torch to \u003ccode\u003e2.4\u003c/code\u003e by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/710\"\u003esafetensors/safetensors#710\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eContribution guide security by \u003ca href=\"https://github.com/LysandreJik\"\u003e\u003ccode\u003e@​LysandreJik\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/712\"\u003esafetensors/safetensors#712\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\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/safetensors/safetensors/blob/main/RELEASE.md\"\u003esafetensors's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e0.8.0-dev.0 → 0.8.0\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\nUpdate lockfiles again:\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003ecargo check\ncd bindings/python \u0026amp;amp;\u0026amp;amp; uv lock\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;p\u0026gt;Commit:\u0026lt;/p\u0026gt;\n\u0026lt;pre\u0026gt;\u0026lt;code\u0026gt;Set version to 0.8.0\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;p\u0026gt;The Python version is not set in \u0026lt;code\u0026gt;pyproject.toml\u0026lt;/code\u0026gt; directly — maturin reads it from \u0026lt;code\u0026gt;bindings/python/Cargo.toml\u0026lt;/code\u0026gt; at build time.\u0026lt;/p\u0026gt;\n\u0026lt;h3\u0026gt;4. Create the release on GitHub\u0026lt;/h3\u0026gt;\n\u0026lt;p\u0026gt;Go to the \u0026lt;a href=\u0026quot;https://github.com/huggingface/safetensors/releases\u0026quot;\u0026gt;GitHub Releases page\u0026lt;/a\u0026gt; and draft a new release:\u0026lt;/p\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;strong\u0026gt;Choose the release branch\u0026lt;/strong\u0026gt; (e.g. \u0026lt;code\u0026gt;git_v0.8.0\u0026lt;/code\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;strong\u0026gt;Create a new tag\u0026lt;/strong\u0026gt; on publish: \u0026lt;code\u0026gt;v0.8.0\u0026lt;/code\u0026gt;\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;strong\u0026gt;Generate release notes\u0026lt;/strong\u0026gt; from the previous tag (e.g. \u0026lt;code\u0026gt;v0.7.0\u0026lt;/code\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Add any notable highlights at the top of the generated notes\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;Structure for manual notes:\u0026lt;/p\u0026gt;\n\u0026lt;pre lang=\u0026quot;markdown\u0026quot;\u0026gt;\u0026lt;code\u0026gt;## Breaking changes\n- ...\n\n## New features\n- ...\n\n## Bug fixes\n- ...\n\n## Internal / CI\n- ...\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;p\u0026gt;Click \u0026lt;strong\u0026gt;Publish release\u0026lt;/strong\u0026gt;. This creates the tag, which triggers the three release workflows.\u0026lt;/p\u0026gt;\n\u0026lt;h3\u0026gt;5. Monitor the CI\u0026lt;/h3\u0026gt;\n\u0026lt;p\u0026gt;The tag triggers two workflow runs in the \u0026lt;a href=\u0026quot;https://github.com/huggingface/safetensors/actions\u0026quot;\u0026gt;Actions tab\u0026lt;/a\u0026gt;:\u0026lt;/p\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;strong\u0026gt;CI\u0026lt;/strong\u0026gt; (Python release) — builds wheels for every platform × Python version, uploads to PyPI. Can take up to over 30 minutes.\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;!-- raw HTML omitted --\u0026gt;\n\u0026lt;/blockquote\u0026gt;\n\u0026lt;p\u0026gt;... (truncated)\u0026lt;/p\u0026gt;\n\u0026lt;/details\u0026gt;\n\u0026lt;details\u0026gt;\n\u0026lt;summary\u0026gt;Commits\u0026lt;/summary\u0026gt;\n\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/a406ca3e7a90598be0cd05a50069cb9bf5ef6ba6\u0026quot;\u0026gt;\u0026lt;code\u0026gt;a406ca3\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix(release): move crates.io to trusted publisher OIDC\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/d0368d14c0a417fb2ca2a6627e9513d17f74f9b7\u0026quot;\u0026gt;\u0026lt;code\u0026gt;d0368d1\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; feat: \u0026lt;code\u0026gt;0.8.0\u0026lt;/code\u0026gt;\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/5ec3ec14c506d09598df6d96f36cd9a4ea94aafa\u0026quot;\u0026gt;\u0026lt;code\u0026gt;5ec3ec1\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix(release): move to pypi trusted publisher OIDC (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/778\u0026quot;\u0026gt;#778\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/e37dc536ce598ef1d71a9ad712987571f2f05808\u0026quot;\u0026gt;\u0026lt;code\u0026gt;e37dc53\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; feat: bump main to \u0026lt;code\u0026gt;0.9.0-dev.0\u0026lt;/code\u0026gt; (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/777\u0026quot;\u0026gt;#777\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/6e32aa7b029d323238233110c1cdecae22cbe564\u0026quot;\u0026gt;\u0026lt;code\u0026gt;6e32aa7\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; refactor: replace \u0026lt;code\u0026gt;_host_alias_storage\u0026lt;/code\u0026gt; w/ \u0026lt;code\u0026gt;MTLBuffer\u0026lt;/code\u0026gt; (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/767\u0026quot;\u0026gt;#767\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/24b0b2857fef49be734b9ab72ce97c09bb25f5b9\u0026quot;\u0026gt;\u0026lt;code\u0026gt;24b0b28\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix: write to tempfile + rename to preserve mmap source (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/764\u0026quot;\u0026gt;#764\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/73132135947275c5dda135438e4c2e4bd70a2b10\u0026quot;\u0026gt;\u0026lt;code\u0026gt;7313213\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Update free-threading tests for Python 3.14 (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/699\u0026quot;\u0026gt;#699\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/e9091e13ec359e9e5b8b45413fcbe340444dde1c\u0026quot;\u0026gt;\u0026lt;code\u0026gt;e9091e1\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; feat: add \u0026lt;code\u0026gt;backend\u0026lt;/code\u0026gt; with pread file (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/760\u0026quot;\u0026gt;#760\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/1b0fe9c6acf3ac2ec7f4a0fd13bccfc0b65ce765\u0026quot;\u0026gt;\u0026lt;code\u0026gt;1b0fe9c\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix(ci): security audit slack message format (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/757\u0026quot;\u0026gt;#757\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/7efac22872a53ae3b30a15f8e786404322f10458\u0026quot;\u0026gt;\u0026lt;code\u0026gt;7efac22\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; [MPS] Fast load of the tensors (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/756\u0026quot;\u0026gt;#756\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Additional commits viewable in \u0026lt;a href=\u0026quot;https://github.com/huggingface/safetensors/compare/v0.7.0...v0.8.0\u0026quot;\u0026gt;compare view\u0026lt;/a\u0026gt;\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;/details\u0026gt;\n\n\u0026lt;br /\u0026gt;\u003c/code\u003e\u003c/pre\u003e\n\nUpdates `fastapi` from 0.128.0 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"htt...\n\n_Description has been truncated_","html_url":"https://github.com/yadongtan/vllm_study/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/yadongtan%2Fvllm_study/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"}},{"old_version":"1.26.0","new_version":"1.29.0","update_type":"minor","path":null,"pr_created_at":"2026-09-04T21:39:08.000Z","version_change":"1.26.0 → 1.29.0","issue":{"uuid":"5353318085","node_id":"PR_kwDOQji8y88AAAABCQ3zkA","number":450,"state":"open","title":"build(deps): Bump the pip-sidecar-patch-minor group across 1 directory with 17 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-04T21:39:08.000Z","updated_at":"2026-09-04T21:43:52.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): Bump","group_name":"pip-sidecar-patch-minor","update_count":17,"packages":[{"name":"kokoro-onnx","old_version":"0.5.0","new_version":"0.6.1","repository_url":"https://github.com/thewh1teagle/kokoro-onnx"},{"name":"onnxruntime","old_version":"1.28.0","new_version":"1.29.0","repository_url":"https://github.com/microsoft/onnxruntime"},{"name":"scipy","old_version":"1.18.0","new_version":"1.18.1","repository_url":"https://github.com/scipy/scipy"},{"name":"speechbrain","old_version":"1.1.0","new_version":"1.1.1","repository_url":"https://github.com/speechbrain/speechbrain"},{"name":"huggingface-hub","old_version":"1.26.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"ctranslate2","old_version":"4.8.1","new_version":"4.8.2","repository_url":"https://github.com/OpenNMT/CTranslate2"},{"name":"filelock","old_version":"3.32.2","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"idna","old_version":"3.18","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"joblib","old_version":"1.5.3","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"numpy","old_version":"2.5.1","new_version":"2.5.2","repository_url":"https://github.com/numpy/numpy"},{"name":"platformdirs","old_version":"4.11.0","new_version":"4.11.7","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"protobuf","old_version":"7.35.1","new_version":"7.36.1","repository_url":"https://github.com/protocolbuffers/protobuf"},{"name":"pygments","old_version":"2.20.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"regex","old_version":"2026.7.19","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"typer","old_version":"0.27.1","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"nvidia-cudnn-cu12","old_version":"9.24.0.43","new_version":"9.25.1.1"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-sidecar-patch-minor group with 17 updates in the /sidecar directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [kokoro-onnx](https://github.com/thewh1teagle/kokoro-onnx) | `0.5.0` | `0.6.1` |\n| [onnxruntime](https://github.com/microsoft/onnxruntime) | `1.28.0` | `1.29.0` |\n| [scipy](https://github.com/scipy/scipy) | `1.18.0` | `1.18.1` |\n| [speechbrain](https://github.com/speechbrain/speechbrain) | `1.1.0` | `1.1.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.26.0` | `1.29.0` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| [ctranslate2](https://github.com/OpenNMT/CTranslate2) | `4.8.1` | `4.8.2` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.32.2` | `3.32.5` |\n| [idna](https://github.com/kjd/idna) | `3.18` | `3.19` |\n| [joblib](https://github.com/joblib/joblib) | `1.5.3` | `1.6.0` |\n| [numpy](https://github.com/numpy/numpy) | `2.5.1` | `2.5.2` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.11.0` | `4.11.7` |\n| [protobuf](https://github.com/protocolbuffers/protobuf) | `7.35.1` | `7.36.1` |\n| [pygments](https://github.com/pygments/pygments) | `2.20.0` | `2.21.0` |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.7.19` | `2026.9.3` |\n| [typer](https://github.com/fastapi/typer) | `0.27.1` | `0.27.2` |\n| [nvidia-cudnn-cu12](https://developer.nvidia.com/cuda-zone) | `9.24.0.43` | `9.25.1.1` |\n\n\nUpdates `kokoro-onnx` from 0.5.0 to 0.6.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/thewh1teagle/kokoro-onnx/releases\"\u003ekokoro-onnx's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003emodel-files\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003ekokoro-v0_19.onnx\u003c/code\u003e: (310MB): optimized f32 version from \u003ca href=\"https://github.com/taylorchu/kokoro-onnx/releases/tag/v0.1.0\"\u003etaylorchu/kokoro-onnx\u003c/a\u003e\n\u003ccode\u003ekokoro-v0_19.fp16.onnx\u003c/code\u003e: (169MB): optimized f16 version from \u003ca href=\"https://github.com/taylorchu/kokoro-onnx/releases/tag/v0.1.0\"\u003etaylorchu/kokoro-onnx\u003c/a\u003e\n\u003ccode\u003ekokoro-v0_19.int8.onnx\u003c/code\u003e: (88MB): optimized int8 version from \u003ca href=\"https://github.com/taylorchu/kokoro-onnx/releases/tag/v0.1.0\"\u003etaylorchu/kokoro-onnx\u003c/a\u003e\n\u003ccode\u003evoices.bin\u003c/code\u003e: npz (numpy) key value pairs of style vectors contains the following voices (26):\u003c/p\u003e\n\u003cpre lang=\"console\"\u003e\u003ccode\u003eaf_alloy, af_aoede, af_bella, af_jessica, af_kore, af_nicole, af_nova, af_river, af_sarah, af_sky, am_adam, am_echo, am_eric, am_fenrir, am_liam, am_michael, am_onyx, am_puck, bf_alice, bf_emma, bf_isabella, bf_lily, bm_daniel, bm_fable, bm_george, bm_lewis\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/thewh1teagle/kokoro-onnx/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `onnxruntime` from 1.28.0 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/microsoft/onnxruntime/releases\"\u003eonnxruntime's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eONNX Runtime v1.29.0\u003c/h2\u003e\n\u003ch2\u003eAnnouncements \u0026amp; Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eonnxruntime-web has announced the deprecation of WebGL and JSEP. The native WebGPU EP is the recommended path going forward. See the deprecation and migration plans for details (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29716\"\u003e#29716\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31683\"\u003e#31683\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003ePOSIX telemetry is now available on Linux, macOS, Android, and iOS when ONNX Runtime is built with telemetry enabled. It does not change the public ABI, WebAssembly remains telemetry-free, and setting \u003ccode\u003eORT_DISABLE_TELEMETRY=1\u003c/code\u003e before initialization disables non-Windows telemetry for the process (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/27379\"\u003e#27379\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29872\"\u003e#29872\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eThe unused internal \u003ccode\u003eonnxruntime/python/tools/tensorrt\u003c/code\u003e dashboard tooling was removed. This does not affect the TensorRT Execution Provider APIs (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29395\"\u003e#29395\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSecurity Fixes\u003c/h2\u003e\n\u003ch3\u003ePath, bounds, and input validation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a path traversal vulnerability in TensorRT and NvTensorRTRTX engine refitting by making external-data path validation unconditional (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29396\"\u003e#29396\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eValidated the CPU MoE \u003ccode\u003ek\u003c/code\u003e attribute against the number of experts and fixed a CPU \u003ccode\u003eTensorScatter\u003c/code\u003e security issue (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29907\"\u003e#29907\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29916\"\u003e#29916\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded missing rank, shape, and parameter validation for pooling, LSTM and DynamicQuantizeLSTM, Sampling, FeatureVectorizer, SkipLayerNorm, QLinearConv, Whisper decoding, RNN activations, GridSample, contrib \u003ccode\u003eRange\u003c/code\u003e, and \u003ccode\u003eCropAndResize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29254\"\u003e#29254\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29255\"\u003e#29255\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29265\"\u003e#29265\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29579\"\u003e#29579\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29595\"\u003e#29595\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29605\"\u003e#29605\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29871\"\u003e#29871\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31636\"\u003e#31636\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31671\"\u003e#31671\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31675\"\u003e#31675\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31676\"\u003e#31676\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31684\"\u003e#31684\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eHardened CUDA indexing and buffer handling in GridSample, transpose, GatherBlockQuantized, InstanceNormalization, LayerNorm/RMSNorm, BeamSearch, DeformConv, AveragePool, and MaxPool (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29581\"\u003e#29581\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29631\"\u003e#29631\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29638\"\u003e#29638\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31640\"\u003e#31640\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31642\"\u003e#31642\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31644\"\u003e#31644\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31645\"\u003e#31645\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31647\"\u003e#31647\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31650\"\u003e#31650\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed packed sub-byte tensor over-copying in \u003ccode\u003eOrtApi::GetValue\u003c/code\u003e and validated DML constant tensor byte sizes (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29157\"\u003e#29157\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31665\"\u003e#31665\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSupply chain and tooling\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated npm lockfiles, refreshed the Next.js end-to-end fixture lockfile for security advisories, and upgraded \u003ccode\u003eadm-zip\u003c/code\u003e for \u003ccode\u003eonnxruntime-node\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29827\"\u003e#29827\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29926\"\u003e#29926\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31192\"\u003e#31192\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Features\u003c/h2\u003e\n\u003ch3\u003eCore APIs \u0026amp; Runtime\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDefault intra-op and inter-op thread-pool sizes can now be set with \u003ccode\u003eORT_INTRA_OP_NUM_THREADS\u003c/code\u003e and \u003ccode\u003eORT_INTER_OP_NUM_THREADS\u003c/code\u003e. Explicit thread settings still take precedence, and \u003ccode\u003e0\u003c/code\u003e preserves machine-sized defaults (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29688\"\u003e#29688\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded weightless-model support for all initializer types, allowed zero-input \u003ccode\u003eEpContext\u003c/code\u003e nodes, and wired maximum-shape inference into workspace estimation (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29607\"\u003e#29607\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29799\"\u003e#29799\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31613\"\u003e#31613\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded ONNX-domain support for rotary embedding and a fused \u003ccode\u003eMRotaryEmbedding\u003c/code\u003e contrib operator for Qwen mRoPE variants (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29261\"\u003e#29261\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31728\"\u003e#31728\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded multi-shape profiling to \u003ccode\u003eonnxruntime_perf_test\u003c/code\u003e through \u003ccode\u003e--data_shape\u003c/code\u003e, plus verbose graph-transformer tracing and broader inference-session error-path coverage (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29555\"\u003e#29555\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29558\"\u003e#29558\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29569\"\u003e#29569\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29571\"\u003e#29571\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eExecution Provider ABI \u0026amp; Plugin EPs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWebGPU now supports device-free compile-only sessions for offline graph transformation (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29681\"\u003e#29681\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eExpanded CUDA plugin EP packaging and testing, including Windows ARM64 package and size options, updated package outputs, and aligned architecture selections across Python, C API, TensorRT, Node.js, and plugin packages (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31635\"\u003e#31635\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31722\"\u003e#31722\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31992\"\u003e#31992\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eImproved plugin lifecycle handling by unloading failed EP library loads and fixing allocator-deleter lifetime (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29634\"\u003e#29634\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29770\"\u003e#29770\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eExecution Provider Updates\u003c/h2\u003e\n\u003ch3\u003eNVIDIA CUDA EP\u003c/h3\u003e\n\u003ch4\u003eAttention and decoding\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003ePagedAttention\u003c/code\u003e with quantized KV cache, XQA decode, MLA, QK-Norm, and head-sink support (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29912\"\u003e#29912\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eExtended quantized KV-cache support with attention sinks, independent and per-channel scales, sliding-window cache support, and a fused K/V dequantization launch (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29900\"\u003e#29900\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29904\"\u003e#29904\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31480\"\u003e#31480\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded a cuDNN SDPA decode tier to the standard ONNX \u003ccode\u003eAttention\u003c/code\u003e CUDA kernel and enabled cuDNN SDPA for contrib \u003ccode\u003eAttention\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29715\"\u003e#29715\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29717\"\u003e#29717\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eattention_bias\u003c/code\u003e support to the GroupQueryAttention unfused path and \u003ccode\u003estate_window\u003c/code\u003e support to LinearAttention and CausalConvWithState for MTP (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/29525\"\u003e#29525\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31157\"\u003e#31157\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed LinearAttention on GPUs with limited shared memory (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/pull/31982\"\u003e#31982\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eMoE and quantized GEMM\u003c/h4\u003e\n\u003c!-- 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/microsoft/onnxruntime/commit/2e2543fbe9fae542f921d47a72d21d5a4ef0b710\"\u003e\u003ccode\u003e2e2543f\u003c/code\u003e\u003c/a\u003e [CUDA] Update cuda archs in packaging pipelines (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31992\"\u003e#31992\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/9b174a42fcf8fb41d6f5f99f7102b8f650b5558f\"\u003e\u003ccode\u003e9b174a4\u003c/code\u003e\u003c/a\u003e [CUDA] Add GatedAdd contrib operator (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31835\"\u003e#31835\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/a29da16687ecb3ab665a1dbdadf3f958559f376b\"\u003e\u003ccode\u003ea29da16\u003c/code\u003e\u003c/a\u003e Validate SkipLayerNorm prepacked lengths (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31676\"\u003e#31676\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/831fa2fe2b89cfd59506927e6125015e8fca1ab6\"\u003e\u003ccode\u003e831fa2f\u003c/code\u003e\u003c/a\u003e Validate whisper beginning_timestamp_token_id bounds (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31636\"\u003e#31636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/3cee186058ef3712d420bbd3c2f2e4cc2feea773\"\u003e\u003ccode\u003e3cee186\u003c/code\u003e\u003c/a\u003e Handle RNN activation parameters safely (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31675\"\u003e#31675\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/37d79e38a5f513427a961c328b117f6fd2959e43\"\u003e\u003ccode\u003e37d79e3\u003c/code\u003e\u003c/a\u003e Harden CUDA fp16 transpose index math against int overflow (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31644\"\u003e#31644\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/45bdd4c47284b619549fbba6bc2012b6ed7f218a\"\u003e\u003ccode\u003e45bdd4c\u003c/code\u003e\u003c/a\u003e Validate QLinearConv bias size against output channels (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31684\"\u003e#31684\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/f5de4c394598e91846d01bed500d1253efeee73b\"\u003e\u003ccode\u003ef5de4c3\u003c/code\u003e\u003c/a\u003e Fix TfIdfVectorizer weight indexing semantics (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31649\"\u003e#31649\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/d3abafc3d78d6f4a0842b25de3a2d62eea6445cc\"\u003e\u003ccode\u003ed3abafc\u003c/code\u003e\u003c/a\u003e Validate FeatureVectorizer batch sizes (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31671\"\u003e#31671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/microsoft/onnxruntime/commit/1441b36d045d8ceb0d6b52793c181b2c86d8cfa7\"\u003e\u003ccode\u003e1441b36\u003c/code\u003e\u003c/a\u003e [WebGPU] Add MRotaryEmbedding support (\u003ca href=\"https://redirect.github.com/microsoft/onnxruntime/issues/31976\"\u003e#31976\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/microsoft/onnxruntime/compare/v1.28.0...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `scipy` from 1.18.0 to 1.18.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/scipy/scipy/releases\"\u003escipy's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eSciPy 1.18.1 Release Notes\u003c/h1\u003e\n\u003cp\u003eSciPy \u003ccode\u003e1.18.1\u003c/code\u003e is a bug-fix release with no new features\ncompared to \u003ccode\u003e1.18.0\u003c/code\u003e. This release includes binaries on\nPyPI for Python \u003ccode\u003e3.15\u003c/code\u003e, and the minimum required version\nof the GCC toolchain has been increased to \u003ccode\u003e10.3.0\u003c/code\u003e.\u003c/p\u003e\n\u003ch1\u003eAuthors\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eName (commits)\u003c/li\u003e\n\u003cli\u003eWasim Akram (2) +\u003c/li\u003e\n\u003cli\u003eJake Bowhay (1)\u003c/li\u003e\n\u003cli\u003eMichael Bratsch (1)\u003c/li\u003e\n\u003cli\u003eDietrich Brunn (1)\u003c/li\u003e\n\u003cli\u003eEvgeni Burovski (1)\u003c/li\u003e\n\u003cli\u003eAadya Chinubhai (1)\u003c/li\u003e\n\u003cli\u003eLucas Colley (3)\u003c/li\u003e\n\u003cli\u003eTekin Ertekin (1) +\u003c/li\u003e\n\u003cli\u003eFuyugithub (2) +\u003c/li\u003e\n\u003cli\u003eRalf Gommers (11)\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu (1)\u003c/li\u003e\n\u003cli\u003eIjtihed Kilani (1) +\u003c/li\u003e\n\u003cli\u003eAndrew Nelson (2)\u003c/li\u003e\n\u003cli\u003eIlhan Polat (1)\u003c/li\u003e\n\u003cli\u003eTyler Reddy (39)\u003c/li\u003e\n\u003cli\u003eromao05 (1) +\u003c/li\u003e\n\u003cli\u003eMichael Simacek (1) +\u003c/li\u003e\n\u003cli\u003eJacob Vanderplas (2)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eA total of 18 people contributed to this release.\nPeople with a \u0026quot;+\u0026quot; by their names contributed a patch for the first time.\nThis list of names is automatically generated, and may not be fully complete.\u003c/p\u003e\n\u003cp\u003eNote that the source and binary assets associated with this release were published to PyPI using \u003ca href=\"https://docs.pypi.org/trusted-publishers/\"\u003etrusted publishing\u003c/a\u003e, and so the trusted assets and their hashes are made available more securely at \u003ca href=\"https://pypi.org/project/scipy/1.18.1/\"\u003ehttps://pypi.org/project/scipy/1.18.1/\u003c/a\u003e rather than providing them here in a less secure manner.\u003c/p\u003e\n\u003cp\u003eA complete list of issues and pull requests associated with this release is available in the associated \u003ca href=\"https://github.com/scipy/scipy/releases/download/v1.18.1/README.txt\"\u003e\u003ccode\u003eREADME.txt\u003c/code\u003e\u003c/a\u003e.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/e4e854eaa8f18d807cd3496028e257e36caa93cc\"\u003e\u003ccode\u003ee4e854e\u003c/code\u003e\u003c/a\u003e REL: SciPy 1.18.1 rel commit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/3c8e5f83e56996ae853e34ff80d87a1ad0758186\"\u003e\u003ccode\u003e3c8e5f8\u003c/code\u003e\u003c/a\u003e BLD, MAINT: pythran bounds for \u003ccode\u003e1.18.1\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/scipy/scipy/issues/25978\"\u003e#25978\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/54c0f956656ba02daf9b1c48af9b089656c9d4cf\"\u003e\u003ccode\u003e54c0f95\u003c/code\u003e\u003c/a\u003e BLD, MAINT: pythran bounds for \u003ccode\u003e1.18.1\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/45a355d11e858ef76f5f2975f06f276115beb5ef\"\u003e\u003ccode\u003e45a355d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/scipy/scipy/issues/25884\"\u003e#25884\u003c/a\u003e from tylerjereddy/treddy_backports_1.18.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/a717e28c89e40c22edabcb8d64dd41d537f63683\"\u003e\u003ccode\u003ea717e28\u003c/code\u003e\u003c/a\u003e DOC: PR 25884 revisions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/bb489c02a6b5e094646609051936128265e12692\"\u003e\u003ccode\u003ebb489c0\u003c/code\u003e\u003c/a\u003e DOC: PR 25884 revisions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/09bca241fe2f4f2f23b5a3f43a285a7a2c79fe26\"\u003e\u003ccode\u003e09bca24\u003c/code\u003e\u003c/a\u003e BLD: package: pin meson on win-64 to avoid clang-cl bug (\u003ca href=\"https://redirect.github.com/scipy/scipy/issues/25913\"\u003e#25913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/095fe563cc65e121cea2493c1f1ad22018b5e25e\"\u003e\u003ccode\u003e095fe56\u003c/code\u003e\u003c/a\u003e DOC, BLD: PR 25884 revisions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/e66ea6414cbd718fe86751dcd23533b44f19588a\"\u003e\u003ccode\u003ee66ea64\u003c/code\u003e\u003c/a\u003e DOC: update minimum GCC version in toolchain roadmap\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scipy/scipy/commit/c0216532f619338e75842b7802b52c128c40e94f\"\u003e\u003ccode\u003ec021653\u003c/code\u003e\u003c/a\u003e TST: tolerance bumps and skips on 32-bit platforms\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/scipy/scipy/compare/v1.18.0...v1.18.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `speechbrain` from 1.1.0 to 1.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/speechbrain/speechbrain/releases\"\u003espeechbrain's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.1.1\u003c/h2\u003e\n\u003ch2\u003eRecipes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/da704dd9fd710df5c6c93ea2d31a028837d93d85\"\u003eda704dd\u003c/a\u003e]: FocalCodec-Stream [ICASSP 2026] (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3050\"\u003e#3050\u003c/a\u003e) (Luca Della Libera) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3050\"\u003e#3050\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix incorrect parameter description in load_data_json (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3053\"\u003e#3053\u003c/a\u003e) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3053\"\u003e#3053\u003c/a\u003e (\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/2827a48d4b471d76b22a7e8c46ee5b94ae0f90ea\"\u003eBimochan raj kunwar\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/830d60112e70391c06d5956ef30c82b300af773b\"\u003e830d601\u003c/a\u003e]: add markdown files for agentic models (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3048\"\u003e#3048\u003c/a\u003e) (Adel Moumen) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3048\"\u003e#3048\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSecurity\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/22a616646a493871401461f80b2d5cf564cb2850\"\u003e22a6166\u003c/a\u003e]: Use safeloader to load checkpoint meta files (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3067\"\u003e#3067\u003c/a\u003e) (Peter Plantinga) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3067\"\u003e#3067\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBug Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003emel_spectogram should be mel_spectrogram (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3063\"\u003e#3063\u003c/a\u003e) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3063\"\u003e#3063\u003c/a\u003e (\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/2bafd45d6fb8eb4eb67f42533267a9df89a8986e\"\u003eAccess\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eWindows-incompatible python's inspect file guard in LazyModule (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3065\"\u003e#3065\u003c/a\u003e) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3065\"\u003e#3065\u003c/a\u003e (\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/3d6d2daed93f886405d4d81cb045521ccb7a0d2f\"\u003eNeed-an-AwP\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDecoder input tensor dimension error (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3049\"\u003e#3049\u003c/a\u003e) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3049\"\u003e#3049\u003c/a\u003e (\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/d4316ecab7cddb8fefcdc181a2fe6559a4dffd78\"\u003eParas\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/9c826ef3937bac885c8a6ca86c6889a30f256fb5\"\u003e9c826ef\u003c/a\u003e]: Add hooks to ensure saving of kmeans model works correctly (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3047\"\u003e#3047\u003c/a\u003e) (Peter Plantinga) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3047\"\u003e#3047\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/8a89ebad72af734b75bbd37565ae96a6819e146b\"\u003e8a89eba\u003c/a\u003e]: Fix device handling for MPS (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3055\"\u003e#3055\u003c/a\u003e) (flexthink) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3055\"\u003e#3055\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/d0d15bbb6578af683aa15c4214e0ac0c98108071\"\u003ed0d15bb\u003c/a\u003e]: Fix incorrect documented defaults for HF wrapper freeze/output_norm (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3060\"\u003e#3060\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3062\"\u003e#3062\u003c/a\u003e) (Deeksha Manjunath) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3062\"\u003e#3062\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/e5cb1f65b940634215650aa1171e0440d0808123\"\u003ee5cb1f6\u003c/a\u003e]: Fix \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3033\"\u003e#3033\u003c/a\u003e: Fix closure variable bug in classification_error (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3061\"\u003e#3061\u003c/a\u003e) (Nandana Dileep) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3061\"\u003e#3061\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/841e205321029dec56c0354cda51bd2c2c6c29eb\"\u003e841e205\u003c/a\u003e]: Fix LoRA adapter support for convolutional layers (fixes \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3056\"\u003e#3056\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3064\"\u003e#3064\u003c/a\u003e) (oly) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3064\"\u003e#3064\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/dff42eeb0cc5d5fd5fcd648a9d5fc162f7cd1fea\"\u003edff42ee\u003c/a\u003e]: fix float columns being converted to string in from_csv (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3043\"\u003e#3043\u003c/a\u003e) (Novikov Kirill) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3043\"\u003e#3043\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/d9ee175897cbd31593456098c7c33b55b53d0379\"\u003ed9ee175\u003c/a\u003e]: Fix LengthsCapable containers dropping lengths for wav_lens-named layers (fixes \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/2986\"\u003e#2986\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3068\"\u003e#3068\u003c/a\u003e) (oly) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/3068\"\u003e#3068\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/825d024659ec6d2b35f6a7206825de4b69d53404\"\u003e825d024\u003c/a\u003e]: Fixed TransformerST bug with ASR masks (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/2984\"\u003e#2984\u003c/a\u003e) (Filip Gębala) \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/pull/2984\"\u003e#2984\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/speechbrain/speechbrain/commit/89ead74d163463d30c62329a09cfdb4c54f5abc1\"\u003e\u003ccode\u003e89ead74\u003c/code\u003e\u003c/a\u003e Update version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/1fbb135f303d9fc6627d9a839ef9a23d2f0d1fe0\"\u003e\u003ccode\u003e1fbb135\u003c/code\u003e\u003c/a\u003e Fix ruff errors from merged PRs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/825d024659ec6d2b35f6a7206825de4b69d53404\"\u003e\u003ccode\u003e825d024\u003c/code\u003e\u003c/a\u003e Fixed TransformerST bug with ASR masks (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/2984\"\u003e#2984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/830d60112e70391c06d5956ef30c82b300af773b\"\u003e\u003ccode\u003e830d601\u003c/code\u003e\u003c/a\u003e add markdown files for agentic models (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3048\"\u003e#3048\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/d9ee175897cbd31593456098c7c33b55b53d0379\"\u003e\u003ccode\u003ed9ee175\u003c/code\u003e\u003c/a\u003e Fix LengthsCapable containers dropping lengths for wav_lens-named layers (fix...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/dff42eeb0cc5d5fd5fcd648a9d5fc162f7cd1fea\"\u003e\u003ccode\u003edff42ee\u003c/code\u003e\u003c/a\u003e fix float columns being converted to string in from_csv (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3043\"\u003e#3043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/e400a03a7036bece22a883158f762cbe6051fc01\"\u003e\u003ccode\u003ee400a03\u003c/code\u003e\u003c/a\u003e Fix ruff errors from merged PRs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/d4316ecab7cddb8fefcdc181a2fe6559a4dffd78\"\u003e\u003ccode\u003ed4316ec\u003c/code\u003e\u003c/a\u003e fix: Decoder input tensor dimension error (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3049\"\u003e#3049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/841e205321029dec56c0354cda51bd2c2c6c29eb\"\u003e\u003ccode\u003e841e205\u003c/code\u003e\u003c/a\u003e Fix LoRA adapter support for convolutional layers (fixes \u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3056\"\u003e#3056\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3064\"\u003e#3064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/speechbrain/speechbrain/commit/3d6d2daed93f886405d4d81cb045521ccb7a0d2f\"\u003e\u003ccode\u003e3d6d2da\u003c/code\u003e\u003c/a\u003e fix: Windows-incompatible python's inspect file guard in LazyModule (\u003ca href=\"https://redirect.github.com/speechbrain/speechbrain/issues/3065\"\u003e#3065\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/speechbrain/speechbrain/compare/v1.1.0...v1.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.26.0 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.26.0...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `click` from 8.4.2 to 8.5.0\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.5.0\u003c/h2\u003e\n\u003cp\u003eThis is the Click 8.5.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.5.0/\"\u003ehttps://pypi.org/project/click/8.5.0/\u003c/a\u003e\nChanges:  \u003ca href=\"https://click.palletsprojects.com/page/changes/#version-8-5-0\"\u003ehttps://click.palletsprojects.com/page/changes/#version-8-5-0\u003c/a\u003e\nMilestone \u003ca href=\"https://github.com/pallets/click/milestone/33\"\u003ehttps://github.com/pallets/click/milestone/33\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd built-in shell completion support for PowerShell (Windows PowerShell\n5.1+ and pwsh 7+) alongside the existing \u003ccode\u003ebash\u003c/code\u003e, \u003ccode\u003ezsh\u003c/code\u003e, and \u003ccode\u003efish\u003c/code\u003e\ncompleters. Use \u003ccode\u003e_FOO_BAR_COMPLETE=powershell_source foo-bar\u003c/code\u003e to generate\nthe completion script. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2672\"\u003e#2672\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3637\"\u003e#3637\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupported versions of Windows enable ANSI terminal styles by default.\nColorama is no longer a dependency and is not used. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2986\"\u003e#2986\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3505\"\u003e#3505\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e{class}\u003ccode\u003eArgument\u003c/code\u003e accepts a \u003ccode\u003ehelp\u003c/code\u003e parameter, and help output includes\na \u003ccode\u003ePositional arguments\u003c/code\u003e section when argument help is available. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2983\"\u003e#2983\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3473\"\u003e#3473\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003econfirm()\u003c/code\u003e and \u003ccode\u003eprompt()\u003c/code\u003e strip ANSI color and style codes from the\nprompt when the output stream does not support them, matching \u003ccode\u003eecho()\u003c/code\u003e.\nThis stripping was lost in \u003ccode\u003e8.4.0\u003c/code\u003e when \u003ca href=\"https://redirect.github.com/pallets/click/issues/2969\"\u003e#2969\u003c/a\u003e began writing the\nprompt with \u003ccode\u003einput()\u003c/code\u003e directly. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3572\"\u003e#3572\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3653\"\u003e#3653\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e{class}\u003ccode\u003ePath\u003c/code\u003e with \u003ccode\u003eallow_dash=True\u003c/code\u003e no longer triggers a \u003ccode\u003eBytesWarning\u003c/code\u003e,\nan error under \u003ccode\u003epython -bb\u003c/code\u003e, when checking a value against the \u003ccode\u003e-\u003c/code\u003e\nconvention. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2877\"\u003e#2877\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3642\"\u003e#3642\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd {func}\u003ccode\u003ecustom_version_option\u003c/code\u003e, a \u003ccode\u003e--version\u003c/code\u003e option whose output is\nproduced by a callback, covering cases {func}\u003ccode\u003eversion_option\u003c/code\u003e intentionally\ndoes not. The feature set of {func}\u003ccode\u003eversion_option\u003c/code\u003e is now frozen; see\n[discussion \u003ca href=\"https://redirect.github.com/pallets/click/issues/3527\"\u003e#3527\u003c/a\u003e](\u003ca href=\"https://github.com/pallets/click/discussions/3527\"\u003ehttps://github.com/pallets/click/discussions/3527\u003c/a\u003e). \u003ca href=\"https://redirect.github.com/pallets/click/issues/3581\"\u003e#3581\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003estyle()\u003c/code\u003e and \u003ccode\u003esecho()\u003c/code\u003e no longer silently drop the 256-color index \u003ccode\u003e0\u003c/code\u003e\n(black) passed as \u003ccode\u003efg\u003c/code\u003e or \u003ccode\u003ebg\u003c/code\u003e, and now validate color arguments. Invalid\ncolors raise a \u003ccode\u003eValueError\u003c/code\u003e instead of a \u003ccode\u003eTypeError\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3677\"\u003e#3677\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eThe automatic help option stores its value under the reserved name\n\u003ccode\u003e_click_default_help\u003c/code\u003e instead of \u003ccode\u003ehelp\u003c/code\u003e, so a parameter named \u003ccode\u003ehelp\u003c/code\u003e no\nlonger breaks parsing. The new name is visible in\n{meth}\u003ccode\u003eCommand.to_info_dict\u003c/code\u003e output. Parameters that overwrite each other's\nvalue trigger a warning: an argument sharing its name with another\nparameter, or any parameter claiming the reserved name. Options may still\nshare a name to compete for the same value (feature switches).\n\u003ca href=\"https://redirect.github.com/pallets/click/issues/2819\"\u003e#2819\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3678\"\u003e#3678\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eunstyle\u003c/code\u003e and the ANSI handling behind help-text wrapping now strip the full\nCSI escape-sequence grammar. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3681\"\u003e#3681\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStreamline \u003ccode\u003eOption\u003c/code\u003e flag handling: the flag-kind, type, lazy-default and\nvalidation steps in \u003ccode\u003eOption.__init__\u003c/code\u003e move into focused helpers, and\n\u003ccode\u003eflag_value\u003c/code\u003e and \u003ccode\u003edefault\u003c/code\u003e keep their unset sentinel at construction\n(resolved lazily on read) so \u003ccode\u003eis UNSET\u003c/code\u003e reliably tells a user-supplied value\nfrom an auto-derived one. Runtime behavior is unchanged, but\n{meth}\u003ccode\u003eParameter.to_info_dict\u003c/code\u003e now resolves \u003ccode\u003edefault=True\u003c/code\u003e on a feature\nswitch to its \u003ccode\u003eflag_value\u003c/code\u003e, matching what the function receives at call\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/click/blob/main/CHANGES.md\"\u003eclick's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 8.5.0\u003c/h2\u003e\n\u003cp\u003eReleased 2026-08-24\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd built-in shell completion support for PowerShell (Windows PowerShell\n5.1+ and pwsh 7+) alongside the existing \u003ccode\u003ebash\u003c/code\u003e, \u003ccode\u003ezsh\u003c/code\u003e, and \u003ccode\u003efish\u003c/code\u003e\ncompleters. Use \u003ccode\u003e_FOO_BAR_COMPLETE=powershell_source foo-bar\u003c/code\u003e to generate\nthe completion script. {issue}\u003ccode\u003e2672\u003c/code\u003e {pr}\u003ccode\u003e3637\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eSupported versions of Windows enable ANSI terminal styles by default.\nColorama is no longer a dependency and is not used. {issue}\u003ccode\u003e2986\u003c/code\u003e {pr}\u003ccode\u003e3505\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e{class}\u003ccode\u003eArgument\u003c/code\u003e accepts a \u003ccode\u003ehelp\u003c/code\u003e parameter, and help output includes\na \u003ccode\u003ePositional arguments\u003c/code\u003e section when argument help is available. {issue}\u003ccode\u003e2983\u003c/code\u003e {pr}\u003ccode\u003e3473\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003econfirm()\u003c/code\u003e and \u003ccode\u003eprompt()\u003c/code\u003e strip ANSI color and style codes from the\nprompt when the output stream does not support them, matching \u003ccode\u003eecho()\u003c/code\u003e.\nThis stripping was lost in \u003ccode\u003e8.4.0\u003c/code\u003e when {pr}\u003ccode\u003e2969\u003c/code\u003e began writing the\nprompt with \u003ccode\u003einput()\u003c/code\u003e directly. {issue}\u003ccode\u003e3572\u003c/code\u003e {pr}\u003ccode\u003e3653\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFix test failures when using pytest \u0026gt;= 9.1. {pr}\u003ccode\u003e3656\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e{class}\u003ccode\u003ePath\u003c/code\u003e with \u003ccode\u003eallow_dash=True\u003c/code\u003e no longer triggers a \u003ccode\u003eBytesWarning\u003c/code\u003e,\nan error under \u003ccode\u003epython -bb\u003c/code\u003e, when checking a value against the \u003ccode\u003e-\u003c/code\u003e\nconvention. {issue}\u003ccode\u003e2877\u003c/code\u003e {pr}\u003ccode\u003e3642\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd {func}\u003ccode\u003ecustom_version_option\u003c/code\u003e, a \u003ccode\u003e--version\u003c/code\u003e option whose output is\nproduced by a callback, covering cases {func}\u003ccode\u003eversion_option\u003c/code\u003e intentionally\ndoes not. The feature set of {func}\u003ccode\u003eversion_option\u003c/code\u003e is now frozen; see\n[discussion \u003ca href=\"https://redirect.github.com/pallets/click/issues/3527\"\u003e#3527\u003c/a\u003e](\u003ca href=\"https://github.com/pallets/click/discussions/3527\"\u003ehttps://github.com/pallets/click/discussions/3527\u003c/a\u003e). {pr}\u003ccode\u003e3581\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003estyle()\u003c/code\u003e and \u003ccode\u003esecho()\u003c/code\u003e no longer silently drop the 256-color index \u003ccode\u003e0\u003c/code\u003e\n(black) passed as \u003ccode\u003efg\u003c/code\u003e or \u003ccode\u003ebg\u003c/code\u003e, and now validate color arguments. Invalid\ncolors raise a \u003ccode\u003eValueError\u003c/code\u003e instead of a \u003ccode\u003eTypeError\u003c/code\u003e. {pr}\u003ccode\u003e3677\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe automatic help option stores its value under the reserved name\n\u003ccode\u003e_click_default_help\u003c/code\u003e instead of \u003ccode\u003ehelp\u003c/code\u003e, so a parameter named \u003ccode\u003ehelp\u003c/code\u003e no\nlonger breaks parsing. The new name is visible in\n{meth}\u003ccode\u003eCommand.to_info_dict\u003c/code\u003e output. Parameters that overwrite each other's\nvalue trigger a warning: an argument sharing its name with another\nparameter, or any parameter claiming the reserved name. Options may still\nshare a name to compete for the same value (feature switches).\n{issue}\u003ccode\u003e2819\u003c/code\u003e {pr}\u003ccode\u003e3678\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eunstyle\u003c/code\u003e and the ANSI handling behind help-text wrapping now strip the full\nCSI escape-sequence grammar. {pr}\u003ccode\u003e3681\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eStreamline \u003ccode\u003eOption\u003c/code\u003e flag handling: the flag-kind, type, lazy-default and\nvalidation steps in \u003ccode\u003eOption.__init__\u003c/code\u003e move into focused helpers, and\n\u003ccode\u003eflag_value\u003c/code\u003e and \u003ccode\u003edefault\u003c/code\u003e keep their unset sentinel at construction\n(resolved lazily on read) so \u003ccode\u003eis UNSET\u003c/code\u003e reliably tells a user-supplied value\nfrom an auto-derived one. Runtime behavior is unchanged, but\n{meth}\u003ccode\u003eParameter.to_info_dict\u003c/code\u003e now resolves \u003ccode\u003edefault=True\u003c/code\u003e on a feature\nswitch to its \u003ccode\u003eflag_value\u003c/code\u003e, matching what the function receives at call\ntime. {pr}\u003ccode\u003e3641\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e{func}\u003ccode\u003eget_binary_stream\u003c/code\u003e and {func}\u003ccode\u003eget_text_stream\u003c/code\u003e are deprecated and\nwill be removed in Click 9.0. {issue}\u003ccode\u003e3481\u003c/code\u003e {pr}\u003ccode\u003e3695\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe following \u003ccode\u003eclick.utils\u003c/code\u003e names were never intentionally public and are\nnow private (\u003ccode\u003e_\u003c/code\u003e-prefixed). The old names remain available with a\n\u003ccode\u003eDeprecationWarning\u003c/code\u003e until Click 9.0: \u003ccode\u003eLazyFile\u003c/code\u003e, \u003ccode\u003eKeepOpenFile\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/pallets/click/commit/8b19813f2bfca99f1018a587a8cf54fc959f2e5d\"\u003e\u003ccode\u003e8b19813\u003c/code\u003e\u003c/a\u003e Release version 8.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/2c8cd3ac958a7eb316d67f2d316c27086c4c0369\"\u003e\u003ccode\u003e2c8cd3a\u003c/code\u003e\u003c/a\u003e Add FAQ entry about \u003ccode\u003eUnicodeEncodeError\u003c/code\u003e on Windows (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3778\"\u003e#3778\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/131c86aadddfa5cb6dca8339c9d6294c4eacb8ac\"\u003e\u003ccode\u003e131c86a\u003c/code\u003e\u003c/a\u003e Add FAQ entry about \u003ccode\u003eUnicodeEncodeError\u003c/code\u003e on Windows\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/e1fd5946ab26aaf372009eaff1acf947140b40fb\"\u003e\u003ccode\u003ee1fd594\u003c/code\u003e\u003c/a\u003e Add support of \u003ccode\u003epathlib.Path\u003c/code\u003e to \u003ccode\u003eedit\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3781\"\u003e#3781\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/a1d87858abd77fa8e3ffc204670ccd75b96c4781\"\u003e\u003ccode\u003ea1d8785\u003c/code\u003e\u003c/a\u003e Add support of \u003ccode\u003epathlib.Path\u003c/code\u003e to \u003ccode\u003eedit\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/2103e157683c5e4cadc8ee1838df526a54bde9a4\"\u003e\u003ccode\u003e2103e15\u003c/code\u003e\u003c/a\u003e Forward all user's parameters set in \u003ccode\u003ePAGER\u003c/code\u003e and improve flag detection (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3777\"\u003e#3777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/a6256bfb5971d5e58585fe7b6c656134e1ade5a4\"\u003e\u003ccode\u003ea6256bf\u003c/code\u003e\u003c/a\u003e Forwards all user's parameters set in \u003ccode\u003ePAGER\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/61b69e967e525bd502f5bf42def4d551e761fe0e\"\u003e\u003ccode\u003e61b69e9\u003c/code\u003e\u003c/a\u003e Resolve the pager command once, in \u003ccode\u003e_pager_contextmanager\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3776\"\u003e#3776\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/9835b0f7612d1b1ea180a975fd6d24cf16791ba8\"\u003e\u003ccode\u003e9835b0f\u003c/code\u003e\u003c/a\u003e Resolve the pager command once, in \u003ccode\u003e_pager_contextmanager\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/f36d58bbd7f188178de2d4fe1d0292c510375ca7\"\u003e\u003ccode\u003ef36d58b\u003c/code\u003e\u003c/a\u003e Refactor pager stream handling (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3767\"\u003e#3767\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets/click/compare/8.4.2...8.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ctranslate2` from 4.8.1 to 4.8.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/OpenNMT/CTranslate2/releases\"\u003ectranslate2's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.8.2\u003c/h2\u003e\n\u003ch3\u003eFixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImport Python converters and specs lazily to avoid loading torch for inference-only use (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2080\"\u003e#2080\u003c/a\u003e) by \u003ca href=\"https://github.com/Anai-Guo\"\u003e\u003ccode\u003e@​Anai-Guo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix out-of-bounds reads in StorageView index validation (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2073\"\u003e#2073\u003c/a\u003e) by \u003ca href=\"https://github.com/jordimas\"\u003e\u003ccode\u003e@​jordimas\u003c/code\u003e\u003c/a\u003e, reported by Nathan Keys (Halo Forge Labs)\u003c/li\u003e\n\u003cli\u003eUpdate cxxopts to v3.3.1 for GCC 15 compatibility (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2084\"\u003e#2084\u003c/a\u003e) by \u003ca href=\"https://github.com/bekard\"\u003e\u003ccode\u003e@​bekard\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eValidate model variable sizes before allocation (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2091\"\u003e#2091\u003c/a\u003e) by \u003ca href=\"https://github.com/jordimas\"\u003e\u003ccode\u003e@​jordimas\u003c/code\u003e\u003c/a\u003e, reported by Hyeonbell\u003c/li\u003e\n\u003cli\u003eCheck StorageView reserve byte size before allocation (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2094\"\u003e#2094\u003c/a\u003e) by \u003ca href=\"https://github.com/infinityscroll\"\u003e\u003ccode\u003e@​infinityscroll\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove the runtime dependency on setuptools (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2096\"\u003e#2096\u003c/a\u003e) by \u003ca href=\"https://github.com/Ravencentric\"\u003e\u003ccode\u003e@​Ravencentric\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/OpenNMT/CTranslate2/blob/master/CHANGELOG.md\"\u003ectranslate2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/OpenNMT/CTranslate2/releases/tag/v4.8.2\"\u003ev4.8.2\u003c/a\u003e (2026-08-31)\u003c/h2\u003e\n\u003ch3\u003eFixes and improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImport Python converters and specs lazily to avoid loading torch for inference-only use (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2080\"\u003e#2080\u003c/a\u003e) by \u003ca href=\"https://github.com/Anai-Guo\"\u003e\u003ccode\u003e@​Anai-Guo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix out-of-bounds reads in StorageView index validation (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2073\"\u003e#2073\u003c/a\u003e) by \u003ca href=\"https://github.com/jordimas\"\u003e\u003ccode\u003e@​jordimas\u003c/code\u003e\u003c/a\u003e, reported by Nathan Keys (Halo Forge Labs)\u003c/li\u003e\n\u003cli\u003eUpdate cxxopts to v3.3.1 for GCC 15 compatibility (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2084\"\u003e#2084\u003c/a\u003e) by \u003ca href=\"https://github.com/bekard\"\u003e\u003ccode\u003e@​bekard\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eValidate model variable sizes before allocation (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2091\"\u003e#2091\u003c/a\u003e) by \u003ca href=\"https://github.com/jordimas\"\u003e\u003ccode\u003e@​jordimas\u003c/code\u003e\u003c/a\u003e, reported by Hyeonbell\u003c/li\u003e\n\u003cli\u003eCheck StorageView reserve byte size before allocation (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2094\"\u003e#2094\u003c/a\u003e) by \u003ca href=\"https://github.com/infinityscroll\"\u003e\u003ccode\u003e@​infinityscroll\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove the runtime dependency on setuptools (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2096\"\u003e#2096\u003c/a\u003e) by \u003ca href=\"https://github.com/Ravencentric\"\u003e\u003ccode\u003e@​Ravencentric\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/OpenNMT/CTranslate2/commit/d44d2d069eb88c7b7804da864c10c201501cb4a9\"\u003e\u003ccode\u003ed44d2d0\u003c/code\u003e\u003c/a\u003e Version 4.8.2 with CHANGELOG (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2095\"\u003e#2095\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OpenNMT/CTranslate2/commit/f842545c930a6a5de020c58e34a83b2112f397a7\"\u003e\u003ccode\u003ef842545\u003c/code\u003e\u003c/a\u003e remove runtime dependency on setuptools (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2096\"\u003e#2096\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OpenNMT/CTranslate2/commit/af0453f5704ae59a6615f4eaa3c0c1bae40a647c\"\u003e\u003ccode\u003eaf0453f\u003c/code\u003e\u003c/a\u003e Check StorageView reserve byte size before allocation (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2094\"\u003e#2094\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OpenNMT/CTranslate2/commit/0cc7ea3043875aa096cd4ac9a0ac9de846ac767e\"\u003e\u003ccode\u003e0cc7ea3\u003c/code\u003e\u003c/a\u003e Validate model variable sizes before allocation (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2091\"\u003e#2091\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OpenNMT/CTranslate2/commit/6419e4c1e22bac8185aa75b93a9e032aaba6f2f2\"\u003e\u003ccode\u003e6419e4c\u003c/code\u003e\u003c/a\u003e update cxxopts to v3.3.1 (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2084\"\u003e#2084\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OpenNMT/CTranslate2/commit/3c57ed1781ee4d88fbe7c3d62f22d96ea583077d\"\u003e\u003ccode\u003e3c57ed1\u003c/code\u003e\u003c/a\u003e fix(python): import converters and specs lazily so inference does not load to...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OpenNMT/CTranslate2/commit/a93c2bfb8af9c702f42f355f17a29952289d1d1f\"\u003e\u003ccode\u003ea93c2bf\u003c/code\u003e\u003c/a\u003e Check lower ranks in storage_view (\u003ca href=\"https://redirect.github.com/OpenNMT/CTranslate2/issues/2073\"\u003e#2073\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/OpenNMT/CTranslate2/compare/v4.8.1...v4.8.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `filelock` from 3.32.2 to 3.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/py-filelock/releases\"\u003efilelock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.32.5\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🧪 test(fork): report where a stalled fork stops by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/715\"\u003etox-dev/filelock#715\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📝 docs: say that mode is read-only in the thread-local section by \u003ca href=\"https://github.com/Gares95\"\u003e\u003ccode\u003e@​Gares95\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/716\"\u003etox-dev/filelock#716\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(lease): clear token after failed acquire by \u003ca href=\"https://github.com/lprnmns\"\u003e\u003ccode\u003e@​lprnmns\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/721\"\u003etox-dev/filelock#721\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/lprnmns\"\u003e\u003ccode\u003e@​lprnmns\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/721\"\u003etox-dev/filelock#721\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.32.4...3.32.5\"\u003ehttps://github.com/tox-dev/filelock/compare/3.32.4...3.32.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.32.4\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 fix: retry transient denials on open and claim read by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/705\"\u003etox-dev/filelock#705\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 test: deflake six scheduled-run failures by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/704\"\u003etox-dev/filelock#704\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 test: cover a reclaimed private record for real by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/706\"\u003etox-dev/filelock#706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 test(fork): fork once the event loop has closed by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/714\"\u003etox-dev/filelock#714\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 chore: batch dependency updates weekly on Tuesday by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/713\"\u003etox-dev/filelock#713\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eescape the hostname every marker publishes by \u003ca href=\"https://github.com/dxbjavid\"\u003e\u003ccode\u003e@​dxbjavid\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/709\"\u003etox-dev/filelock#709\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.32.3...3.32.4\"\u003ehttps://github.com/tox-dev/filelock/compare/3.32.3...3.32.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.32.3\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🧪 test(strict): deflake close-fault injections on graalpy by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/697\"\u003etox-dev/filelock#697\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📄 docs: publish llms.txt from the docs build by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/700\"\u003etox-dev/filelock#700\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(fork): survive audit events during interpreter shutdown by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/703\"\u003etox-dev/filelock#703\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.32.2...3.32.3\"\u003ehttps://github.com/tox-dev/filelock/compare/3.32.2...3.32.3\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/filelock/blob/main/docs/changelog.rst\"\u003efilelock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e###########\nChangelog\n###########\u003c/p\u003e\n\u003cp\u003e.. towncrier-draft-entries:: Unreleased\u003c/p\u003e\n\u003cp\u003e.. towncrier release notes start\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.5 (2026-08-31)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eSoftFileLease.token\u003c/code\u003e and \u003ccode\u003eAsyncSoftFileLease.token\u003c/code\u003e now read \u003ccode\u003eNone\u003c/code\u003e after a failed acquisition, so a contender\nturned away by a live holder no longer reports a token for a claim it never published. :pr:\u003ccode\u003e721\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eDocument that \u003ccode\u003emode\u003c/code\u003e has no setter: unlike \u003ccode\u003epoll_interval\u003c/code\u003e, \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003eblocking\u003c/code\u003e and \u003ccode\u003elifetime\u003c/code\u003e, it is fixed at construction and \u003ccode\u003elock.mode = ...\u003c/code\u003e raises \u003ccode\u003eAttributeError\u003c/code\u003e. :pr:\u003ccode\u003e716\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.4 (2026-08-23)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eStrictSoftFileLock\u003c/code\u003e always retries a claim read whose first attempt reports the claim as pending, so a first read\nthat itself outlasts the retry grace no longer fails closed on a claim it could have read. :pr:\u003ccode\u003e705\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eWindowsFileLock\u003c/code\u003e waits out a transient \u003ccode\u003eSTATUS_ACCESS_DENIED\u003c/code\u003e from \u003ccode\u003eNtCreateFile\u003c/code\u003e for up to half a second\nbefore raising \u003ccode\u003ePermissionError\u003c/code\u003e, since a peer unlinking the lock file as it releases can answer that for a moment; a\nreal denial still fails fast. :pr:\u003ccode\u003e705\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eEvery lock class now escapes the hostname it publishes, so a host whose \u003ccode\u003esocket.gethostname()\u003c/code\u003e carries a space, a\nnewline or a byte outside UTF-8 no longer writes a marker it reads back as malformed. Such a host used to lose a held\n\u003ccode\u003eSoftReadWriteLock\u003c/code\u003e read slot to a peer and could not take a write slot or a \u003ccode\u003eStrictSoftFileLock\u003c/code\u003e at all. :pr:\u003ccode\u003e709\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.3 (2026-08-13)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003eThe fork-safety audit hook no longer prints \u003ccode\u003eException ignored in audit hook\u003c/code\u003e with a \u003ccode\u003eTypeError\u003c/code\u003e when an audit\nevent fires during interpreter shutdown, after CPython has already cleared the module globals. :pr:\u003ccode\u003e701\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.2 (2026-07-29)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003eA \u003ccode\u003eSoftReadWriteLock\u003c/code\u003e or \u003ccode\u003eSoftFileLease\u003c/code\u003e acquire whose heartbeat thread fails to start now unlinks its marker and\nhands the claim back, instead of leaving an unrefreshed marker a peer takes while the caller believes it still holds\nthe lock. :pr:\u003ccode\u003e691\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.32.1 (2026-07-26)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003eCanceling an \u003ccode\u003eAsyncSoftReadWriteLock\u003c/code\u003e acquire now releases the claim instead of leaking a marker whose heartbeat\nwedges every contender. :pr:\u003ccode\u003e686\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/1585dfef9355a5c77d4a9498cc34d3a98056fdb9\"\u003e\u003ccode\u003e1585dfe\u003c/code\u003e\u003c/a\u003e Release 3.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/00177c32686e60bc5ef9875b5841867ea08d4558\"\u003e\u003ccode\u003e00177c3\u003c/code\u003e\u003c/a\u003e 🐛 fix(lease): clear token after failed acquire (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/721\"\u003e#721\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/5aeb9b6a5fe1e86dcb1c44a927aefffd607b17b0\"\u003e\u003ccode\u003e5aeb9b6\u003c/code\u003e\u003c/a\u003e 📝 docs: say that mode is read-only in the thread-local section (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/716\"\u003e#716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/2634dd1dcc597b319770df027491f16d07662952\"\u003e\u003ccode\u003e2634dd1\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/720\"\u003e#720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/37dccf0276f6db1520db9e3482fdf0446c14276e\"\u003e\u003ccode\u003e37dccf0\u003c/code\u003e\u003c/a\u003e 🧪 test(fork): report where a stalled fork stops (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/715\"\u003e#715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/cb493d6684ed5d2f923384633c86fef12e29bce2\"\u003e\u003ccode\u003ecb493d6\u003c/code\u003e\u003c/a\u003e Release 3.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/fe07a11a7133ddd104322eb79d3c59f966b4ba15\"\u003e\u003ccode\u003efe07a11\u003c/code\u003e\u003c/a\u003e escape the hostname every marker publishes (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/709\"\u003e#709\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/232732f49ed9d230802f527ad60b5d5ad1202a56\"\u003e\u003ccode\u003e232732f\u003c/code\u003e\u003c/a\u003e 🔧 chore: batch dependency updates weekly on Tuesday (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/713\"\u003e#713\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/2966eb51431ff8ac19eb2bec4e0b67c328437c48\"\u003e\u003ccode\u003e2966eb5\u003c/code\u003e\u003c/a\u003e 🧪 test(fork): fork once the event loop has closed (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/714\"\u003e#714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/61511ebc1cc5d40b28f8584f1078e63f2d63fb02\"\u003e\u003ccode\u003e61511eb\u003c/code\u003e\u003c/a\u003e build(deps): bump astral-sh/setup-uv from 10.0.0 to 10.0.1 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/712\"\u003e#712\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tox-dev/py-filelock/compare/3.32.2...3.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `idna` from 3.18 to 3.19\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kjd/idna/releases\"\u003eidna's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.19\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRestore the \u003ccode\u003estd3_rules\u003c/code\u003e option, which had no effect since changes\nto UTS \u003ca href=\"https://redirect.github.com/kjd/idna/issues/46\"\u003e#46\u003c/a\u003e processing in Unicode 16. Note that \u003ccode\u003euts46_remap()\u003c/code\u003e\ndefaults to enabling STD3 rules, so direct callers will see input\ncontaining non-LDH ASCII characters rejected again.\u003c/li\u003e\n\u003cli\u003ePerformance improvements to UTS \u003ca href=\"https://redirect.github.com/kjd/idna/issues/46\"\u003e#46\u003c/a\u003e mapping, particularly for\nASCII-only domains.\u003c/li\u003e\n\u003cli\u003eTest on free-threaded CPython with the GIL disabled and document\nthread safety.\u003c/li\u003e\n\u003cli\u003eExpose the Unicode version of the generated tables as\n\u003ccode\u003eidna.unicode_version\u003c/code\u003e, and show it in \u003ccode\u003eidna --version\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ecode\u003c/code\u003e, \u003ccode\u003etext\u003c/code\u003e, \u003ccode\u003ecodepoint\u003c/code\u003e and \u003ccode\u003eposition\u003c/code\u003e attributes to\n\u003ccode\u003eIDNAError\u003c/code\u003e so that the failed rule and the offending character can\nbe identified without parsing the exception message.\u003c/li\u003e\n\u003cli\u003eThe deprecated \u003ccode\u003etransitional\u003c/code\u003e argument to \u003ccode\u003eencode()\u003c/code\u003e and\n\u003ccode\u003euts46_remap()\u003c/code\u003e is now completely ignored, and gives a deprecation warning\nfor the latter.\u003c/li\u003e\n\u003cli\u003eReject A-labels that are not the canonical Punycode encoding of\ntheir U-label.\u003c/li\u003e\n\u003cli\u003eFix CONTEXTJ violations raising \u003ccode\u003eIDNAError\u003c/code\u003e instead of\n\u003ccode\u003eInvalidCodepointContext\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eConsistently raise \u003ccode\u003eIDNAError\u003c/code\u003e for empty labels and non-ASCII bytes\npassed to label helper functions and the incremental codec.\u003c/li\u003e\n\u003cli\u003eAdd property-based tests, extended fuzzing targets, coverage\nmeasurement, and CI checks that the data tables match the generator\noutput.\u003c/li\u003e\n\u003cli\u003eVarious code quality and tooling improvements.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to stefan6419846, LouieLuNZ, and Salvatore Corvaglia for\ncontributions to this release.\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/kjd/idna/blob/master/HISTORY.md\"\u003eidna's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.19 (2026-08-18)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRestore the \u003ccode\u003estd3_rules\u003c/code\u003e option, which had no effect since changes\nto UTS \u003ca href=\"https://redirect.github.com/kjd/idna/issues/46\"\u003e#46\u003c/a\u003e processing in Unicode 16. Note that \u003ccode\u003euts46_remap()\u003c/code\u003e\ndefaults to enabling STD3 rules, so direct callers will see input\ncontaining non-LDH ASCII characters rejected again.\u003c/li\u003e\n\u003cli\u003ePerformance improvements to UTS \u003ca href=\"https://redirect.github.com/kjd/idna/issues/46\"\u003e#46\u003c/a\u003e mapping, particularly for\nASCII-only domains.\u003c/li\u003e\n\u003cli\u003eTest on free-threaded CPython with the GIL disabled and document\nthread safety.\u003c/li\u003e\n\u003cli\u003eExpose the Unicode version of the generated tables as\n\u003ccode\u003eidna.unicode_version\u003c/code\u003e, and show it in \u003ccode\u003eidna --version\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003ecode\u003c/code\u003e, \u003ccode\u003etext\u003c/code\u003e, \u003ccode\u003ecodepoint\u003c/code\u003e and \u003ccode\u003eposition\u003c/code\u003e attributes to\n\u003ccode\u003eIDNAError\u003c/code\u003e so that the failed rule and the offending character can\nbe identified without parsing the exception message.\u003c/li\u003e\n\u003cli\u003eThe deprecated \u003ccode\u003etransiti...\n\n_Description has been truncated_","html_url":"https://github.com/Prekzursil/Reframe/pull/450","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Prekzursil%2FReframe/issues/450","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/450/packages"}},{"old_version":"1.27.0","new_version":"1.29.0","update_type":"minor","path":null,"pr_created_at":"2026-09-04T19:03:51.000Z","version_change":"1.27.0 → 1.29.0","issue":{"uuid":"5351977869","node_id":"PR_kwDOUGq5rs8AAAABCPyjvw","number":15,"state":"open","title":"Bump the minor-update group across 1 directory with 184 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-04T19:03:51.000Z","updated_at":"2026-09-04T19:04:04.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-update","update_count":184,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"transformers","old_version":"5.15.0","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"huggingface-hub","old_version":"1.27.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.1","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"fastapi","old_version":"0.136.3","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"starlette","old_version":"1.3.1","new_version":"1.6.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"prometheus-fastapi-instrumentator","old_version":"8.0.2","new_version":"8.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"pyzmq","old_version":"27.1.0","new_version":"27.2.0","repository_url":"https://github.com/zeromq/pyzmq"},{"name":"python-json-logger","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"pybase64","old_version":"1.4.3","new_version":"1.5.0","repository_url":"https://github.com/mayeut/pybase64"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions-ai","old_version":"0.4.13","new_version":"0.5.1"},{"name":"triton","old_version":"3.7.1","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"torchcodec","old_version":"0.14.0+cu130","new_version":"0.16.0","repository_url":"https://github.com/pytorch/torchcodec"},{"name":"auto-round-lib","old_version":"0.14.2","new_version":"0.15.0","repository_url":"https://github.com/intel/auto-round"},{"name":"tpu-inference","old_version":"0.26.0","new_version":"0.28.0","repository_url":"https://github.com/vllm-project/tpu-inference"},{"name":"pynvvideocodec","old_version":"2.0.4","new_version":"2.2.2"},{"name":"nvidia-cutlass-dsl","old_version":"4.6.2","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.8","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.85","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.85","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"cohere","old_version":"7.0.8","new_version":"7.1.1","repository_url":"https://github.com/cohere-ai/cohere-python"},{"name":"cohere-melody","old_version":"0.9.0","new_version":"0.13.4","repository_url":"https://github.com/cohere-ai/melody"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.0","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.3.0","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.0","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi-cloud-cli","old_version":"0.21.0","new_version":"0.24.0","repository_url":"https://github.com/fastapilabs/fastapi-cloud-cli"},{"name":"fastar","old_version":"0.11.0","new_version":"0.12.0","repository_url":"https://github.com/DoctorJohn/fastar"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"h11","old_version":"0.14.0","new_version":"0.16.0","repository_url":"https://github.com/python-hyper/h11"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"idna","old_version":"3.10","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.15.0","new_version":"0.16.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema-rs","old_version":"0.46.5","new_version":"0.52.1","repository_url":"https://github.com/Stranger6667/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llguidance","old_version":"1.7.6","new_version":"1.8.0","repository_url":"https://github.com/microsoft/llguidance"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.1.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.20.0.48","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.1","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.29.7","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"peft","old_version":"0.19.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.7","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pydantic-settings","old_version":"2.14.2","new_version":"2.15.0","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pyrate-limiter","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/vutran1710/PyrateLimiter"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"rignore","old_version":"0.7.6","new_version":"0.8.1"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"schemathesis","old_version":"4.21.6","new_version":"4.25.2","repository_url":"https://github.com/schemathesis/schemathesis"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"sentry-sdk","old_version":"2.63.0","new_version":"2.68.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.26.8","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.1","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.5","repository_url":"https://github.com/astral-sh/ruff"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 184 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [transformers](https://github.com/huggingface/transformers) | `5.15.0` | `5.16.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.27.0` | `1.29.0` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.1` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.136.3` | `0.141.1` |\n| [starlette](https://github.com/Kludex/starlette) | `1.3.1` | `1.6.0` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `8.0.2` | `8.1.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [pyzmq](https://github.com/zeromq/pyzmq) | `27.1.0` | `27.2.0` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `4.1.0` | `4.2.0` |\n| [pybase64](https://github.com/mayeut/pybase64) | `1.4.3` | `1.5.0` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| opentelemetry-semantic-conventions-ai | `0.4.13` | `0.5.1` |\n| [triton](https://github.com/triton-lang/triton) | `3.7.1` | `3.8.0` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [torchcodec](https://github.com/pytorch/torchcodec) | `0.14.0+cu130` | `0.16.0` |\n| [auto-round-lib](https://github.com/intel/auto-round) | `0.14.2` | `0.15.0` |\n| [tpu-inference](https://github.com/vllm-project/tpu-inference) | `0.26.0` | `0.28.0` |\n| pynvvideocodec | `2.0.4` | `2.2.2` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.6.2` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.8` | `0.2.6` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.85` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.85` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| [cohere](https://github.com/cohere-ai/cohere-python) | `7.0.8` | `7.1.1` |\n| [cohere-melody](https://github.com/cohere-ai/melody) | `0.9.0` | `0.13.4` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.0` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.3.0` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.0` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi-cloud-cli](https://github.com/fastapilabs/fastapi-cloud-cli) | `0.21.0` | `0.24.0` |\n| [fastar](https://github.com/DoctorJohn/fastar) | `0.11.0` | `0.12.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.19` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.15.0` | `0.16.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonschema-rs](https://github.com/Stranger6667/jsonschema) | `0.46.5` | `0.52.1` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llguidance](https://github.com/microsoft/llguidance) | `1.7.6` | `1.8.0` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.1.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.20.0.48` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.1` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.29.7` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [peft](https://github.com/huggingface/peft) | `0.19.1` | `0.20.0` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.7` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.14.2` | `2.15.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pyrate-limiter](https://github.com/vutran1710/PyrateLimiter) | `4.4.0` | `4.5.0` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| rignore | `0.7.6` | `0.8.1` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [schemathesis](https://github.com/schemathesis/schemathesis) | `4.21.6` | `4.25.2` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.63.0` | `2.68.1` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.26.8` | `0.27.2` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.1` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.5` |\n\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 5.15.0 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\n\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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.15.0...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `huggingface-hub` from 1.27.0 to 1.29.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\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/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.27.0...v1.29.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e⚡ Performance — measured locally on this Mac, not lifted from PRs\u003c/h2\u003e\n\u003cp\u003eRun with \u003ccode\u003ecargo bench --bench \u0026lt;name\u0026gt; -- --save-baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.22.2\u003c/code\u003e, then \u003ccode\u003e--baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.23.1\u003c/code\u003e. Numbers are point-in-time wall clock on a single laptop; relative deltas are what matters, absolute numbers will differ on CI hardware.\u003c/p\u003e\n\u003ch3\u003eAdded-vocabulary deserialize — the headline win (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1999\"\u003e#1999\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003e\u003ccode\u003ebench: improve added_vocab_deserialize to reflect real-world workloads\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2000\"\u003e#2000\u003c/a\u003e) is now representative of how transformers actually loads tokenizer.json files. The combined effect of \u003ccode\u003edaachorse\u003c/code\u003e for the matching automaton plus the normalize-on-insert refactor is enormous on this workload:\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~410 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e248 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.1 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e273 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~395 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e235 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.4 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e290 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e400k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~15 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e980 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−94%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eReal-world impact: loading a Llama-3-style tokenizer with a large set of added tokens dropped from \u0026quot;noticeable pause\u0026quot; to \u0026quot;instant\u0026quot;.\u003c/p\u003e\n\u003ch3\u003eBPE encode\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch, no cache\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e530 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e446 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−16%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch\u003c/code\u003e (cached)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e690 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e685 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode\u003c/code\u003e (single)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.95 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.94 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (small)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e32.6 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e31.5 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−3%\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (big)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.01 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e988 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−2%\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eThe BPE per-thread cache PR (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e) shows much larger wins on highly-parallel workloads (+47–62% at 88+ threads on a server box, per the PR's own measurements on Vera). Single-thread batch numbers above are flat or slightly improved because cache-hit overhead was already low without contention.\u003c/p\u003e\n\u003ch3\u003eLlama-3 encode\u003c/h3\u003e\n\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/huggingface/tokenizers/commit/7f1623b90b5adfb9bc327d4c3468d2f70bbce262\"\u003e\u003ccode\u003e7f1623b\u003c/code\u003e\u003c/a\u003e Bump version to 0.23.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bbe43ad73d8fc8932b9d0e657ddee3cd70c649a4\"\u003e\u003ccode\u003ebbe43ad\u003c/code\u003e\u003c/a\u003e ci: release workflow fixes (node + python) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2043\"\u003e#2043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/ab0c5d8fc13eb1c5001d9c06806635e2b5a42e9f\"\u003e\u003ccode\u003eab0c5d8\u003c/code\u003e\u003c/a\u003e Fix node release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2034\"\u003e#2034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/decd8e07dad15f296c0adc2bc3a560f62d3de2eb\"\u003e\u003ccode\u003edecd8e0\u003c/code\u003e\u003c/a\u003e bindings/python: free-threaded Python (3.14t) support (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2041\"\u003e#2041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/3992692d483bf3177219b52cb101b1bb055c18e6\"\u003e\u003ccode\u003e3992692\u003c/code\u003e\u003c/a\u003e update for release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2033\"\u003e#2033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bcdd25b97fcd78549903082ecf3ddd87d42c456b\"\u003e\u003ccode\u003ebcdd25b\u003c/code\u003e\u003c/a\u003e BPE cache: per-thread read-through cache to avoid RwLock atomics on hits (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/618eb383f43e207139eb5cdb9bca17796b5e9bd7\"\u003e\u003ccode\u003e618eb38\u003c/code\u003e\u003c/a\u003e Bump follow-redirects in /tokenizers/examples/unstable_wasm/www (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2024\"\u003e#2024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b6b1688bef2e87efc91af18edf7ac38b4d2dfbe6\"\u003e\u003ccode\u003eb6b1688\u003c/code\u003e\u003c/a\u003e chore: bump doc-builder SHA for PR upload workflow (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2025\"\u003e#2025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/19015d6b44aa3896626de5092e4171aed1b56d5b\"\u003e\u003ccode\u003e19015d6\u003c/code\u003e\u003c/a\u003e fix: use uvx --with cairosvg instead of uv pip install --system (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2021\"\u003e#2021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/efbcc68e321c364c8f9541f1c93a158df54d7da4\"\u003e\u003ccode\u003eefbcc68\u003c/code\u003e\u003c/a\u003e Ci benchmarks (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2019\"\u003e#2019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `fastapi` from 0.136.3 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15093\"\u003e#15093\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.10\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling sequences with nested Annotated types. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14874\"\u003e#14874\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Accept any base test failure as regression. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16092\"\u003e#16092\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Preserve pytest exit code in regression check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16091\"\u003e#16091\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Test PR regressions against base code. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16090\"\u003e#16090\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.9\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eexclude_defaults\u003c/code\u003e not propagated to dict keys and values in \u003ccode\u003ejsonable_encoder\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16043\"\u003e#16043\u003c/a\u003e by \u003ca href=\"https://github.com/MBGrao\"\u003e\u003ccode\u003e@​MBGrao\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\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/fastapi/fastapi/commit/95f8322ee1dcda7ceace7b1c4f6c9915b36d748f\"\u003e\u003ccode\u003e95f8322\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16106\"\u003e#16106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f137944c435cff4e4b30ea7d12855ea88ddb868c\"\u003e\u003ccode\u003ef137944\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d62354434b2e508fe89024213b220ca8e67dea5e\"\u003e\u003ccode\u003ed623544\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for background tasks and headers from dependencies in `app.fron...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fast...\n\n_Description has been truncated_","html_url":"https://github.com/yhfgyyf/vllm-GLM-5.3-Flash-sm120/pull/15","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/yhfgyyf%2Fvllm-GLM-5.3-Flash-sm120/issues/15","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/15/packages"}},{"old_version":"1.25.1","new_version":"1.29.0","update_type":"minor","path":null,"pr_created_at":"2026-09-04T07:46:19.000Z","version_change":"1.25.1 → 1.29.0","issue":{"uuid":"5345626334","node_id":"PR_kwDOTLZMFM8AAAABCKrS0g","number":393,"state":"open","title":"chore(deps): bump huggingface-hub from 1.25.1 to 1.29.0","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":4,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-04T07:46:19.000Z","updated_at":"2026-09-04T22:04:07.435Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)","packages":[{"name":"huggingface-hub","old_version":"1.25.1","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"}],"path":null,"ecosystem":"pip"},"body":"Bumps [huggingface-hub](https://github.com/huggingface/huggingface_hub) from 1.25.1 to 1.29.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/huggingface_hub/releases\"\u003ehuggingface-hub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[v1.29.0] Fix Xet downloads rate limits, bucket visibility updates, and security fixes\u003c/h2\u003e\n\u003ch2\u003e⚡ Xet downloads no longer make one API call per file\u003c/h2\u003e\n\u003cp\u003eSince v1.19.0, downloading a repository with \u003ccode\u003ehf_xet\u003c/code\u003e eagerly requested a xet read token for every single file, because each download group was built without cached connection info. On repos with many files this quickly added up — a 77k-file repo made ~1,500 Hub API calls per minute — and eventually hit the rate limiter, leaving \u003ccode\u003esnapshot_download\u003c/code\u003e appearing stalled for minutes before failing with a \u003ccode\u003e429 Too Many Requests\u003c/code\u003e. This release restores the Python-side connection info cache so the endpoint and token are reused across download groups, skipping the eager per-file token request entirely. Large downloads are both faster and far less likely to be rate-limited.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Xet] Cache connection info to avoid one token request per file by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🪣 Change bucket visibility after creation\u003c/h2\u003e\n\u003cp\u003eBucket visibility used to be a create-time-only setting: once a bucket existed, there was no way to flip it between private and public. You can now update it with the new \u003ccode\u003eHfApi.update_bucket_settings()\u003c/code\u003e method (also exported as \u003ccode\u003eupdate_bucket_settings\u003c/code\u003e) or from the CLI with \u003ccode\u003ehf buckets settings\u003c/code\u003e, which takes either \u003ccode\u003e--private\u003c/code\u003e or \u003ccode\u003e--public\u003c/code\u003e.\u003c/p\u003e\n\u003cpre lang=\"py\"\u003e\u003ccode\u003e\u0026gt;\u0026gt;\u0026gt; from huggingface_hub import update_bucket_settings\r\n\u003ch1\u003eMake a bucket private\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=True)\u003c/p\u003e\n\u003ch1\u003eMake it public again\u003c/h1\u003e\n\u003cp\u003e\u0026gt;\u0026gt;\u0026gt; update_bucket_settings(\u0026quot;username/my-bucket\u0026quot;, private=False)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Make a bucket private\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --private\r\n✓ Bucket settings updated\r\n  bucket_id: username/my-bucket\r\n  private: True\r\n\r\n# Make it public again\r\n\u0026gt;\u0026gt;\u0026gt; hf buckets settings username/my-bucket --public\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003e📚 \u003cstrong\u003eDocumentation:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/huggingface_hub/main/en/guides/buckets\"\u003eBuckets guide\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Add support for updating bucket visibility by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4715\"\u003e#4715\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔒 Security fixes\u003c/h2\u003e\n\u003cp\u003eTwo security-relevant fixes land in this release. First, the path-traversal guard introduced earlier for CVE-2026-15717 is now extended to \u003ccode\u003ehf buckets sync\u003c/code\u003e / \u003ccode\u003esync_bucket()\u003c/code\u003e: when downloading from a bucket, server-supplied file keys were joined straight onto the local destination without validation, so a malicious or compromised bucket could return anchored or traversing keys (\u003ccode\u003e/etc/cron.d/evil\u003c/code\u003e, \u003ccode\u003e../../../../etc/passwd\u003c/code\u003e, Windows drive-absolute or UNC paths) that escape the chosen directory and write arbitrary files. Remote paths are now validated the same way as in the original fix. Second, \u003ccode\u003eload_state_dict_from_file\u003c/code\u003e could fall back to pickle deserialization for a shard named exactly \u003ccode\u003e.safetensors\u003c/code\u003e: \u003ccode\u003ePath.suffix\u003c/code\u003e returns an empty string for extension-only filenames, so a file that passed sharded-checkpoint validation (which uses \u003ccode\u003estr.endswith\u003c/code\u003e) was still routed to \u003ccode\u003etorch.load(weights_only=False)\u003c/code\u003e. A shared \u003ccode\u003e_is_safetensors()\u003c/code\u003e helper now guarantees both code paths use the same matching semantics, so an index-declared \u0026quot;safetensors\u0026quot; checkpoint can never be loaded with pickle.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Buckets] Validate remote paths in bucket sync to prevent path traversal by \u003ca href=\"https://github.com/hanouticelina\"\u003e\u003ccode\u003e@​hanouticelina\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix extension-confusion fallback to pickle in load_state_dict_from_file (add \u003ccode\u003e_is_safetensors\u003c/code\u003e) by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4737\"\u003e#4737\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 Inference\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[Inference Providers] Send LoRA weights for fal-ai text-to-video by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4706\"\u003e#4706\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 by \u003ca href=\"https://github.com/moon-bot-app\"\u003e\u003ccode\u003e@​moon-bot-app\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🖥️ CLI\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4237d95c603db491cb1070898c74c97e4d7c2582\"\u003e\u003ccode\u003e4237d95\u003c/code\u003e\u003c/a\u003e Release: v1.29.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/dd44abc045c7cb774436f0efed5b640a84c74cda\"\u003e\u003ccode\u003edd44abc\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d29a81f185cb29e0fdc972503c975f0e7b713d\"\u003e\u003ccode\u003e38d29a8\u003c/code\u003e\u003c/a\u003e [Release] Refresh OpenCode model cache before validating RELEASE_NOTES_MODEL ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b1bf950c9861148cd5a866b02e2dbf1f5ea4aaf3\"\u003e\u003ccode\u003eb1bf950\u003c/code\u003e\u003c/a\u003e Release: v1.29.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2e62777baa0cb418a2618372961fd7346c346dc6\"\u003e\u003ccode\u003e2e62777\u003c/code\u003e\u003c/a\u003e [CI] Auto-close community PRs without a maintainer-scoped issue (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4695\"\u003e#4695\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c5eb13cdc808aae4251054081271cdfd415fcce7\"\u003e\u003ccode\u003ec5eb13c\u003c/code\u003e\u003c/a\u003e [CLI] Installer: point at shadowed newer Python on macOS (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4758\"\u003e#4758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/585c075de9c432bb648033f9c5d188847d5174af\"\u003e\u003ccode\u003e585c075\u003c/code\u003e\u003c/a\u003e [Buckets] Validate remote paths in bucket sync to prevent path traversal (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4731\"\u003e#4731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4dcfe7e9588248deefd977a2ab922516334bc2dd\"\u003e\u003ccode\u003e4dcfe7e\u003c/code\u003e\u003c/a\u003e [CLI] Fix argument help rendering with click 8.5 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4759\"\u003e#4759\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2c60641c98afa344892600e6ba76e010959ed637\"\u003e\u003ccode\u003e2c60641\u003c/code\u003e\u003c/a\u003e [Xet] Cache connection info to avoid one token request per file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4732\"\u003e#4732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/c6be77fb44d91f474da963e5ad6fce4801811027\"\u003e\u003ccode\u003ec6be77f\u003c/code\u003e\u003c/a\u003e Hint at \u003ccode\u003estream=True\u003c/code\u003e when a non-streaming inference call fails with 504 (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4744\"\u003e#4744\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v1.25.1...v1.29.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=huggingface-hub\u0026package-manager=pip\u0026previous-version=1.25.1\u0026new-version=1.29.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e\n\n\u003c!-- This is an auto-generated comment: release notes by coderabbit.ai --\u003e\n\n## Summary by CodeRabbit\n\n* **Chores**\n  * Updated the Hugging Face Hub package used by the Power Suite GUI to version 1.29.0.\n  * Updated the Web Profile B runtime to Hugging Face Hub version 1.29.0, including refreshed package verification hashes.\n\n\u003c!-- end of auto-generated comment: release notes by coderabbit.ai --\u003e","html_url":"https://github.com/weby-homelab/power-framework/pull/393","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/weby-homelab%2Fpower-framework/issues/393","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/393/packages"}},{"old_version":"1.22.0","new_version":"1.29.0","update_type":"minor","path":null,"pr_created_at":"2026-09-04T02:14:11.000Z","version_change":"1.22.0 → 1.29.0","issue":{"uuid":"5343417516","node_id":"PR_kwDOToXI7s8AAAABCI8HDw","number":20,"state":"open","title":"Bump the minor-update group across 1 directory with 187 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-04T02:14:11.000Z","updated_at":"2026-09-04T02:14:28.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-update","update_count":187,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"transformers","old_version":"5.14.1","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.1","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"fastapi","old_version":"0.136.3","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"starlette","old_version":"1.3.1","new_version":"1.6.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"prometheus-fastapi-instrumentator","old_version":"8.0.2","new_version":"8.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"pyzmq","old_version":"27.1.0","new_version":"27.2.0","repository_url":"https://github.com/zeromq/pyzmq"},{"name":"python-json-logger","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"pybase64","old_version":"1.4.3","new_version":"1.5.0","repository_url":"https://github.com/mayeut/pybase64"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions-ai","old_version":"0.4.13","new_version":"0.5.1"},{"name":"tpu-inference","old_version":"0.25.0","new_version":"0.28.0","repository_url":"https://github.com/vllm-project/tpu-inference"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"peft","old_version":"0.19.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.4.2","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"idna","old_version":"3.10","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.5","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.5","repository_url":"https://github.com/astral-sh/ruff"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"bitsandbytes","old_version":"0.49.2","new_version":"0.50.2","repository_url":"https://github.com/bitsandbytes-foundation/bitsandbytes"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.85","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.85","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"cohere-melody","old_version":"0.9.0","new_version":"0.13.4","repository_url":"https://github.com/cohere-ai/melody"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.0","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.3.0","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.0","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi-cloud-cli","old_version":"0.21.0","new_version":"0.24.0","repository_url":"https://github.com/fastapilabs/fastapi-cloud-cli"},{"name":"fastar","old_version":"0.11.0","new_version":"0.12.0","repository_url":"https://github.com/DoctorJohn/fastar"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"h11","old_version":"0.14.0","new_version":"0.16.0","repository_url":"https://github.com/python-hyper/h11"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"hf-xet","old_version":"1.5.1","new_version":"1.6.0","repository_url":"https://github.com/huggingface/xet-core"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"huggingface-hub","old_version":"1.22.0","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.15.0","new_version":"0.16.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema-rs","old_version":"0.46.5","new_version":"0.52.1","repository_url":"https://github.com/Stranger6667/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llguidance","old_version":"1.7.6","new_version":"1.8.0","repository_url":"https://github.com/microsoft/llguidance"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.1.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.20.0.48","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.1","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.29.7","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pydantic-settings","old_version":"2.14.2","new_version":"2.15.0","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pyrate-limiter","old_version":"4.4.0","new_version":"4.5.0","repository_url":"https://github.com/vutran1710/PyrateLimiter"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"rignore","old_version":"0.7.6","new_version":"0.8.1"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"schemathesis","old_version":"4.21.6","new_version":"4.25.2","repository_url":"https://github.com/schemathesis/schemathesis"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"sentry-sdk","old_version":"2.63.0","new_version":"2.68.1","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"torchcodec","old_version":"0.14.0+cu130","new_version":"0.16.0","repository_url":"https://github.com/pytorch/torchcodec"},{"name":"triton","old_version":"3.7.1","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.26.8","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.1","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"auto-round-lib","old_version":"0.14.2","new_version":"0.15.0","repository_url":"https://github.com/intel/auto-round"},{"name":"pynvvideocodec","old_version":"2.0.4","new_version":"2.2.2"},{"name":"nvidia-cutlass-dsl","old_version":"4.6.0","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.8","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"zentorch","old_version":"2.11.0.0","new_version":"2.13.0.0","repository_url":"https://github.com/amd/ZenDNN-pytorch-plugin"},{"name":"helion","old_version":"1.1.0","new_version":"1.4.0","repository_url":"https://github.com/pytorch/helion"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 187 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [transformers](https://github.com/huggingface/transformers) | `5.14.1` | `5.16.1` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.1` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.136.3` | `0.141.1` |\n| [starlette](https://github.com/Kludex/starlette) | `1.3.1` | `1.6.0` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `8.0.2` | `8.1.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [pyzmq](https://github.com/zeromq/pyzmq) | `27.1.0` | `27.2.0` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `4.1.0` | `4.2.0` |\n| [pybase64](https://github.com/mayeut/pybase64) | `1.4.3` | `1.5.0` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| opentelemetry-semantic-conventions-ai | `0.4.13` | `0.5.1` |\n| [tpu-inference](https://github.com/vllm-project/tpu-inference) | `0.25.0` | `0.28.0` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [peft](https://github.com/huggingface/peft) | `0.19.1` | `0.20.0` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.4.2` | `8.5.0` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.19` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.5` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.5` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [bitsandbytes](https://github.com/bitsandbytes-foundation/bitsandbytes) | `0.49.2` | `0.50.2` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.85` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.85` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [cohere-melody](https://github.com/cohere-ai/melody) | `0.9.0` | `0.13.4` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.0` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.3.0` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.0` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi-cloud-cli](https://github.com/fastapilabs/fastapi-cloud-cli) | `0.21.0` | `0.24.0` |\n| [fastar](https://github.com/DoctorJohn/fastar) | `0.11.0` | `0.12.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [hf-xet](https://github.com/huggingface/xet-core) | `1.5.1` | `1.6.0` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.22.0` | `1.29.0` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.15.0` | `0.16.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonschema-rs](https://github.com/Stranger6667/jsonschema) | `0.46.5` | `0.52.1` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llguidance](https://github.com/microsoft/llguidance) | `1.7.6` | `1.8.0` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.1.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.20.0.48` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.1` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.29.7` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.14.2` | `2.15.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pyrate-limiter](https://github.com/vutran1710/PyrateLimiter) | `4.4.0` | `4.5.0` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| rignore | `0.7.6` | `0.8.1` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [schemathesis](https://github.com/schemathesis/schemathesis) | `4.21.6` | `4.25.2` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.63.0` | `2.68.1` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [torchcodec](https://github.com/pytorch/torchcodec) | `0.14.0+cu130` | `0.16.0` |\n| [triton](https://github.com/triton-lang/triton) | `3.7.1` | `3.8.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.26.8` | `0.27.2` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.1` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [auto-round-lib](https://github.com/intel/auto-round) | `0.14.2` | `0.15.0` |\n| pynvvideocodec | `2.0.4` | `2.2.2` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.6.0` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.8` | `0.2.6` |\n| [zentorch](https://github.com/amd/ZenDNN-pytorch-plugin) | `2.11.0.0` | `2.13.0.0` |\n| [helion](https://github.com/pytorch/helion) | `1.1.0` | `1.4.0` |\n\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 5.14.1 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\n\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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.14.1...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e⚡ Performance — measured locally on this Mac, not lifted from PRs\u003c/h2\u003e\n\u003cp\u003eRun with \u003ccode\u003ecargo bench --bench \u0026lt;name\u0026gt; -- --save-baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.22.2\u003c/code\u003e, then \u003ccode\u003e--baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.23.1\u003c/code\u003e. Numbers are point-in-time wall clock on a single laptop; relative deltas are what matters, absolute numbers will differ on CI hardware.\u003c/p\u003e\n\u003ch3\u003eAdded-vocabulary deserialize — the headline win (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1999\"\u003e#1999\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003e\u003ccode\u003ebench: improve added_vocab_deserialize to reflect real-world workloads\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2000\"\u003e#2000\u003c/a\u003e) is now representative of how transformers actually loads tokenizer.json files. The combined effect of \u003ccode\u003edaachorse\u003c/code\u003e for the matching automaton plus the normalize-on-insert refactor is enormous on this workload:\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~410 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e248 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.1 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e273 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~395 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e235 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.4 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e290 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e400k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~15 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e980 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−94%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eReal-world impact: loading a Llama-3-style tokenizer with a large set of added tokens dropped from \u0026quot;noticeable pause\u0026quot; to \u0026quot;instant\u0026quot;.\u003c/p\u003e\n\u003ch3\u003eBPE encode\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch, no cache\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e530 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e446 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−16%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch\u003c/code\u003e (cached)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e690 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e685 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode\u003c/code\u003e (single)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.95 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.94 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (small)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e32.6 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e31.5 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−3%\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (big)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.01 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e988 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−2%\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eThe BPE per-thread cache PR (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e) shows much larger wins on highly-parallel workloads (+47–62% at 88+ threads on a server box, per the PR's own measurements on Vera). Single-thread batch numbers above are flat or slightly improved because cache-hit overhead was already low without contention.\u003c/p\u003e\n\u003ch3\u003eLlama-3 encode\u003c/h3\u003e\n\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/huggingface/tokenizers/commit/7f1623b90b5adfb9bc327d4c3468d2f70bbce262\"\u003e\u003ccode\u003e7f1623b\u003c/code\u003e\u003c/a\u003e Bump version to 0.23.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bbe43ad73d8fc8932b9d0e657ddee3cd70c649a4\"\u003e\u003ccode\u003ebbe43ad\u003c/code\u003e\u003c/a\u003e ci: release workflow fixes (node + python) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2043\"\u003e#2043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/ab0c5d8fc13eb1c5001d9c06806635e2b5a42e9f\"\u003e\u003ccode\u003eab0c5d8\u003c/code\u003e\u003c/a\u003e Fix node release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2034\"\u003e#2034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/decd8e07dad15f296c0adc2bc3a560f62d3de2eb\"\u003e\u003ccode\u003edecd8e0\u003c/code\u003e\u003c/a\u003e bindings/python: free-threaded Python (3.14t) support (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2041\"\u003e#2041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/3992692d483bf3177219b52cb101b1bb055c18e6\"\u003e\u003ccode\u003e3992692\u003c/code\u003e\u003c/a\u003e update for release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2033\"\u003e#2033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bcdd25b97fcd78549903082ecf3ddd87d42c456b\"\u003e\u003ccode\u003ebcdd25b\u003c/code\u003e\u003c/a\u003e BPE cache: per-thread read-through cache to avoid RwLock atomics on hits (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/618eb383f43e207139eb5cdb9bca17796b5e9bd7\"\u003e\u003ccode\u003e618eb38\u003c/code\u003e\u003c/a\u003e Bump follow-redirects in /tokenizers/examples/unstable_wasm/www (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2024\"\u003e#2024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b6b1688bef2e87efc91af18edf7ac38b4d2dfbe6\"\u003e\u003ccode\u003eb6b1688\u003c/code\u003e\u003c/a\u003e chore: bump doc-builder SHA for PR upload workflow (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2025\"\u003e#2025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/19015d6b44aa3896626de5092e4171aed1b56d5b\"\u003e\u003ccode\u003e19015d6\u003c/code\u003e\u003c/a\u003e fix: use uvx --with cairosvg instead of uv pip install --system (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2021\"\u003e#2021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/efbcc68e321c364c8f9541f1c93a158df54d7da4\"\u003e\u003ccode\u003eefbcc68\u003c/code\u003e\u003c/a\u003e Ci benchmarks (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2019\"\u003e#2019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `fastapi` from 0.136.3 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15093\"\u003e#15093\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.10\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix handling sequences with nested Annotated types. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/14874\"\u003e#14874\u003c/a\u003e by \u003ca href=\"https://github.com/YuriiMotov\"\u003e\u003ccode\u003e@​YuriiMotov\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternal\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Accept any base test failure as regression. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16092\"\u003e#16092\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e🐛 Preserve pytest exit code in regression check. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16091\"\u003e#16091\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e✅ Test PR regressions against base code. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16090\"\u003e#16090\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.9\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eexclude_defaults\u003c/code\u003e not propagated to dict keys and values in \u003ccode\u003ejsonable_encoder\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16043\"\u003e#16043\u003c/a\u003e by \u003ca href=\"https://github.com/MBGrao\"\u003e\u003ccode\u003e@​MBGrao\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\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/fastapi/fastapi/commit/95f8322ee1dcda7ceace7b1c4f6c9915b36d748f\"\u003e\u003ccode\u003e95f8322\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.1 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16106\"\u003e#16106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/f137944c435cff4e4b30ea7d12855ea88ddb868c\"\u003e\u003ccode\u003ef137944\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/d62354434b2e508fe89024213b220ca8e67dea5e\"\u003e\u003ccode\u003ed623544\u003c/code\u003e\u003c/a\u003e 🐛 Fix support for background tasks and headers from dependencies in `app.fron...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/1d211b9c1009d577f39fa2b19b10d9a93a72a0ed\"\u003e\u003ccode\u003e1d211b9\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/8a1f8768411e62093e70ce142ea10863a485643c\"\u003e\u003ccode\u003e8a1f876\u003c/code\u003e\u003c/a\u003e 📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16104\"\u003e#16104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/c7e7b651d6946c07cc9f675f39c9501d08319e57\"\u003e\u003ccode\u003ec7e7b65\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.141.0 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16103\"\u003e#16103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/6bceb84053eb2405e9c000aad30ea13367b5ee32\"\u003e\u003ccode\u003e6bceb84\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/5429fed84e84e32672c25a953eca3429b841ce90\"\u003e\u003ccode\u003e5429fed\u003c/code\u003e\u003c/a\u003e ✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more conven...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/628663f4f899c465da423bce681c7adf9a218948\"\u003e\u003ccode\u003e628663f\u003c/code\u003e\u003c/a\u003e 🔖 Release version 0.140.13 (\u003ca href=\"https://redirect.github.com/fastapi/fastapi/issues/16096\"\u003e#16096\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/fastapi/fastapi/commit/0b54fd00273019034dd30b120ac842e65d80690e\"\u003e\u003ccode\u003e0b54fd0\u003c/code\u003e\u003c/a\u003e 📝 Update release notes\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/fastapi/fastapi/compare/0.136.3...0.141.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `starlette` from 1.3.1 to 1.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kludex/starlette/releases\"\u003estarlette's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.6.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003emax_body_size\u003c/code\u003e to \u003ccode\u003eStarlette\u003c/code\u003e and route classes by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3431\"\u003eKludex/starlette#3431\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ehttp.response.debug\u003c/code\u003e info via response extensions by \u003ca href=\"https://github.com/y2kbugger\"\u003e\u003ccode\u003e@​y2kbugger\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3130\"\u003eKludex/starlette#3130\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/y2kbugger\"\u003e\u003ccode\u003e@​y2kbugger\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3130\"\u003eKludex/starlette#3130\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/starlette/compare/1.5.1...1.6.0\"\u003ehttps://github.com/Kludex/starlette/compare/1.5.1...1.6.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.5.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eReject inverted single-byte Range like \u003ccode\u003ebytes=5-4\u003c/code\u003e by \u003ca href=\"https://github.com/nikolauspschuetz\"\u003e\u003ccode\u003e@​nikolauspschuetz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3389\"\u003eencode/starlette#3389\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLimit \u003ccode\u003eFileResponse\u003c/code\u003e to 100 ranges by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3430\"\u003eencode/starlette#3430\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/encode/starlette/compare/1.5.0...1.5.1\"\u003ehttps://github.com/encode/starlette/compare/1.5.0...1.5.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.5.0\u003c/h2\u003e\n\u003cp\u003eThis release is all about giving \u003ccode\u003eGZipMiddleware\u003c/code\u003e some love. 🗜️\u003c/p\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eexclude_content_types\u003c/code\u003e parameter to \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3418\"\u003eencode/starlette#3418\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFlush GZip output for each streamed chunk by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3419\"\u003eencode/starlette#3419\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSkip compression of partial responses in \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3420\"\u003eencode/starlette#3420\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eExpand default excluded content types in \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3421\"\u003eencode/starlette#3421\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/encode/starlette/compare/1.4.1...1.5.0\"\u003ehttps://github.com/encode/starlette/compare/1.4.1...1.5.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.4.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDefault \u003ccode\u003ethread_minimum_size\u003c/code\u003e in \u003ccode\u003eGZipResponder\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3415\"\u003eKludex/starlette#3415\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/starlette/compare/1.4.0...1.4.1\"\u003ehttps://github.com/Kludex/starlette/compare/1.4.0...1.4.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 1.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLazily allocate GZipMiddleware compression resources by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3407\"\u003eKludex/starlette#3407\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003ezlib.compressobj\u003c/code\u003e instead of \u003ccode\u003eGzipFile\u003c/code\u003e in \u003ccode\u003eGZipMiddleware\u003c/code\u003e by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3411\"\u003eKludex/starlette#3411\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOffload large GZip compression by \u003ca href=\"https://github.com/Kludex\"\u003e\u003ccode\u003e@​Kludex\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3410\"\u003eKludex/starlette#3410\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/benberryallwood\"\u003e\u003ccode\u003e@​benberryallwood\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3334\"\u003eKludex/starlette#3334\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lkk7\"\u003e\u003ccode\u003e@​lkk7\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/Kludex/starlette/pull/3359\"\u003eKludex/starlette#3359\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/Kludex/starlette/compare/1.3.1...1.4.0\"\u003ehttps://github.com/Kludex/starlette/compare/1.3.1...1.4.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Kludex/starlette/blob/main/docs/release-notes.md\"\u003estarlette's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.6.0 (August 8, 2026)\u003c/h2\u003e\n\u003ch4\u003eAdded\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003emax_body_size\u003c/code\u003e to \u003ccode\u003eStarlette\u003c/code\u003e and route classes \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3431\"\u003e#3431\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eExpose \u003ccode\u003ehttp.response.debug\u003c/code\u003e information via response extensions \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3130\"\u003e#3130\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.1 (August 8, 2026)\u003c/h2\u003e\n\u003ch4\u003eFixed\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eReject inverted single-byte ranges in \u003ccode\u003eFileResponse\u003c/code\u003e \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3389\"\u003e#3389\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eLimit \u003ccode\u003eFileResponse\u003c/code\u003e to 100 ranges \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3430\"\u003e#3430\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.0 (August 8, 2026)\u003c/h2\u003e\n\u003ch4\u003eAdded\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eexclude_content_types\u003c/code\u003e parameter to \u003ccode\u003eGZipMiddleware\u003c/code\u003e \u003ca href=\"https://redirect.github.com/encode/starlette/pull/3418\"\u003e#3418\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch4\u003eChanged\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eExpand default excluded content types in \u003ccode\u003eGZipMiddleware\u003c/c...\n\n_Description has been truncated_","html_url":"https://github.com/btlqql/vllm-rwkv7/pull/20","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/btlqql%2Fvllm-rwkv7/issues/20","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/20/packages"}},{"old_version":"1.10.2","new_version":"1.29.0","update_type":"minor","path":null,"pr_created_at":"2026-09-04T01:36:37.000Z","version_change":"1.10.2 → 1.29.0","issue":{"uuid":"5343191056","node_id":"PR_kwDOTbO7F88AAAABCIxLYA","number":18,"state":"open","title":"Bump the minor-update group across 1 directory with 172 updates","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-09-04T01:36:37.000Z","updated_at":"2026-09-04T01:36:48.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"minor-update","update_count":172,"packages":[{"name":"regex","old_version":"2026.2.28","new_version":"2026.9.3","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"requests","old_version":"2.32.3","new_version":"2.34.2","repository_url":"https://github.com/psf/requests"},{"name":"tqdm","old_version":"4.67.3","new_version":"4.70.0","repository_url":"https://github.com/tqdm/tqdm"},{"name":"transformers","old_version":"5.5.3","new_version":"5.16.1","repository_url":"https://github.com/huggingface/transformers"},{"name":"tokenizers","old_version":"0.22.2","new_version":"0.23.1","repository_url":"https://github.com/huggingface/tokenizers"},{"name":"safetensors","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/huggingface/safetensors"},{"name":"fastapi","old_version":"0.128.0","new_version":"0.141.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"aiohttp","old_version":"3.13.3","new_version":"3.14.3","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"pydantic","old_version":"2.12.0","new_version":"2.13.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"prometheus-client","old_version":"0.22.0","new_version":"0.26.0","repository_url":"https://github.com/prometheus/client_python"},{"name":"tiktoken","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/openai/tiktoken"},{"name":"lark","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/lark-parser/lark"},{"name":"typing-extensions","old_version":"4.15.0","new_version":"4.16.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"filelock","old_version":"3.16.1","new_version":"3.32.5","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"opentelemetry-sdk","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-api","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"tpu-inference","old_version":"0.20.0","new_version":"0.28.0","repository_url":"https://github.com/vllm-project/tpu-inference"},{"name":"grpcio","old_version":"1.78.0","new_version":"1.83.1","repository_url":"https://github.com/grpc/grpc"},{"name":"grpcio-reflection","old_version":"1.78.0","new_version":"1.83.1"},{"name":"numba","old_version":"0.65.0","new_version":"0.67.0","repository_url":"https://github.com/numba/numba"},{"name":"peft","old_version":"0.18.1","new_version":"0.20.0","repository_url":"https://github.com/huggingface/peft"},{"name":"tensorizer","old_version":"2.10.1","new_version":"2.12.1","repository_url":"https://github.com/coreweave/tensorizer"},{"name":"runai-model-streamer","old_version":"0.15.7","new_version":"0.16.1"},{"name":"conch-triton-kernels","old_version":"1.2.1","new_version":"1.3","repository_url":"https://github.com/stackav-oss/conch"},{"name":"annotated-types","old_version":"0.7.0","new_version":"0.8.0","repository_url":"https://github.com/annotated-types/annotated-types"},{"name":"charset-normalizer","old_version":"3.4.0","new_version":"3.5.1","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.1.7","new_version":"8.5.0","repository_url":"https://github.com/pallets/click"},{"name":"griffelib","old_version":"2.0.2","new_version":"2.2.0"},{"name":"idna","old_version":"3.10","new_version":"3.19","repository_url":"https://github.com/kjd/idna"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.11.5","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pydantic-core","old_version":"2.41.1","new_version":"2.48.0","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pygments","old_version":"2.18.0","new_version":"2.21.0","repository_url":"https://github.com/pygments/pygments"},{"name":"ruff","old_version":"0.15.12","new_version":"0.16.5","repository_url":"https://github.com/astral-sh/ruff"},{"name":"six","old_version":"1.16.0","new_version":"1.17.0","repository_url":"https://github.com/benjaminp/six"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.7.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"tblib","old_version":"3.1.0","new_version":"3.2.2","repository_url":"https://github.com/ionelmc/python-tblib"},{"name":"absl-py","old_version":"2.1.0","new_version":"2.5.0","repository_url":"https://github.com/abseil/abseil-py"},{"name":"accelerate","old_version":"1.13.0","new_version":"1.14.0","repository_url":"https://github.com/huggingface/accelerate"},{"name":"aiohappyeyeballs","old_version":"2.6.1","new_version":"2.7.1","repository_url":"https://github.com/aio-libs/aiohappyeyeballs"},{"name":"alembic","old_version":"1.16.4","new_version":"1.19.1","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"anyio","old_version":"4.6.2.post1","new_version":"4.14.2","repository_url":"https://github.com/agronholm/anyio"},{"name":"arctic-inference","old_version":"0.1.1","new_version":"0.3.0"},{"name":"argcomplete","old_version":"3.5.1","new_version":"3.7.2","repository_url":"https://github.com/kislyuk/argcomplete"},{"name":"arrow","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/arrow-py/arrow"},{"name":"audioread","old_version":"3.0.1","new_version":"3.1.0","repository_url":"https://github.com/beetbox/audioread"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.41.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"azure-storage-blob","old_version":"12.28.0","new_version":"12.30.1","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"bitsandbytes","old_version":"0.49.2","new_version":"0.50.2","repository_url":"https://github.com/bitsandbytes-foundation/bitsandbytes"},{"name":"blobfile","old_version":"3.0.0","new_version":"3.3.0","repository_url":"https://github.com/blobfile/blobfile"},{"name":"bm25s","old_version":"0.2.13","new_version":"0.3.11","repository_url":"https://github.com/xhluca/bm25s"},{"name":"boto3","old_version":"1.35.57","new_version":"1.43.85","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.35.57","new_version":"1.43.85","repository_url":"https://github.com/boto/botocore"},{"name":"cffi","old_version":"2.0.0","new_version":"2.1.1","repository_url":"https://github.com/python-cffi/cffi"},{"name":"colorlog","old_version":"6.10.1","new_version":"6.12.0","repository_url":"https://github.com/borntyping/python-colorlog"},{"name":"coverage","old_version":"7.10.6","new_version":"7.16.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cramjam","old_version":"2.9.0","new_version":"2.11.0","repository_url":"https://github.com/milesgranger/pyrus-cramjam"},{"name":"cuda-bindings","old_version":"13.0.3","new_version":"13.3.1","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-pathfinder","old_version":"1.3.3","new_version":"1.8.0","repository_url":"https://github.com/NVIDIA/cuda-python"},{"name":"cuda-toolkit","old_version":"13.0.2","new_version":"13.3.1"},{"name":"datamodel-code-generator","old_version":"0.26.3","new_version":"0.76.0","repository_url":"https://github.com/koxudaxi/datamodel-code-generator"},{"name":"dataproperty","old_version":"1.0.1","new_version":"1.1.1","repository_url":"https://github.com/thombashi/DataProperty"},{"name":"decorator","old_version":"5.1.1","new_version":"5.3.1","repository_url":"https://github.com/micheles/decorator"},{"name":"dill","old_version":"0.3.8","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.3","repository_url":"https://github.com/pypa/distlib"},{"name":"dnspython","old_version":"2.7.0","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"docker","old_version":"7.1.0","new_version":"7.2.0","repository_url":"https://github.com/docker/docker-py"},{"name":"einx","old_version":"0.3.0","new_version":"0.4.3","repository_url":"https://github.com/fferflo/einx"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastsafetensors","old_version":"0.2.2","new_version":"0.3.3","repository_url":"https://github.com/foundation-model-stack/fastsafetensors"},{"name":"fonttools","old_version":"4.55.0","new_version":"4.64.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.5.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"genson","old_version":"1.3.0","new_version":"1.4.0","repository_url":"https://github.com/wolverdude/genson"},{"name":"google-api-core","old_version":"2.24.2","new_version":"2.34.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-auth","old_version":"2.40.2","new_version":"2.57.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-core","old_version":"2.4.3","new_version":"2.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-cloud-storage","old_version":"3.4.0","new_version":"3.13.1","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"google-crc32c","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/googleapis/python-crc32c"},{"name":"google-resumable-media","old_version":"2.7.2","new_version":"2.10.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"googleapis-common-protos","old_version":"1.70.0","new_version":"1.75.2","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.5.5","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"h11","old_version":"0.14.0","new_version":"0.16.0","repository_url":"https://github.com/python-hyper/h11"},{"name":"h2","old_version":"4.3.0","new_version":"4.4.1","repository_url":"https://github.com/python-hyper/h2"},{"name":"harfile","old_version":"0.3.0","new_version":"0.5.0","repository_url":"https://github.com/schemathesis/harfile"},{"name":"hf-xet","old_version":"1.4.3","new_version":"1.6.0","repository_url":"https://github.com/huggingface/xet-core"},{"name":"hiredis","old_version":"3.0.0","new_version":"3.4.1","repository_url":"https://github.com/redis/hiredis-py"},{"name":"hpack","old_version":"4.1.0","new_version":"4.2.0","repository_url":"https://github.com/python-hyper/hpack"},{"name":"httpx","old_version":"0.27.2","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"huggingface-hub","old_version":"1.10.2","new_version":"1.29.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"humanize","old_version":"4.11.0","new_version":"4.16.0","repository_url":"https://github.com/python-humanize/humanize"},{"name":"hypothesis","old_version":"6.131.0","new_version":"6.167.1","repository_url":"https://github.com/HypothesisWorks/hypothesis"},{"name":"hypothesis-graphql","old_version":"0.11.1","new_version":"0.13.1","repository_url":"https://github.com/Stranger6667/hypothesis-graphql"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"joblib","old_version":"1.4.2","new_version":"1.6.0","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonpointer","old_version":"3.0.0","new_version":"3.1.1","repository_url":"https://github.com/stefankoegl/python-json-pointer"},{"name":"jsonschema","old_version":"4.23.0","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"kiwisolver","old_version":"1.4.7","new_version":"1.5.1","repository_url":"https://github.com/nucleic/kiwi"},{"name":"lazy-loader","old_version":"0.4","new_version":"0.5","repository_url":"https://github.com/scientific-python/lazy-loader"},{"name":"llvmlite","old_version":"0.47.0","new_version":"0.49.0","repository_url":"https://github.com/numba/llvmlite"},{"name":"mako","old_version":"1.3.10","new_version":"1.4.1","repository_url":"https://github.com/sqlalchemy/mako"},{"name":"matplotlib","old_version":"3.9.2","new_version":"3.10.9","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mpmath","old_version":"1.3.0","new_version":"1.4.1","repository_url":"https://github.com/mpmath/mpmath"},{"name":"msal","old_version":"1.34.0","new_version":"1.38.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.2.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"mteb","old_version":"2.8.3","new_version":"2.20.5","repository_url":"https://github.com/embeddings-benchmark/mteb"},{"name":"multidict","old_version":"6.1.0","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"mypy-extensions","old_version":"1.0.0","new_version":"1.1.0","repository_url":"https://github.com/python/mypy_extensions"},{"name":"networkx","old_version":"3.2.1","new_version":"3.4.2","repository_url":"https://github.com/networkx/networkx"},{"name":"nltk","old_version":"3.9.1","new_version":"3.10.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nvidia-cublas","old_version":"13.1.0.3","new_version":"13.6.1.10"},{"name":"nvidia-cuda-cupti","old_version":"13.0.85","new_version":"13.3.75"},{"name":"nvidia-cuda-nvrtc","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-cuda-runtime","old_version":"13.0.96","new_version":"13.3.29"},{"name":"nvidia-cudnn-cu13","old_version":"9.19.0.56","new_version":"9.25.1.1"},{"name":"nvidia-cufft","old_version":"12.0.0.61","new_version":"12.3.0.29"},{"name":"nvidia-cufile","old_version":"1.15.1.6","new_version":"1.18.1.6"},{"name":"nvidia-cusolver","old_version":"12.0.4.66","new_version":"12.2.6.9"},{"name":"nvidia-cusparse","old_version":"12.6.3.3","new_version":"12.8.2.51"},{"name":"nvidia-cusparselt-cu13","old_version":"0.8.0","new_version":"0.9.1"},{"name":"nvidia-nccl-cu13","old_version":"2.28.9","new_version":"2.31.2"},{"name":"nvidia-nvjitlink","old_version":"13.0.88","new_version":"13.3.33"},{"name":"nvidia-nvshmem-cu13","old_version":"3.4.5","new_version":"3.7.2"},{"name":"nvidia-nvtx","old_version":"13.0.85","new_version":"13.3.29"},{"name":"opentelemetry-exporter-prometheus","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-proto","old_version":"1.35.0","new_version":"1.44.0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.56b0","new_version":"0.65b0","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"orjson","old_version":"3.11.5","new_version":"3.12.0","repository_url":"https://github.com/ijl/orjson"},{"name":"pathvalidate","old_version":"3.2.1","new_version":"3.3.1","repository_url":"https://github.com/thombashi/pathvalidate"},{"name":"perceptron","old_version":"0.1.4","new_version":"0.3.5","repository_url":"https://github.com/perceptron-ai-inc/perceptron"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"polars","old_version":"1.29.0","new_version":"1.44.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"pooch","old_version":"1.8.2","new_version":"1.9.0","repository_url":"https://github.com/fatiando/pooch"},{"name":"propcache","old_version":"0.2.0","new_version":"0.5.2","repository_url":"https://github.com/aio-libs/propcache"},{"name":"proto-plus","old_version":"1.26.1","new_version":"1.28.4","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"pycryptodomex","old_version":"3.22.0","new_version":"3.23.0","repository_url":"https://github.com/Legrandin/pycryptodome"},{"name":"pydantic-extra-types","old_version":"2.10.5","new_version":"2.11.1","repository_url":"https://github.com/pydantic/pydantic-extra-types"},{"name":"pyjwt","old_version":"2.11.0","new_version":"2.13.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.2.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"pystemmer","old_version":"3.0.0","new_version":"3.1.0","repository_url":"https://github.com/snowballstem/pystemmer"},{"name":"pytest-forked","old_version":"1.6.0","new_version":"1.7.5","repository_url":"https://github.com/pytest-dev/pytest-forked"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-subtests","old_version":"0.14.1","new_version":"0.15.0","repository_url":"https://github.com/pytest-dev/pytest-subtests"},{"name":"pytest-timeout","old_version":"2.3.1","new_version":"2.4.0","repository_url":"https://github.com/pytest-dev/pytest-timeout"},{"name":"python-rapidjson","old_version":"1.20","new_version":"1.23","repository_url":"https://github.com/python-rapidjson/python-rapidjson"},{"name":"rapidfuzz","old_version":"3.12.1","new_version":"3.14.5","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"referencing","old_version":"0.35.1","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"responses","old_version":"0.25.3","new_version":"0.26.3","repository_url":"https://github.com/getsentry/responses"},{"name":"runai-model-streamer-azure","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-gcs","old_version":"0.15.7","new_version":"0.16.1"},{"name":"runai-model-streamer-s3","old_version":"0.15.7","new_version":"0.16.1"},{"name":"s3transfer","old_version":"0.10.3","new_version":"0.19.2","repository_url":"https://github.com/boto/s3transfer"},{"name":"sacrebleu","old_version":"2.4.3","new_version":"2.6.0","repository_url":"https://github.com/mjpost/sacrebleu"},{"name":"scikit-learn","old_version":"1.5.2","new_version":"1.7.2","repository_url":"https://github.com/scikit-learn/scikit-learn"},{"name":"scipy","old_version":"1.13.1","new_version":"1.15.3","repository_url":"https://github.com/scipy/scipy"},{"name":"soundfile","old_version":"0.12.1","new_version":"0.14.0","repository_url":"https://github.com/bastibe/python-soundfile"},{"name":"statsmodels","old_version":"0.14.4","new_version":"0.15.0","repository_url":"https://github.com/statsmodels/statsmodels"},{"name":"sympy","old_version":"1.13.3","new_version":"1.14.0","repository_url":"https://github.com/sympy/sympy"},{"name":"tabulate","old_version":"0.9.0","new_version":"0.10.0","repository_url":"https://github.com/astanin/python-tabulate"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"threadpoolctl","old_version":"3.5.0","new_version":"3.6.0","repository_url":"https://github.com/joblib/threadpoolctl"},{"name":"tomli","old_version":"2.2.1","new_version":"2.4.1","repository_url":"https://github.com/hukkin/tomli"},{"name":"triton","old_version":"3.6.0","new_version":"3.8.0","repository_url":"https://github.com/triton-lang/triton"},{"name":"tritonclient","old_version":"2.64.0","new_version":"2.71.0","repository_url":"https://github.com/triton-inference-server/client"},{"name":"typer","old_version":"0.15.2","new_version":"0.27.2","repository_url":"https://github.com/fastapi/typer"},{"name":"uvicorn","old_version":"0.35.0","new_version":"0.52.4","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"vector-quantize-pytorch","old_version":"1.21.2","new_version":"1.31.1","repository_url":"https://github.com/lucidrains/vector-quantizer-pytorch"},{"name":"wcwidth","old_version":"0.2.13","new_version":"0.8.3","repository_url":"https://github.com/jquast/wcwidth"},{"name":"yarl","old_version":"1.17.1","new_version":"1.24.5","repository_url":"https://github.com/aio-libs/yarl"},{"name":"nvidia-cutlass-dsl","old_version":"4.5.2","new_version":"4.7.1","repository_url":"https://github.com/NVIDIA/cutlass"},{"name":"tokenspeed-mla","old_version":"0.1.2","new_version":"0.2.6","repository_url":"https://github.com/lightseekorg/tokenspeed"},{"name":"zentorch","old_version":"2.11.0.0","new_version":"2.13.0.0","repository_url":"https://github.com/amd/ZenDNN-pytorch-plugin"},{"name":"helion","old_version":"1.0.0","new_version":"1.4.0","repository_url":"https://github.com/pytorch/helion"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-update group with 172 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2026.2.28` | `2026.9.3` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.34.2` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.3` | `4.70.0` |\n| [transformers](https://github.com/huggingface/transformers) | `5.5.3` | `5.16.1` |\n| [tokenizers](https://github.com/huggingface/tokenizers) | `0.22.2` | `0.23.1` |\n| [safetensors](https://github.com/huggingface/safetensors) | `0.7.0` | `0.8.0` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.128.0` | `0.141.1` |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.13.3` | `3.14.3` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.12.0` | `2.13.5` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.22.0` | `0.26.0` |\n| [tiktoken](https://github.com/openai/tiktoken) | `0.12.0` | `0.14.0` |\n| [lark](https://github.com/lark-parser/lark) | `1.2.2` | `1.3.1` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.15.0` | `4.16.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.32.5` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [tpu-inference](https://github.com/vllm-project/tpu-inference) | `0.20.0` | `0.28.0` |\n| [grpcio](https://github.com/grpc/grpc) | `1.78.0` | `1.83.1` |\n| [grpcio-reflection](https://grpc.io) | `1.78.0` | `1.83.1` |\n| [numba](https://github.com/numba/numba) | `0.65.0` | `0.67.0` |\n| [peft](https://github.com/huggingface/peft) | `0.18.1` | `0.20.0` |\n| [tensorizer](https://github.com/coreweave/tensorizer) | `2.10.1` | `2.12.1` |\n| runai-model-streamer | `0.15.7` | `0.16.1` |\n| [conch-triton-kernels](https://github.com/stackav-oss/conch) | `1.2.1` | `1.3` |\n| [annotated-types](https://github.com/annotated-types/annotated-types) | `0.7.0` | `0.8.0` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.0` | `3.5.1` |\n| [click](https://github.com/pallets/click) | `8.1.7` | `8.5.0` |\n| griffelib | `2.0.2` | `2.2.0` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.19` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.11.5` |\n| [pydantic-core](https://github.com/pydantic/pydantic) | `2.41.1` | `2.48.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.18.0` | `2.21.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.12` | `0.16.5` |\n| [six](https://github.com/benjaminp/six) | `1.16.0` | `1.17.0` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.7.0` |\n| [tblib](https://github.com/ionelmc/python-tblib) | `3.1.0` | `3.2.2` |\n| [absl-py](https://github.com/abseil/abseil-py) | `2.1.0` | `2.5.0` |\n| [accelerate](https://github.com/huggingface/accelerate) | `1.13.0` | `1.14.0` |\n| [aiohappyeyeballs](https://github.com/aio-libs/aiohappyeyeballs) | `2.6.1` | `2.7.1` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.16.4` | `1.19.1` |\n| [anyio](https://github.com/agronholm/anyio) | `4.6.2.post1` | `4.14.2` |\n| arctic-inference | `0.1.1` | `0.3.0` |\n| [argcomplete](https://github.com/kislyuk/argcomplete) | `3.5.1` | `3.7.2` |\n| [arrow](https://github.com/arrow-py/arrow) | `1.3.0` | `1.4.0` |\n| [audioread](https://github.com/beetbox/audioread) | `3.0.1` | `3.1.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.41.0` |\n| [azure-storage-blob](https://github.com/Azure/azure-sdk-for-python) | `12.28.0` | `12.30.1` |\n| [bitsandbytes](https://github.com/bitsandbytes-foundation/bitsandbytes) | `0.49.2` | `0.50.2` |\n| [blobfile](https://github.com/blobfile/blobfile) | `3.0.0` | `3.3.0` |\n| [bm25s](https://github.com/xhluca/bm25s) | `0.2.13` | `0.3.11` |\n| [boto3](https://github.com/boto/boto3) | `1.35.57` | `1.43.85` |\n| [botocore](https://github.com/boto/botocore) | `1.35.57` | `1.43.85` |\n| [cffi](https://github.com/python-cffi/cffi) | `2.0.0` | `2.1.1` |\n| [colorlog](https://github.com/borntyping/python-colorlog) | `6.10.1` | `6.12.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.10.6` | `7.16.0` |\n| [cramjam](https://github.com/milesgranger/pyrus-cramjam) | `2.9.0` | `2.11.0` |\n| [cuda-bindings](https://github.com/NVIDIA/cuda-python) | `13.0.3` | `13.3.1` |\n| [cuda-pathfinder](https://github.com/NVIDIA/cuda-python) | `1.3.3` | `1.8.0` |\n| [cuda-toolkit](https://developer.nvidia.com/cuda-toolkit) | `13.0.2` | `13.3.1` |\n| [datamodel-code-generator](https://github.com/koxudaxi/datamodel-code-generator) | `0.26.3` | `0.76.0` |\n| [dataproperty](https://github.com/thombashi/DataProperty) | `1.0.1` | `1.1.1` |\n| [decorator](https://github.com/micheles/decorator) | `5.1.1` | `5.3.1` |\n| [dill](https://github.com/uqfoundation/dill) | `0.3.8` | `0.4.1` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.3` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.7.0` | `2.8.0` |\n| [docker](https://github.com/docker/docker-py) | `7.1.0` | `7.2.0` |\n| [einx](https://github.com/fferflo/einx) | `0.3.0` | `0.4.3` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastsafetensors](https://github.com/foundation-model-stack/fastsafetensors) | `0.2.2` | `0.3.3` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.55.0` | `4.64.0` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.5.0` | `1.8.0` |\n| [genson](https://github.com/wolverdude/genson) | `1.3.0` | `1.4.0` |\n| [google-api-core](https://github.com/googleapis/google-cloud-python) | `2.24.2` | `2.34.0` |\n| [google-auth](https://github.com/googleapis/google-cloud-python) | `2.40.2` | `2.57.0` |\n| [google-cloud-core](https://github.com/googleapis/google-cloud-python) | `2.4.3` | `2.7.0` |\n| [google-cloud-storage](https://github.com/googleapis/google-cloud-python) | `3.4.0` | `3.13.1` |\n| [google-crc32c](https://github.com/googleapis/python-crc32c) | `1.7.1` | `1.8.0` |\n| [google-resumable-media](https://github.com/googleapis/google-cloud-python) | `2.7.2` | `2.10.2` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.70.0` | `1.75.2` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.5.5` |\n| [h11](https://github.com/python-hyper/h11) | `0.14.0` | `0.16.0` |\n| [h2](https://github.com/python-hyper/h2) | `4.3.0` | `4.4.1` |\n| [harfile](https://github.com/schemathesis/harfile) | `0.3.0` | `0.5.0` |\n| [hf-xet](https://github.com/huggingface/xet-core) | `1.4.3` | `1.6.0` |\n| [hiredis](https://github.com/redis/hiredis-py) | `3.0.0` | `3.4.1` |\n| [hpack](https://github.com/python-hyper/hpack) | `4.1.0` | `4.2.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.2` | `0.28.1` |\n| [huggingface-hub](https://github.com/huggingface/huggingface_hub) | `1.10.2` | `1.29.0` |\n| [humanize](https://github.com/python-humanize/humanize) | `4.11.0` | `4.16.0` |\n| [hypothesis](https://github.com/HypothesisWorks/hypothesis) | `6.131.0` | `6.167.1` |\n| [hypothesis-graphql](https://github.com/Stranger6667/hypothesis-graphql) | `0.11.1` | `0.13.1` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.3.0` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.4.2` | `1.6.0` |\n| [jsonpointer](https://github.com/stefankoegl/python-json-pointer) | `3.0.0` | `3.1.1` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.23.0` | `4.26.0` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.7` | `1.5.1` |\n| [lazy-loader](https://github.com/scientific-python/lazy-loader) | `0.4` | `0.5` |\n| [llvmlite](https://github.com/numba/llvmlite) | `0.47.0` | `0.49.0` |\n| [mako](https://github.com/sqlalchemy/mako) | `1.3.10` | `1.4.1` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.9.2` | `3.10.9` |\n| [mpmath](https://github.com/mpmath/mpmath) | `1.3.0` | `1.4.1` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.34.0` | `1.38.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.2.2` |\n| [mteb](https://github.com/embeddings-benchmark/mteb) | `2.8.3` | `2.20.5` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.1.0` | `6.7.1` |\n| [mypy-extensions](https://github.com/python/mypy_extensions) | `1.0.0` | `1.1.0` |\n| [networkx](https://github.com/networkx/networkx) | `3.2.1` | `3.4.2` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.1` | `3.10.3` |\n| [nvidia-cublas](https://developer.nvidia.com/cuda-zone) | `13.1.0.3` | `13.6.1.10` |\n| [nvidia-cuda-cupti](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.75` |\n| [nvidia-cuda-nvrtc](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-cuda-runtime](https://developer.nvidia.com/cuda-zone) | `13.0.96` | `13.3.29` |\n| [nvidia-cudnn-cu13](https://developer.nvidia.com/cuda-zone) | `9.19.0.56` | `9.25.1.1` |\n| [nvidia-cufft](https://developer.nvidia.com/cuda-zone) | `12.0.0.61` | `12.3.0.29` |\n| [nvidia-cufile](https://developer.nvidia.com/cuda-zone) | `1.15.1.6` | `1.18.1.6` |\n| [nvidia-cusolver](https://developer.nvidia.com/cuda-zone) | `12.0.4.66` | `12.2.6.9` |\n| [nvidia-cusparse](https://developer.nvidia.com/cuda-zone) | `12.6.3.3` | `12.8.2.51` |\n| [nvidia-cusparselt-cu13](https://developer.nvidia.com/cusparselt) | `0.8.0` | `0.9.1` |\n| [nvidia-nccl-cu13](https://developer.nvidia.com/cuda-zone) | `2.28.9` | `2.31.2` |\n| [nvidia-nvjitlink](https://developer.nvidia.com/cuda-zone) | `13.0.88` | `13.3.33` |\n| [nvidia-nvshmem-cu13](https://developer.nvidia.com/cuda-zone) | `3.4.5` | `3.7.2` |\n| [nvidia-nvtx](https://developer.nvidia.com/cuda-zone) | `13.0.85` | `13.3.29` |\n| [opentelemetry-exporter-prometheus](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.35.0` | `1.44.0` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.56b0` | `0.65b0` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.5` | `3.12.0` |\n| [pathvalidate](https://github.com/thombashi/pathvalidate) | `3.2.1` | `3.3.1` |\n| [perceptron](https://github.com/perceptron-ai-inc/perceptron) | `0.1.4` | `0.3.5` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [polars](https://github.com/pola-rs/polars) | `1.29.0` | `1.44.1` |\n| [pooch](https://github.com/fatiando/pooch) | `1.8.2` | `1.9.0` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.2.0` | `0.5.2` |\n| [proto-plus](https://github.com/googleapis/google-cloud-python) | `1.26.1` | `1.28.4` |\n| [pycryptodomex](https://github.com/Legrandin/pycryptodome) | `3.22.0` | `3.23.0` |\n| [pydantic-extra-types](https://github.com/pydantic/pydantic-extra-types) | `2.10.5` | `2.11.1` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.11.0` | `2.13.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.0` | `3.3.2` |\n| [pystemmer](https://github.com/snowballstem/pystemmer) | `3.0.0` | `3.1.0` |\n| [pytest-forked](https://github.com/pytest-dev/pytest-forked) | `1.6.0` | `1.7.5` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-subtests](https://github.com/pytest-dev/pytest-subtests) | `0.14.1` | `0.15.0` |\n| [pytest-timeout](https://github.com/pytest-dev/pytest-timeout) | `2.3.1` | `2.4.0` |\n| [python-rapidjson](https://github.com/python-rapidjson/python-rapidjson) | `1.20` | `1.23` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.12.1` | `3.14.5` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.35.1` | `0.37.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.3` | `0.26.3` |\n| runai-model-streamer-azure | `0.15.7` | `0.16.1` |\n| runai-model-streamer-gcs | `0.15.7` | `0.16.1` |\n| runai-model-streamer-s3 | `0.15.7` | `0.16.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.10.3` | `0.19.2` |\n| [sacrebleu](https://github.com/mjpost/sacrebleu) | `2.4.3` | `2.6.0` |\n| [scikit-learn](https://github.com/scikit-learn/scikit-learn) | `1.5.2` | `1.7.2` |\n| [scipy](https://github.com/scipy/scipy) | `1.13.1` | `1.15.3` |\n| [soundfile](https://github.com/bastibe/python-soundfile) | `0.12.1` | `0.14.0` |\n| [statsmodels](https://github.com/statsmodels/statsmodels) | `0.14.4` | `0.15.0` |\n| [sympy](https://github.com/sympy/sympy) | `1.13.3` | `1.14.0` |\n| [tabulate](https://github.com/astanin/python-tabulate) | `0.9.0` | `0.10.0` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [threadpoolctl](https://github.com/joblib/threadpoolctl) | `3.5.0` | `3.6.0` |\n| [tomli](https://github.com/hukkin/tomli) | `2.2.1` | `2.4.1` |\n| [triton](https://github.com/triton-lang/triton) | `3.6.0` | `3.8.0` |\n| [tritonclient](https://github.com/triton-inference-server/client) | `2.64.0` | `2.71.0` |\n| [typer](https://github.com/fastapi/typer) | `0.15.2` | `0.27.2` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.35.0` | `0.52.4` |\n| [vector-quantize-pytorch](https://github.com/lucidrains/vector-quantizer-pytorch) | `1.21.2` | `1.31.1` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.13` | `0.8.3` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.24.5` |\n| [nvidia-cutlass-dsl](https://github.com/NVIDIA/cutlass) | `4.5.2` | `4.7.1` |\n| [tokenspeed-mla](https://github.com/lightseekorg/tokenspeed) | `0.1.2` | `0.2.6` |\n| [zentorch](https://github.com/amd/ZenDNN-pytorch-plugin) | `2.11.0.0` | `2.13.0.0` |\n| [helion](https://github.com/pytorch/helion) | `1.0.0` | `1.4.0` |\n\n\nUpdates `regex` from 2026.2.28 to 2026.9.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mrabarnett/mrab-regex/blob/hg/changelog.txt\"\u003eregex's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eVersion: 2026.9.3\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer supports building for free-threaded Python 3.13.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.2\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew version of cibuildwheel no longer needs nor supports cpython-freethreading option.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.9.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eUpdated cibuildwheel.\nSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.31\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eFixed version.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.30\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 611: Heap out-of-bounds write at compile time\nGit issue 612: count_one() size underflow through the stale required-string cache\nGit issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\nGit issue 614: build_GROUP() does not propagate the match direction\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.8.12\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eSupport Python 3.15.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eGit issue 607: SIGSEGV: NULL pointer dereference in `basic_match()` when `(?R)`/`(?0)` recursion is used inside a fuzzy-matching quantifier\nGit issue 608: SIGSEGV: out-of-bounds read in `bytes1_char_at()` with `DOTALL` + a fuzzy constraint + `(?r)` reverse-direction matching\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.7.10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eClarified that the POSIX flag makes it look for only the longest overall match.\n\u003cp\u003eGit issue 606: \u003ccode\u003eregex\u003c/code\u003e's compiled-pattern cache eviction is not free-threading-safe\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVersion: 2026.6.28\u003c/p\u003e\n\u003cp\u003eGit issue 604: regex fails on free-threading python because setlocale is not thread-safe\u003c/p\u003e\n\u003cp\u003eVersion: 2026.5.9\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eReverse matching with full unicode casefolding could lead to out-of-range string indexes.\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eVersion: 2026.4.4\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eA fix for older Python versions before free-threading was  supported.\n\u003c/code\u003e\u003c/pre\u003e\n\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/mrabarnett/mrab-regex/commit/57f366fdbd9b8346d3b1a95b99cd81a9e91db367\"\u003e\u003ccode\u003e57f366f\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer supports building for free-threaded Pyt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/a1d72bace2f7222e310b32c595771686a59d0388\"\u003e\u003ccode\u003ea1d72ba\u003c/code\u003e\u003c/a\u003e New version of cibuildwheel no longer needs nor supports cpython-freethreadin...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/c8d0aa48f52feb6512c3a3ac6e02f4c7ec6363e0\"\u003e\u003ccode\u003ec8d0aa4\u003c/code\u003e\u003c/a\u003e Updated cibuildwheel. Support Python 3.15.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b283bb2b038cef571bfe49b2a76415cf4005ddfc\"\u003e\u003ccode\u003eb283bb2\u003c/code\u003e\u003c/a\u003e Updated version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/5268ae7bd178828d6b710125a8089e548ca51b61\"\u003e\u003ccode\u003e5268ae7\u003c/code\u003e\u003c/a\u003e Python 3.15 not released yet\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/9398a6da5630aa9af67775e95802d2c5625606cd\"\u003e\u003ccode\u003e9398a6d\u003c/code\u003e\u003c/a\u003e Git issue 614: build_GROUP() does not propagate the match direction\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/b77694aec629ca66bfe416e5f83561d52bd08ae8\"\u003e\u003ccode\u003eb77694a\u003c/code\u003e\u003c/a\u003e Git issue 613: (*SKIP) inside an atomic group, plus an equality-only scan stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/8244055e30dbfe4aa96ebff39ad78fabbcdf93a7\"\u003e\u003ccode\u003e8244055\u003c/code\u003e\u003c/a\u003e Git issue 612: count_one() size underflow through the stale required-string c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1c90270fb50c542a24d16c4848fc2b7b951bbd2d\"\u003e\u003ccode\u003e1c90270\u003c/code\u003e\u003c/a\u003e Git issue 611: Heap out-of-bounds write at compile time\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mrabarnett/mrab-regex/commit/1760a20647f1c2ddcc025128407fe6f7edb905a1\"\u003e\u003ccode\u003e1760a20\u003c/code\u003e\u003c/a\u003e Support Python 3.15.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mrabarnett/mrab-regex/compare/2026.2.28...2026.9.3\"\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.34.2\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.34.2\u003c/h2\u003e\n\u003ch2\u003e2.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues with \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling \u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2342-2026-05-14\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.1\u003c/h2\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\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/k223kim\"\u003e\u003ccode\u003e@​k223kim\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7433\"\u003epsf/requests#7433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2341-2026-05-13\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.34.0\u003c/h2\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. \u003cstrong\u003eWe believe types are comprehensive but if you find issues, please\nreport them to the \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003epinned tracking issue\u003c/a\u003e.\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\u003c/li\u003e\n\u003c/ul\u003e\n\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.34.2 (2026-05-14)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMoved \u003ccode\u003eheaders\u003c/code\u003e input type back to \u003ccode\u003eMapping\u003c/code\u003e to avoid invariance issues\nwith \u003ccode\u003eMutableMapping\u003c/code\u003e and inferred dict types. Users calling\n\u003ccode\u003eRequest.headers.update()\u003c/code\u003e may need to narrow typing in their code. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.1 (2026-05-13)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWidened \u003ccode\u003ejson\u003c/code\u003e input type from \u003ccode\u003edict\u003c/code\u003e and \u003ccode\u003elist\u003c/code\u003e to \u003ccode\u003eMapping\u003c/code\u003e\nand \u003ccode\u003eSequence\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eheaders\u003c/code\u003e input type to MutableMapping and removed \u003ccode\u003eNone\u003c/code\u003e from\n\u003ccode\u003eRequest.headers\u003c/code\u003e typing to improve handling for users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eResponse.reason\u003c/code\u003e moved from \u003ccode\u003estr | None\u003c/code\u003e to \u003ccode\u003estr\u003c/code\u003e to improve handling\nfor users. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed a bug where some bodies with custom \u003ccode\u003e__getattr__\u003c/code\u003e implementations\nweren't being properly detected as Iterables. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7433\"\u003e#7433\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.34.0 (2026-05-11)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRequests 2.34.0 introduces inline types, replacing those provided by\ntypeshed. Public API types should be fully compatible with mypy, pyright,\nand ty. We believe types are comprehensive but if you find issues, please\nreport them to the pinned tracking issue.\u003c/p\u003e\n\u003cp\u003eSpecial thanks to \u003ca href=\"https://github.com/bastimeyer\"\u003e\u003ccode\u003e@​bastimeyer\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cthoyt\"\u003e\u003ccode\u003e@​cthoyt\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e, and \u003ca href=\"https://github.com/srittau\"\u003e\u003ccode\u003e@​srittau\u003c/code\u003e\u003c/a\u003e for\nhelping review and test the types ahead of the release. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7272\"\u003e#7272\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDigest Auth hashing algorithms have added \u003ccode\u003eusedforsecurity=False\u003c/code\u003e to clarify\nsecurity considerations. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7310\"\u003e#7310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.15 based on beta1. Downstream projects\nshould be able to start testing prior to its release in October. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7422\"\u003e#7422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests added support for Python 3.14t. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7419\"\u003e#7419\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eResponse.history\u003c/code\u003e no longer contains a reference to itself, preventing\naccidental looping when traversing the history list. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7328\"\u003e#7328\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer performs greedy matching on no_proxy domains. The\nproxy_bypass implementation has been updated with CPython's fix from\nbpo-39057. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequests no longer incorrectly strips duplicate leading slashes in\nURI paths. This should address user issues with specific presigned\nURLs. Note the full fix requires urllib3 2.7.0+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7315\"\u003e#7315\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\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/6e83187b8feb273ed4c6cdab5efd8d54901dfab3\"\u003e\u003ccode\u003e6e83187\u003c/code\u003e\u003c/a\u003e v2.34.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/84d10f0be83e8f6aeca8a05230c52216431c4d0b\"\u003e\u003ccode\u003e84d10f0\u003c/code\u003e\u003c/a\u003e Move Request.headers back to Mapping (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7441\"\u003e#7441\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b7b549b54571d03950b16afd2d01bc6ff0348224\"\u003e\u003ccode\u003eb7b549b\u003c/code\u003e\u003c/a\u003e v2.34.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e511bc72777a94c45d004e010c597925092e1efe\"\u003e\u003ccode\u003ee511bc7\u003c/code\u003e\u003c/a\u003e Fix mutability issues with headers input types (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7431\"\u003e#7431\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5691f596134c2feb121e595c77a0178921fcce61\"\u003e\u003ccode\u003e5691f59\u003c/code\u003e\u003c/a\u003e Update JsonType containers to read-based collections (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7436\"\u003e#7436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2144213c307691710c9d665700860fc4993c3035\"\u003e\u003ccode\u003e2144213\u003c/code\u003e\u003c/a\u003e Constrain Response.reason to str (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7437\"\u003e#7437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6404f345e562d962abe6700a1c357ec1e7e18232\"\u003e\u003ccode\u003e6404f34\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eprepare_body\u003c/code\u003e stream detection for \u003ccode\u003e__getattr__\u003c/code\u003e-based file wrappers (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7\"\u003e#7\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/0b401c76b6e80a4eecf3c690085b2553f6e261ca\"\u003e\u003ccode\u003e0b401c7\u003c/code\u003e\u003c/a\u003e v2.34.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/86b378d3f60f828daa13ca50aa82e287ff7b66b4\"\u003e\u003ccode\u003e86b378d\u003c/code\u003e\u003c/a\u003e Align Session.get parameters with requests.get (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7429\"\u003e#7429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a4f9a5999bdb9bf2d6e7c8aa973b28cacb17134f\"\u003e\u003ccode\u003ea4f9a59\u003c/code\u003e\u003c/a\u003e Port bpo-39057 to Requests (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7427\"\u003e#7427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.34.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tqdm` from 4.67.3 to 4.70.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tqdm/tqdm/releases\"\u003etqdm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003etqdm v4.70.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.concurrent\u003c/code\u003e: major improvements\n\u003cul\u003e\n\u003cli\u003esupport \u003ccode\u003eprocess_map(mp_context, max_tasks_per_child)\u003c/code\u003e, \u003ccode\u003ethread_map(thread_name_prefix)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1265\"\u003e#1265\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal\u003c/code\u003e based on shortest iterable length (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1473\"\u003e#1473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse default \u003ccode\u003emax_workers\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1543\"\u003e#1543\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1530\"\u003e#1530\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1518\"\u003e#1518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003etimeout\u003c/code\u003e, \u003ccode\u003ebuffersize\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eimprove ETA (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1708\"\u003e#1708\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1161\"\u003e#1161\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate \u003ccode\u003eas_completed\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1709\"\u003e#1709\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1565\"\u003e#1565\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.concurrent.intepreter_map\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003easyncio\u003c/code\u003e: support iterables with only \u003ccode\u003e__aiter__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1714\"\u003e#1714\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1686\"\u003e#1686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003esupport \u003ccode\u003ereset(float(\u0026quot;inf\u0026quot;))\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eframework: test \u0026amp; reduce wheel size (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1782\"\u003e#1782\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.1 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003econtrib.logging\u003c/code\u003e: preserve filters (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1775\"\u003e#1775\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003erich\u003c/code\u003e: misc fixes (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1773\"\u003e#1773\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003esupport generators (without \u003ccode\u003elen\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1391\"\u003e#1391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etotal=float('inf')\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1781\"\u003e#1781\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/651\"\u003e#651\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix potential \u003ccode\u003eAttributeError\u003c/code\u003e on exit (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1778\"\u003e#1778\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1668\"\u003e#1668\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1537\"\u003e#1537\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/261\"\u003e#261\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix minor docs typos (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1780\"\u003e#1780\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1746\"\u003e#1746\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.69.0 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd \u003ccode\u003etqdm.asyncio.gather(..., return_exceptions=False)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1776\"\u003e#1776\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1671\"\u003e#1671\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003ebump workflow actions \u0026amp; pre-commit hooks\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.4 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003etrim to \u003ccode\u003encols\u003c/code\u003e even when \u003ccode\u003e'{bar}' not in bar_format\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1717\"\u003e#1717\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1767\"\u003e#1767\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1658\"\u003e#1658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix \u003ccode\u003etqdm.write\u003c/code\u003e when \u003ccode\u003estdout=None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1768\"\u003e#1768\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1654\"\u003e#1654\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.3 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e: delay \u003ccode\u003eos.get_terminal_size\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eautonotebook\u003c/code\u003e: support QtConsole, Spyder, JupyterLite (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1763\"\u003e#1763\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1628\"\u003e#1628\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1559\"\u003e#1559\u003c/a\u003e \u0026lt;- \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1283\"\u003e#1283\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1098\"\u003e#1098\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/512\"\u003e#512\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eminor docs updates\n\u003cul\u003e\n\u003cli\u003efix typo (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1762\"\u003e#1762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse \u003ccode\u003egit-fame\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc minor framework updates\n\u003cul\u003e\n\u003cli\u003efix \u0026amp; update CI build\u003c/li\u003e\n\u003cli\u003epre-commit: add docs \u0026amp; metadata generation\u003c/li\u003e\n\u003cli\u003emove \u003ccode\u003etox.ini\u003c/code\u003e -\u0026gt; \u003ccode\u003epyproject.toml\u003c/code\u003e, move \u003ccode\u003etox-gh-actions\u003c/code\u003e -\u0026gt; \u003ccode\u003etox-gh\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eadd Python 3.14, drop 3.7 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003etqdm v4.68.2 stable\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003erevert accidental change to \u003ccode\u003eascii\u003c/code\u003e default (fixes \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1760\"\u003e#1760\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eUnicodeEncodeError: 'charmap' codec can't encode characters in position 6-7: character maps to \u0026lt;undefined\u0026gt;\u003c/code\u003e can be fixed by installing \u003ccode\u003etqdm!=4.68.0,!=4.68.1\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003emisc docs updates\n\u003cul\u003e\n\u003cli\u003efix links\u003c/li\u003e\n\u003cli\u003ereplace stray \u003ccode\u003erst\u003c/code\u003e -\u0026gt; \u003ccode\u003emd\u003c/code\u003e syntax\u003c/li\u003e\n\u003cli\u003econsistent \u0026quot;progress bar\u0026quot; terminology (\u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1737\"\u003e#1737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\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/tqdm/tqdm/commit/96f2e60e4584cdab57a23602e27043d0465254ad\"\u003e\u003ccode\u003e96f2e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1777\"\u003e#1777\u003c/a\u003e from shermansiu/feat/interpreter-pool\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/c27393ec3a0a91d83dd53f04b80ee61f9c0cd5e4\"\u003e\u003ccode\u003ec27393e\u003c/code\u003e\u003c/a\u003e misc tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/061c6236d56f8c1ed0934606c3b4ee5c59cf122e\"\u003e\u003ccode\u003e061c623\u003c/code\u003e\u003c/a\u003e Disable \u003ccode\u003etqdm.monitor_interval\u003c/code\u003e for subinterpreters because they do not have ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9fc160ba7f959f955058985b0d1122fc9f0b2729\"\u003e\u003ccode\u003e9fc160b\u003c/code\u003e\u003c/a\u003e Update how we check for \u003ccode\u003einterpreter_map\u003c/code\u003e support in the tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/b42463a20fffc17ad4df2aa145076afb0dc4486d\"\u003e\u003ccode\u003eb42463a\u003c/code\u003e\u003c/a\u003e Ensure that subinterpreters can import tqdm while unpickling the initializer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/16d5486c402a2808ec9c398538e0bc56d00866de\"\u003e\u003ccode\u003e16d5486\u003c/code\u003e\u003c/a\u003e Add support for nested progress bars\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/9f5890fda6cf43e66782fbf34647f808bdc66d58\"\u003e\u003ccode\u003e9f5890f\u003c/code\u003e\u003c/a\u003e Add initial implementation for interpreter_map\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/321f920bb7368e27eee04fed1c0de2a8a236fd9d\"\u003e\u003ccode\u003e321f920\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/tqdm/tqdm/issues/1783\"\u003e#1783\u003c/a\u003e from LuShadowX/reset-inf-total\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/4664b5701ebc5299290a1fb31a229fb1bfc64703\"\u003e\u003ccode\u003e4664b57\u003c/code\u003e\u003c/a\u003e minor tidy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tqdm/tqdm/commit/426a0988a1e9970041f5a649ae8a6376c5293fbe\"\u003e\u003ccode\u003e426a098\u003c/code\u003e\u003c/a\u003e Treat inf total as unknown in reset() too\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tqdm/tqdm/compare/v4.67.3...v4.70.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `transformers` from 5.5.3 to 5.16.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/transformers/releases\"\u003etransformers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease v5.16.1\u003c/h1\u003e\n\u003cp\u003eThis is a special release as we include GLM! (and a few small fixes)\u003c/p\u003e\n\u003ch1\u003eGLM-5.3-Flash\u003c/h1\u003e\n\n\u003cp\u003eGLM-5.3-Flash, the first \u003cstrong\u003enatively multimodal model\u003c/strong\u003e in the GLM-5 series. With 320B total parameters and just 18B active parameters, it outperforms GLM-5.2 across benchmarks and real-world workloads at one-tenth the price, while approaching Claude Opus 4.8 on coding and agentic benchmarks.\u003c/p\u003e\n\u003cp\u003eGLM-5.3-Flash starts from a newly trained base model, with its architecture and training recipe redesigned around capability and efficiency. For the first time in the GLM series, we introduce a hybrid architecture combining sparse and linear attention, sharply reducing long-context serving costs while preserving precise long-context capabilities. The model also adopts Manifold-Constrained Hyper-Connections (mHC) to further improve scaling efficiency. Together with our latest \u003cstrong\u003e30T-token\u003c/strong\u003e multimodal pre-training corpus, these changes enable GLM-5.3-Flash to deliver more intelligence with less compute.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/glm5_next\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e[Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e) by \u003ca href=\"https://github.com/Dovis01\"\u003e\u003ccode\u003e@​Dovis01\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48342\"\u003e#48342\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eSmall patch fixes\u003c/h2\u003e\n\u003cp\u003eMainly BC behavior for TP and pinning a hf kernel for security reasons :hugs:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRestore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e) by \u003ca href=\"https://github.com/ArthurZucker\"\u003e\u003ccode\u003e@​ArthurZucker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e) by \u003ca href=\"https://github.com/Rocketknight1\"\u003e\u003ccode\u003e@​Rocketknight1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\"\u003ehttps://github.com/huggingface/transformers/compare/v5.16.0...v5.16.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease: v5.16.0\u003c/h2\u003e\n\u003ch1\u003eRelease v5.16.0\u003c/h1\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eQwen4-Exp\u003c/h3\u003e\n\n\u003cp\u003eQwen4-Exp builds on Qwen3.5's hybrid text and multimodal architecture with three key components: GatedResidual (GR), Qwen Sparse Attention (QSA), and Per-Layer Embedding (PLE).\u003c/p\u003e\n\u003cp\u003eGR is a Qwen-developed residual architecture that combines Hyper-Connection with GatedNorm. It mixes multiple residual streams with fine-grained elementwise gating before each attention and Mixture-of-Experts (MoE) block, then controls how much of the block output is injected back into each stream.\u003c/p\u003e\n\u003cp\u003eQSA uses multiple query heads to score compressed key blocks, selects the most relevant contiguous token blocks, and keeps the incomplete trailing block uncompressed. This block-level selection reduces indexing overhead and improves memory locality for long sequences. Combined with Gated DeltaNet, QSA makes Qwen4-Exp the first hybrid architecture to integrate linear and sparse attention, substantially improving inference efficiency for long-context workloads.\u003c/p\u003e\n\u003cp\u003ePLE enriches selected decoder layers with layer-specific lexical features derived from hashed token n-grams and a dilated depthwise convolution.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/qwen4_exp\"\u003eDocumentation\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e) by \u003ca href=\"https://github.com/Cyrilvallez\"\u003e\u003ccode\u003e@​Cyrilvallez\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/48337\"\u003e#48337\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eGraniteSpeech5\u003c/h3\u003e\n\n\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/huggingface/transformers/commit/93c8b7b485963a10800c91f55304db6be211c2bd\"\u003e\u003ccode\u003e93c8b7b\u003c/code\u003e\u003c/a\u003e v5.16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/cdaca8380b718fcc9cec579feaa3833bd264920c\"\u003e\u003ccode\u003ecdaca83\u003c/code\u003e\u003c/a\u003e [Glm 5.3 Flash] GLM 5.3 Flash Support (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48342\"\u003e#48342\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b366ad34f84cb6f03a553335b3914a221e4d0323\"\u003e\u003ccode\u003eb366ad3\u003c/code\u003e\u003c/a\u003e Fix kernel commit and repo paths for ESMFold2 (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48186\"\u003e#48186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/f2f43275cf494d20cc830983646082d2c1e06702\"\u003e\u003ccode\u003ef2f4327\u003c/code\u003e\u003c/a\u003e Restore BC for the tensor-parallel API (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48300\"\u003e#48300\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/93d1bcfbd2af5798e2f66bf7955e31a537902b64\"\u003e\u003ccode\u003e93d1bcf\u003c/code\u003e\u003c/a\u003e release: v5.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/276c5c47d31bf2a600051a93177242d7070511f1\"\u003e\u003ccode\u003e276c5c4\u003c/code\u003e\u003c/a\u003e Add Qwen4Exp model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48337\"\u003e#48337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/d3cdaec47d0b8c9c1eaa0cd89c2c3303a977a02d\"\u003e\u003ccode\u003ed3cdaec\u003c/code\u003e\u003c/a\u003e Fix video-llama modular conversion (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48336\"\u003e#48336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/949e301b5e7ec03043be0b5e537700aec2ee2f87\"\u003e\u003ccode\u003e949e301\u003c/code\u003e\u003c/a\u003e CI: gate the hunyuan-moe slow test  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48330\"\u003e#48330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5fcf605fda6c7c3982f62807f2eda210aa37e9e1\"\u003e\u003ccode\u003e5fcf605\u003c/code\u003e\u003c/a\u003e Add a regression test for force_accelerate_hooks signature preservation  (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/48\"\u003e#48\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/27e7f6c81a67bae6f706098083cbe9c64aba8def\"\u003e\u003ccode\u003e27e7f6c\u003c/code\u003e\u003c/a\u003e Add an opt-in per-frame pixel cap (cap_pixels_per_frame) to the Qwen3-VL vide...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v5.5.3...v5.16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `tokenizers` from 0.22.2 to 0.23.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/tokenizers/releases\"\u003etokenizers's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v0.23.1\u003c/h2\u003e\n\u003ch2\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003e\u003ccode\u003etokenizers 0.23.1\u003c/code\u003e is the first proper stable release in the \u003ccode\u003e0.23\u003c/code\u003e line — \u003ccode\u003e0.23.0\u003c/code\u003e only ever shipped as \u003ccode\u003erc0\u003c/code\u003e because the release pipeline itself was broken (Node side hadn't shipped multi-platform binaries since 2023, Python side was on \u003ccode\u003epyo3 0.27\u003c/code\u003e without free-threaded support). \u003ccode\u003e0.23.1\u003c/code\u003e is the version where everything actually goes out the door together: full Node multi-platform wheels for the first time in years, Python 3.14 (regular \u003cstrong\u003eand\u003c/strong\u003e free-threaded \u003ccode\u003e3.14t\u003c/code\u003e), full type hints for every Python class, and a stack of measurable perf wins on the BPE / added-vocab hot paths.\u003c/p\u003e\n\u003cp\u003eThere is no functional \u003ccode\u003e0.23.0\u003c/code\u003e published — we tag \u003ccode\u003e0.23.1\u003c/code\u003e directly so users don't accidentally pull a never-shipped version.\u003c/p\u003e\n\u003chr /\u003e\n\u003ch2\u003e🚨 Breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eDrop Python 3.9\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1952\"\u003e#1952\u003c/a\u003e) — \u003ccode\u003erequires-python = \u0026quot;\u0026gt;=3.10\u0026quot;\u003c/code\u003e; 3.9 users stay on \u003ccode\u003e0.22.x\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e\u003ccode\u003eadd_tokens\u003c/code\u003e normalizes \u003ccode\u003econtent\u003c/code\u003e at insertion\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e) — re-saved \u003ccode\u003etokenizer.json\u003c/code\u003e may differ in the \u003ccode\u003eadded_tokens\u003c/code\u003e block. Existing files load unchanged.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eType stubs are precise\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1928\"\u003e#1928\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1997\"\u003e#1997\u003c/a\u003e) — methods that returned \u003ccode\u003eAny\u003c/code\u003e now return real types; \u003ccode\u003emypy --strict\u003c/code\u003e may surface previously-hidden errors. Stub layout also moved from \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;/__init__.pyi\u003c/code\u003e to \u003ccode\u003etokenizers/\u0026lt;sub\u0026gt;.pyi\u003c/code\u003e. This breaks the surface of some of the processors like \u003ccode\u003eRobertaProcessign\u003c/code\u003e's \u003ccode\u003e__init__\u003c/code\u003e .\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003e3.14t-only\u003c/strong\u003e: setters/getters return \u003ccode\u003ePyResult\u0026lt;T\u0026gt;\u003c/code\u003e because of \u003ccode\u003eArc\u0026lt;RwLock\u0026lt;Tokenizer\u0026gt;\u0026gt;\u003c/code\u003e; a poisoned lock surfaces as \u003ccode\u003ePyException\u003c/code\u003e instead of a panic.\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e⚡ Performance — measured locally on this Mac, not lifted from PRs\u003c/h2\u003e\n\u003cp\u003eRun with \u003ccode\u003ecargo bench --bench \u0026lt;name\u0026gt; -- --save-baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.22.2\u003c/code\u003e, then \u003ccode\u003e--baseline v0_22_2\u003c/code\u003e on \u003ccode\u003ev0.23.1\u003c/code\u003e. Numbers are point-in-time wall clock on a single laptop; relative deltas are what matters, absolute numbers will differ on CI hardware.\u003c/p\u003e\n\u003ch3\u003eAdded-vocabulary deserialize — the headline win (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1995\"\u003e#1995\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/1999\"\u003e#1999\u003c/a\u003e)\u003c/h3\u003e\n\u003cp\u003e\u003ccode\u003ebench: improve added_vocab_deserialize to reflect real-world workloads\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2000\"\u003e#2000\u003c/a\u003e) is now representative of how transformers actually loads tokenizer.json files. The combined effect of \u003ccode\u003edaachorse\u003c/code\u003e for the matching automaton plus the normalize-on-insert refactor is enormous on this workload:\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~410 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e248 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.1 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e273 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~395 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e235 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−40%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e100k tokens, non-special, NFKC\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~7.4 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e290 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−96%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e400k tokens, special, no norm\u003c/td\u003e\n\u003ctd align=\"right\"\u003e~15 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e980 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−94%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eReal-world impact: loading a Llama-3-style tokenizer with a large set of added tokens dropped from \u0026quot;noticeable pause\u0026quot; to \u0026quot;instant\u0026quot;.\u003c/p\u003e\n\u003ch3\u003eBPE encode\u003c/h3\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003ebenchmark\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.22.2\u003c/th\u003e\n\u003cth align=\"right\"\u003ev0.23.1\u003c/th\u003e\n\u003cth align=\"right\"\u003echange\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch, no cache\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e530 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e446 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e\u003cstrong\u003e−16%\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode batch\u003c/code\u003e (cached)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e690 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e685 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE GPT2 encode\u003c/code\u003e (single)\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.95 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.94 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003enoise\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (small)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e32.6 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e31.5 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−3%\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ccode\u003eBPE Train (big)\u003c/code\u003e\u003c/td\u003e\n\u003ctd align=\"right\"\u003e1.01 s\u003c/td\u003e\n\u003ctd align=\"right\"\u003e988 ms\u003c/td\u003e\n\u003ctd align=\"right\"\u003e−2%\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eThe BPE per-thread cache PR (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e) shows much larger wins on highly-parallel workloads (+47–62% at 88+ threads on a server box, per the PR's own measurements on Vera). Single-thread batch numbers above are flat or slightly improved because cache-hit overhead was already low without contention.\u003c/p\u003e\n\u003ch3\u003eLlama-3 encode\u003c/h3\u003e\n\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/huggingface/tokenizers/commit/7f1623b90b5adfb9bc327d4c3468d2f70bbce262\"\u003e\u003ccode\u003e7f1623b\u003c/code\u003e\u003c/a\u003e Bump version to 0.23.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bbe43ad73d8fc8932b9d0e657ddee3cd70c649a4\"\u003e\u003ccode\u003ebbe43ad\u003c/code\u003e\u003c/a\u003e ci: release workflow fixes (node + python) (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2043\"\u003e#2043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/ab0c5d8fc13eb1c5001d9c06806635e2b5a42e9f\"\u003e\u003ccode\u003eab0c5d8\u003c/code\u003e\u003c/a\u003e Fix node release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2034\"\u003e#2034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/decd8e07dad15f296c0adc2bc3a560f62d3de2eb\"\u003e\u003ccode\u003edecd8e0\u003c/code\u003e\u003c/a\u003e bindings/python: free-threaded Python (3.14t) support (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2041\"\u003e#2041\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/3992692d483bf3177219b52cb101b1bb055c18e6\"\u003e\u003ccode\u003e3992692\u003c/code\u003e\u003c/a\u003e update for release (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2033\"\u003e#2033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/bcdd25b97fcd78549903082ecf3ddd87d42c456b\"\u003e\u003ccode\u003ebcdd25b\u003c/code\u003e\u003c/a\u003e BPE cache: per-thread read-through cache to avoid RwLock atomics on hits (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2028\"\u003e#2028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/618eb383f43e207139eb5cdb9bca17796b5e9bd7\"\u003e\u003ccode\u003e618eb38\u003c/code\u003e\u003c/a\u003e Bump follow-redirects in /tokenizers/examples/unstable_wasm/www (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2024\"\u003e#2024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/b6b1688bef2e87efc91af18edf7ac38b4d2dfbe6\"\u003e\u003ccode\u003eb6b1688\u003c/code\u003e\u003c/a\u003e chore: bump doc-builder SHA for PR upload workflow (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2025\"\u003e#2025\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/19015d6b44aa3896626de5092e4171aed1b56d5b\"\u003e\u003ccode\u003e19015d6\u003c/code\u003e\u003c/a\u003e fix: use uvx --with cairosvg instead of uv pip install --system (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2021\"\u003e#2021\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/tokenizers/commit/efbcc68e321c364c8f9541f1c93a158df54d7da4\"\u003e\u003ccode\u003eefbcc68\u003c/code\u003e\u003c/a\u003e Ci benchmarks (\u003ca href=\"https://redirect.github.com/huggingface/tokenizers/issues/2019\"\u003e#2019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/tokenizers/compare/v0.22.2...v0.23.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `safetensors` from 0.7.0 to 0.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/safetensors/releases\"\u003esafetensors's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.8.0\u003c/h2\u003e\n\u003ch2\u003eNews\u003c/h2\u003e\n\u003cp\u003esafetensors joins the PyTorch foundation!\u003c/p\u003e\n\n\u003cp\u003eRead more on that: \u003ca href=\"https://huggingface.co/blog/safetensors-joins-pytorch-foundation\"\u003ehttps://huggingface.co/blog/safetensors-joins-pytorch-foundation\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eWhat's changed\u003c/h2\u003e\n\u003cp\u003eSafetensors 0.8.0 brings direct to Metal loading on Apple Silicon, GIL-free serialization, broader hardware and dtype coverage, and a stronger Python API.\u003c/p\u003e\n\u003ch3\u003eBreaking\u003c/h3\u003e\n\u003cp\u003eThe \u003ccode\u003eserialize\u003c/code\u003e and \u003ccode\u003eserialize_file\u003c/code\u003e functions now release the GIL during writes, enabling true multithreaded saves from Python. Their input contract has also changed: tensor metadata is now passed via a \u003ccode\u003eTensorSpec\u003c/code\u003e class (exported from safetensors) instead of plain dicts, making API more explicit and robust to misinputs. This is a breaking change for anyone calling the low-level \u003ccode\u003eserialize\u003c/code\u003e / \u003ccode\u003eserialize_file\u003c/code\u003e API directly; the high-level wrappers (\u003ccode\u003esafetensors.torch\u003c/code\u003e, \u003ccode\u003esafetensors.numpy\u003c/code\u003e, \u003ccode\u003esafetensors.paddle\u003c/code\u003e) are updated internally and their public API is unchanged.\u003c/p\u003e\n\u003cp\u003eThe minimum supported Python version is now 3.10 (was 3.9). Python 3.9 reached end-of-life in October 2025.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eTensorIndexer::Narrow\u003c/code\u003e now carries a \u003ccode\u003estep: NonZeroUsize\u003c/code\u003e parameter, so a slice is now \u003ccode\u003estart:stop:step\u003c/code\u003e. This is a fix as this silent error was hidden behind the \u003ccode\u003eStorage::Torch\u003c/code\u003e variant which offloaded slicing logic to torch directly.\u003c/p\u003e\n\u003ch3\u003eCI\u003c/h3\u003e\n\u003cp\u003eOn the platform side, this release adds Windows ARM64 wheel builds, riscv64 Linux wheels, and CI has been hardened with pinned GitHub Actions SHAs.\u003c/p\u003e\n\u003cp\u003eAlso dropped the anaconda CI we had as there's already an automatic tracker via conda-forge.\u003c/p\u003e\n\u003ch3\u003eNew features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDirect MPS load on Apple Silicon: tensors are directly loaded in an \u003ccode\u003eMTLBuffer\u003c/code\u003e and handed to the frameworks that support it (only torch atm) via DLPack, skipping needless copies.\u003c/li\u003e\n\u003cli\u003eNew \u003ccode\u003ebackend\u003c/code\u003e parameter introduced, for the addition of the \u003ccode\u003epread\u003c/code\u003e backend. We now support loading files via \u003ccode\u003epread(2)\u003c/code\u003e syscall instead of just mmap. Useful for specific archs/platforms.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eget_slice\u003c/code\u003e now handles ellipsis \u003ccode\u003e[...]\u003c/code\u003e and strided slices \u003ccode\u003e[:, ::8]\u003c/code\u003e wherever safetensors does the slicing itself (\u003ccode\u003epread\u003c/code\u003e for any framework, MPS, and \u003ccode\u003emmap\u003c/code\u003e outside torch/paddle), which silently dropped the step or rejected \u003ccode\u003e...\u003c/code\u003e before.\u003c/li\u003e\n\u003cli\u003eMUSA device support for MooreThreads GPUs.\u003c/li\u003e\n\u003cli\u003eNew dtype support includes \u003ccode\u003efloat8_e4m3fnuz\u003c/code\u003e and \u003ccode\u003efloat8_e5m2fnuz\u003c/code\u003e (AMD FNUZ FP8 formats).\u003c/li\u003e\n\u003cli\u003eThe reader is now explicitly lenient about leading whitespace in the JSON header, which keeps the door open for future page-aligned writes.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements/perf\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFile writes on macOS now use \u003ccode\u003eF_NOCACHE\u003c/code\u003e for direct I/O, yielding roughly 30% faster \u003ccode\u003esave_file\u003c/code\u003e on Apple Silicon.\u003c/li\u003e\n\u003cli\u003eThe packaging dependency has been dropped from the \u003ccode\u003e[torch]\u003c/code\u003e extra, replaced by a simple \u003ccode\u003ehasattr\u003c/code\u003e probe for efficiency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd arm64 windows support by \u003ca href=\"https://github.com/finnagin\"\u003e\u003ccode\u003e@​finnagin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/678\"\u003esafetensors/safetensors#678\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(backend): support musa backend for MooreThreads GPU by \u003ca href=\"https://github.com/caizhi-mt\"\u003e\u003ccode\u003e@​caizhi-mt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/671\"\u003esafetensors/safetensors#671\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd gil free serialize_file(serialize_file_threadable) by \u003ca href=\"https://github.com/TomQunChao\"\u003e\u003ccode\u003e@​TomQunChao\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/679\"\u003esafetensors/safetensors#679\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003erefactor: remove outdated comment by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/685\"\u003esafetensors/safetensors#685\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add direct io write fast path on macos by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/687\"\u003esafetensors/safetensors#687\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: keep dropped reference to tensor moved from gpu to cpu by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/689\"\u003esafetensors/safetensors#689\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: bump torch to \u003ccode\u003e2.4\u003c/code\u003e by \u003ca href=\"https://github.com/McPatate\"\u003e\u003ccode\u003e@​McPatate\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/710\"\u003esafetensors/safetensors#710\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eContribution guide security by \u003ca href=\"https://github.com/LysandreJik\"\u003e\u003ccode\u003e@​LysandreJik\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/safetensors/safetensors/pull/712\"\u003esafetensors/safetensors#712\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\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/safetensors/safetensors/blob/main/RELEASE.md\"\u003esafetensors's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e0.8.0-dev.0 → 0.8.0\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\nUpdate lockfiles again:\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003ecargo check\ncd bindings/python \u0026amp;amp;\u0026amp;amp; uv lock\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;p\u0026gt;Commit:\u0026lt;/p\u0026gt;\n\u0026lt;pre\u0026gt;\u0026lt;code\u0026gt;Set version to 0.8.0\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;p\u0026gt;The Python version is not set in \u0026lt;code\u0026gt;pyproject.toml\u0026lt;/code\u0026gt; directly — maturin reads it from \u0026lt;code\u0026gt;bindings/python/Cargo.toml\u0026lt;/code\u0026gt; at build time.\u0026lt;/p\u0026gt;\n\u0026lt;h3\u0026gt;4. Create the release on GitHub\u0026lt;/h3\u0026gt;\n\u0026lt;p\u0026gt;Go to the \u0026lt;a href=\u0026quot;https://github.com/huggingface/safetensors/releases\u0026quot;\u0026gt;GitHub Releases page\u0026lt;/a\u0026gt; and draft a new release:\u0026lt;/p\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;strong\u0026gt;Choose the release branch\u0026lt;/strong\u0026gt; (e.g. \u0026lt;code\u0026gt;git_v0.8.0\u0026lt;/code\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;strong\u0026gt;Create a new tag\u0026lt;/strong\u0026gt; on publish: \u0026lt;code\u0026gt;v0.8.0\u0026lt;/code\u0026gt;\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;strong\u0026gt;Generate release notes\u0026lt;/strong\u0026gt; from the previous tag (e.g. \u0026lt;code\u0026gt;v0.7.0\u0026lt;/code\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Add any notable highlights at the top of the generated notes\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;Structure for manual notes:\u0026lt;/p\u0026gt;\n\u0026lt;pre lang=\u0026quot;markdown\u0026quot;\u0026gt;\u0026lt;code\u0026gt;## Breaking changes\n- ...\n\n## New features\n- ...\n\n## Bug fixes\n- ...\n\n## Internal / CI\n- ...\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;p\u0026gt;Click \u0026lt;strong\u0026gt;Publish release\u0026lt;/strong\u0026gt;. This creates the tag, which triggers the three release workflows.\u0026lt;/p\u0026gt;\n\u0026lt;h3\u0026gt;5. Monitor the CI\u0026lt;/h3\u0026gt;\n\u0026lt;p\u0026gt;The tag triggers two workflow runs in the \u0026lt;a href=\u0026quot;https://github.com/huggingface/safetensors/actions\u0026quot;\u0026gt;Actions tab\u0026lt;/a\u0026gt;:\u0026lt;/p\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;strong\u0026gt;CI\u0026lt;/strong\u0026gt; (Python release) — builds wheels for every platform × Python version, uploads to PyPI. Can take up to over 30 minutes.\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;!-- raw HTML omitted --\u0026gt;\n\u0026lt;/blockquote\u0026gt;\n\u0026lt;p\u0026gt;... (truncated)\u0026lt;/p\u0026gt;\n\u0026lt;/details\u0026gt;\n\u0026lt;details\u0026gt;\n\u0026lt;summary\u0026gt;Commits\u0026lt;/summary\u0026gt;\n\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/a406ca3e7a90598be0cd05a50069cb9bf5ef6ba6\u0026quot;\u0026gt;\u0026lt;code\u0026gt;a406ca3\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix(release): move crates.io to trusted publisher OIDC\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/d0368d14c0a417fb2ca2a6627e9513d17f74f9b7\u0026quot;\u0026gt;\u0026lt;code\u0026gt;d0368d1\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; feat: \u0026lt;code\u0026gt;0.8.0\u0026lt;/code\u0026gt;\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/5ec3ec14c506d09598df6d96f36cd9a4ea94aafa\u0026quot;\u0026gt;\u0026lt;code\u0026gt;5ec3ec1\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix(release): move to pypi trusted publisher OIDC (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/778\u0026quot;\u0026gt;#778\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/e37dc536ce598ef1d71a9ad712987571f2f05808\u0026quot;\u0026gt;\u0026lt;code\u0026gt;e37dc53\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; feat: bump main to \u0026lt;code\u0026gt;0.9.0-dev.0\u0026lt;/code\u0026gt; (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/777\u0026quot;\u0026gt;#777\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/6e32aa7b029d323238233110c1cdecae22cbe564\u0026quot;\u0026gt;\u0026lt;code\u0026gt;6e32aa7\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; refactor: replace \u0026lt;code\u0026gt;_host_alias_storage\u0026lt;/code\u0026gt; w/ \u0026lt;code\u0026gt;MTLBuffer\u0026lt;/code\u0026gt; (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/767\u0026quot;\u0026gt;#767\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/24b0b2857fef49be734b9ab72ce97c09bb25f5b9\u0026quot;\u0026gt;\u0026lt;code\u0026gt;24b0b28\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix: write to tempfile + rename to preserve mmap source (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/764\u0026quot;\u0026gt;#764\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/73132135947275c5dda135438e4c2e4bd70a2b10\u0026quot;\u0026gt;\u0026lt;code\u0026gt;7313213\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Update free-threading tests for Python 3.14 (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/699\u0026quot;\u0026gt;#699\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/e9091e13ec359e9e5b8b45413fcbe340444dde1c\u0026quot;\u0026gt;\u0026lt;code\u0026gt;e9091e1\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; feat: add \u0026lt;code\u0026gt;backend\u0026lt;/code\u0026gt; with pread file (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/760\u0026quot;\u0026gt;#760\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/1b0fe9c6acf3ac2ec7f4a0fd13bccfc0b65ce765\u0026quot;\u0026gt;\u0026lt;code\u0026gt;1b0fe9c\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix(ci): security audit slack message format (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/757\u0026quot;\u0026gt;#757\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/safetensors/safetensors/commit/7efac22872a53ae3b30a15f8e786404322f10458\u0026quot;\u0026gt;\u0026lt;code\u0026gt;7efac22\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; [MPS] Fast load of the tensors (\u0026lt;a href=\u0026quot;https://redirect.github.com/huggingface/safetensors/issues/756\u0026quot;\u0026gt;#756\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Additional commits viewable in \u0026lt;a href=\u0026quot;https://github.com/huggingface/safetensors/compare/v0.7.0...v0.8.0\u0026quot;\u0026gt;compare view\u0026lt;/a\u0026gt;\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;/details\u0026gt;\n\n\u0026lt;br /\u0026gt;\u003c/code\u003e\u003c/pre\u003e\n\nUpdates `fastapi` from 0.128.0 to 0.141.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/fastapi/fastapi/releases\"\u003efastapi's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.141.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix support for background tasks and headers from dependencies in \u003ccode\u003eapp.frontend()\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16105\"\u003e#16105\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Document \u003ccode\u003eFASTAPI_ENV\u003c/code\u003e in FastAPI CLI guide. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16104\"\u003e#16104\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.141.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eapp.frontend(check_dir=\u0026quot;auto\u0026quot;)\u003c/code\u003e, to make local development more convenient with \u003ccode\u003efastapi dev\u003c/code\u003e. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/16102\"\u003e#16102\u003c/a\u003e by \u003ca href=\"https://github.com/tiangolo\"\u003e\u003ccode\u003e@​tiangolo\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.13\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003estatus_code\u003c/code\u003e being ignored for SSE and JSONL streaming endpoints. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15937\"\u003e#15937\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📝 Fix \u003ccode\u003eformat_sse_event\u003c/code\u003e docstring rendering of \u003ccode\u003e\\n\\n\u003c/code\u003e terminator. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15613\"\u003e#15613\u003c/a\u003e by \u003ca href=\"https://github.com/AshNicolus\"\u003e\u003ccode\u003e@​AshNicolus\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e📝 Add API reference page for fastapi.sse. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15930\"\u003e#15930\u003c/a\u003e by \u003ca href=\"https://github.com/SAURABHSALVE\"\u003e\u003ccode\u003e@​SAURABHSALVE\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.12\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix line splitting in \u003ccode\u003eformat_sse_event\u003c/code\u003e to comply with SSE spec. PR \u003ca href=\"https://redirect.github.com/fastapi/fastapi/pull/15515\"\u003e#15515\u003c/a\u003e by \u003ca href=\"https://github.com/Zawwarsami16\"\u003e\u003ccode\u003e@​Zawwarsami16\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.140.11\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix \u003ccode\u003eresponse_model_*\u003c/code\u003e params ignored for non-generator endpoints with \u003ccode\u003eIterable[..]\u003c/code\u003e return type. PR \u003ca href=\"htt...\n\n_Description has been truncated_","html_url":"https://github.com/codecookinging/vllm_marlin/pull/18","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/codecookinging%2Fvllm_marlin/issues/18","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/18/packages"}}]}