{"id":10851,"name":"setuptools-scm","ecosystem":"pip","repository_url":"https://github.com/pypa/setuptools-scm","issues_count":247,"created_at":"2025-06-06T22:53:59.788Z","updated_at":"2025-06-06T22:53:59.788Z","purl":"pkg:pypi/setuptools-scm","metadata":{"id":2916815,"name":"setuptools-scm","ecosystem":"pypi","description":"the blessed package to manage your versions by scm tags","homepage":null,"licenses":"Permission is hereby granted, free of charge, to any person obtaining a copy\n        of this software and associated documentation files (the \"Software\"), to deal\n        in the Software without restriction, including without limitation the rights\n        to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n        copies of the Software, and to permit persons to whom the Software is\n        furnished to do so, subject to the following conditions:\n        \n        The above copyright notice and this permission notice shall be included in\n        all copies or substantial portions of the Software.\n        \n        THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n        IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n        FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n        AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n        LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n        OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n        THE SOFTWARE.\n        ","normalized_licenses":["Other"],"repository_url":"https://github.com/pypa/setuptools-scm","keywords_array":[],"namespace":null,"versions_count":89,"first_release_published_at":"2015-02-23T19:12:51.000Z","latest_release_published_at":"2025-04-23T11:53:17.000Z","latest_release_number":"8.3.1","last_synced_at":"2025-06-06T13:31:42.846Z","created_at":"2022-04-10T12:35:23.494Z","updated_at":"2025-06-06T13:31:42.846Z","registry_url":"https://pypi.org/project/setuptools-scm/","install_command":"pip install setuptools-scm --index-url https://pypi.org/simple","documentation_url":"https://setuptools-scm.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":["Development Status :: 5 - Production/Stable","Intended Audience :: Developers","License :: OSI Approved :: MIT License","Programming Language :: Python","Programming Language :: Python :: 3 :: Only","Programming Language :: Python :: 3.10","Programming Language :: Python :: 3.11","Programming Language :: Python :: 3.12","Programming Language :: Python :: 3.13","Programming Language :: Python :: 3.8","Programming Language :: Python :: 3.9","Topic :: Software Development :: Libraries","Topic :: Software Development :: Version Control","Topic :: System :: Software Distribution","Topic :: Utilities"],"normalized_name":"setuptools-scm"},"repo_metadata":{"id":34451218,"uuid":"38386331","full_name":"pypa/setuptools-scm","owner":"pypa","description":"the blessed package to manage your versions by scm tags","archived":false,"fork":false,"pushed_at":"2024-09-02T19:58:50.000Z","size":1917,"stargazers_count":846,"open_issues_count":95,"forks_count":213,"subscribers_count":26,"default_branch":"main","last_synced_at":"2024-09-03T01:08:07.237Z","etag":null,"topics":["metadata","packaging","python","version-control"],"latest_commit_sha":null,"homepage":"https://setuptools-scm.readthedocs.io/en/latest/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pypa.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"tidelift":"pypi/setuptools-scm"}},"created_at":"2015-07-01T17:57:56.000Z","updated_at":"2024-09-02T11:26:04.000Z","dependencies_parsed_at":"2023-11-10T23:28:03.413Z","dependency_job_id":"1ad550a8-a288-4359-9fcd-641b850816e8","html_url":"https://github.com/pypa/setuptools-scm","commit_stats":{"total_commits":1299,"total_committers":143,"mean_commits":9.083916083916083,"dds":0.5250192455735181,"last_synced_commit":"102f56a896bc4ea8d4c58d9c49f455f15310de38"},"previous_names":[],"tags_count":119,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pypa","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":217595202,"owners_count":16201691,"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":"pypa","name":"Python Packaging Authority","uuid":"647025","kind":"organization","description":"","email":"info@pypa.io","website":"https://www.pypa.io","location":"United States of America","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/647025?v=4","repositories_count":54,"last_synced_at":"2024-05-20T15:05:54.402Z","metadata":{"has_sponsors_listing":true},"html_url":"https://github.com/pypa","funding_links":["https://github.com/sponsors/pypa"],"total_stars":79283,"followers":1384,"following":0,"created_at":"2022-11-02T16:21:37.826Z","updated_at":"2024-05-20T15:05:56.749Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pypa","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pypa/repositories"},"tags":[{"name":"v8.1.0","sha":"234b74fd9cf847baaac52a195d1ff4f59ed94c8c","kind":"commit","published_at":"2024-05-06T14:54:27.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v8.1.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v8.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v8.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v8.1.0/manifests"},{"name":"v8.0.4","sha":"48b1cb547a407b986f674740eae4f54503a141e3","kind":"commit","published_at":"2023-10-02T14:59:52.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v8.0.4","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v8.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v8.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v8.0.4/manifests"},{"name":"v8.0.3","sha":"7e867ada4acbfc0e4f0448eb3c439bfd4e37fcc7","kind":"commit","published_at":"2023-09-22T08:17:09.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v8.0.3","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v8.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v8.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v8.0.3/manifests"},{"name":"v8.0.2","sha":"7b668cc34a254f8427091c773e7746621084a846","kind":"commit","published_at":"2023-09-21T09:28:16.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v8.0.2","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v8.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v8.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v8.0.2/manifests"},{"name":"v8.0.1","sha":"77e79f493081ca258807e36cbeb1d52441df4c2a","kind":"commit","published_at":"2023-09-20T11:59:47.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v8.0.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v8.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v8.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v8.0.1/manifests"},{"name":"v8.0.0","sha":"b5dbba7a154b90f401ac1b9ca37dc920b5e82c33","kind":"commit","published_at":"2023-09-19T13:56:40.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v8.0.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v8.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v8.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v8.0.0/manifests"},{"name":"v7.1.0","sha":"a5acb6845bf25ec9163020ea02d95e473051569b","kind":"tag","published_at":"2022-12-17T15:55:35.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v7.1.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v7.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v7.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v7.1.0/manifests"},{"name":"v7.0.5","sha":"69e257a04db2bd8c8942546141acb700eccf4235","kind":"commit","published_at":"2022-07-11T12:26:26.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v7.0.5","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v7.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v7.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v7.0.5/manifests"},{"name":"v7.0.4","sha":"996b6bdfbeb0201e02139c7b47ba6fa01c1a6ce9","kind":"commit","published_at":"2022-07-01T10:21:24.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v7.0.4","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v7.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v7.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v7.0.4/manifests"},{"name":"v7.0.3","sha":"1b18371fc2fa672f39c758a103c4d12956b5964f","kind":"commit","published_at":"2022-06-28T20:23:21.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v7.0.3","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v7.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v7.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v7.0.3/manifests"},{"name":"v7.0.2","sha":"f1f35bd0f20a983a919d73a646a2ad9a3e36d5d4","kind":"commit","published_at":"2022-06-22T11:36:42.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v7.0.2","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v7.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v7.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v7.0.2/manifests"},{"name":"v7.0.1","sha":"f807bfe088a756113ecfe9c2d3d57932a2e5e623","kind":"commit","published_at":"2022-06-21T16:51:18.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v7.0.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v7.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v7.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v7.0.1/manifests"},{"name":"v7.0.0","sha":"d57a5546d9c054e55972b475d5a346cbdd0c874a","kind":"commit","published_at":"2022-06-21T12:15:42.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v7.0.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v7.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v7.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v7.0.0/manifests"},{"name":"v6.4.2","sha":"645bd2338cb3be52a2a107054f0e68850fa9a17c","kind":"commit","published_at":"2022-01-19T10:31:48.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v6.4.2","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v6.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.4.2/manifests"},{"name":"v6.4.1","sha":"c585e20718c478b2639e955ee8cc56186dc1ced1","kind":"commit","published_at":"2022-01-18T10:19:05.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v6.4.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v6.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.4.1/manifests"},{"name":"v6.4.0","sha":"4a1b43a6810bbcff4e95a132c4cf99896f92af7b","kind":"commit","published_at":"2022-01-17T19:34:26.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v6.4.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v6.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.4.0/manifests"},{"name":"v6.3.2","sha":"831255c9e965d9f70b4588d0593e3e07fdd62a0e","kind":"commit","published_at":"2021-09-10T22:52:53.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v6.3.2","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v6.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.3.2/manifests"},{"name":"v6.3.1","sha":"c53052655ad6b057ede9615845fba2139a2e6ef0","kind":"tag","published_at":"2021-09-03T15:23:40.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v6.3.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v6.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.3.1/manifests"},{"name":"v6.3.0","sha":"7b656995cc13ff4499dafaae958d317e68157fb8","kind":"tag","published_at":"2021-09-03T14:42:02.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v6.3.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v6.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.3.0/manifests"},{"name":"v6.2.0","sha":"ccd9e7c1448044b0c832f641581738e3102ca768","kind":"tag","published_at":"2021-08-27T14:46:19.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v6.2.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v6.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.2.0/manifests"},{"name":"v6.1.1","sha":"c3eb223cff7a761e891b48c7b1c9a88ee030f996","kind":"tag","published_at":"2021-08-27T09:59:11.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v6.1.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v6.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.1.1/manifests"},{"name":"v6.1.0","sha":"2e158116dd25e9975f8b90634db2eae8ef6c717d","kind":"tag","published_at":"2021-08-26T15:10:31.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v6.1.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v6.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.1.0/manifests"},{"name":"v6.1.0.dev","sha":"507395d3500c5124d51a5ca80706a623abb74b37","kind":"tag","published_at":"2021-06-09T08:45:52.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v6.1.0.dev","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v6.1.0.dev","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.1.0.dev","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.1.0.dev/manifests"},{"name":"v6.0.1","sha":"abb67b15985f380d8cf4451b9f2ef3dd11cb8a91","kind":"commit","published_at":"2021-03-17T14:11:55.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v6.0.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v6.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.0.1/manifests"},{"name":"v6.0.0","sha":"53c16ce378cae61adb970c731f95fcdcd5fdf12b","kind":"commit","published_at":"2021-03-16T19:42:56.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v6.0.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v6.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.0.0/manifests"},{"name":"v6.0.0.dev","sha":"757f36bfd8fbe624946c1f15112ff7f55eeff7c5","kind":"commit","published_at":"2021-03-12T08:41:24.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v6.0.0.dev","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v6.0.0.dev","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.0.0.dev","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v6.0.0.dev/manifests"},{"name":"v5.0.2","sha":"1d1ce65d2c34dcd5d0b4047eeb85d0dc71f089d1","kind":"commit","published_at":"2021-03-04T21:14:59.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v5.0.2","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v5.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v5.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v5.0.2/manifests"},{"name":"v5.0.1","sha":"03690ec63a31a7b17403eae00b639ace8b2f13e2","kind":"commit","published_at":"2020-12-13T22:01:38.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v5.0.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v5.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v5.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v5.0.1/manifests"},{"name":"v5.0.0","sha":"b7e655c1259a0d6bce0d94be41a4ae21a2721102","kind":"commit","published_at":"2020-12-12T17:57:14.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v5.0.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v5.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v5.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v5.0.0/manifests"},{"name":"v4.1.2","sha":"24c9d7579cd194d9d7982d1e2ad51c536611bf29","kind":"commit","published_at":"2020-05-31T12:31:56.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v4.1.2","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v4.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v4.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v4.1.2/manifests"},{"name":"v4.1.1","sha":"b98770f47736b6b0d61b89f78353571d42ad0466","kind":"tag","published_at":"2020-05-26T20:06:09.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v4.1.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v4.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v4.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v4.1.1/manifests"},{"name":"v4.1.0","sha":"6d3e0f2e262420983733295aab00197bb73640b4","kind":"commit","published_at":"2020-05-25T18:25:50.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v4.1.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v4.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v4.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v4.1.0/manifests"},{"name":"v4.0.0","sha":"22d0dd9348992ddb6c0b8f3aec974447dc8c438a","kind":"commit","published_at":"2020-05-24T09:31:22.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v4.0.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v4.0.0/manifests"},{"name":"v3.5.0","sha":"7b21089a545667f0ae7852e1039f8028be288f48","kind":"commit","published_at":"2020-02-08T09:44:18.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.5.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.5.0/manifests"},{"name":"v3.4.3","sha":"0df34c7c3cecb8409d22a2a45d958457c30fbfde","kind":"commit","published_at":"2020-01-22T20:47:57.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.4.3","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.4.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.4.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.4.3/manifests"},{"name":"v3.4.2","sha":"e57cf4637f4b60c1085a56b08958f51ef7aae469","kind":"commit","published_at":"2020-01-19T14:23:53.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.4.2","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.4.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.4.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.4.2/manifests"},{"name":"v3.4.1","sha":"25494bd18f546494e5cde4ff77159d4becda2fec","kind":"commit","published_at":"2020-01-18T07:48:36.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.4.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.4.1/manifests"},{"name":"v3.4.0","sha":"e814f8d67937fcb07f84932b9dd58da371c3aefb","kind":"commit","published_at":"2020-01-17T19:56:51.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.4.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.4.0/manifests"},{"name":"v3.3.3","sha":"fe2ea13e9d00c7f0873f149de42b1deaca4aa924","kind":"commit","published_at":"2019-05-12T09:27:00.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.3.3","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.3.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.3.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.3.3/manifests"},{"name":"v3.3.2","sha":"06c86564f86cb0d2ad63f1d476af5bfe05a05f92","kind":"commit","published_at":"2019-05-12T08:24:48.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.3.2","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.3.2/manifests"},{"name":"v3.3.1","sha":"fcf7c5e8705285ed8653cae878fc8881ad2c04ab","kind":"commit","published_at":"2019-05-10T12:33:29.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.3.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.3.1/manifests"},{"name":"v3.3.0","sha":"d1ac9d1e0fabc0905a3c854004ac8fd57117ea6d","kind":"commit","published_at":"2019-05-07T21:34:58.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.3.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.3.0/manifests"},{"name":"v3.2.0","sha":"f726adffd00c6ef4ea486923e4918115cc7070ab","kind":"commit","published_at":"2019-01-16T18:42:36.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.2.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.2.0/manifests"},{"name":"v3.1.0","sha":"19e3c8d636dd54d901c684d169655b87887dc990","kind":"commit","published_at":"2018-08-09T06:31:59.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.1.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.1.0/manifests"},{"name":"v3.0.6","sha":"3ae1cad231545abfeedea9aaa7405e15fb28d95c","kind":"commit","published_at":"2018-07-31T16:22:46.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.0.6","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.0.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.6/manifests"},{"name":"v3.0.5","sha":"4ab2bcfbe035a79984636bda39bdaeda98bf0477","kind":"commit","published_at":"2018-07-30T09:25:19.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.0.5","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.5/manifests"},{"name":"v3.0.4","sha":"7d35df0582649004bd6b7ecb30ae6d4363b02716","kind":"commit","published_at":"2018-07-28T19:06:10.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.0.4","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.4/manifests"},{"name":"v3.0.4alpha2","sha":"586cb39bf5a01b58da0265fa6efb46c336719c84","kind":"tag","published_at":"2018-07-28T18:20:39.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.0.4alpha2","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.0.4alpha2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.4alpha2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.4alpha2/manifests"},{"name":"v3.0.4alpha1","sha":"a341b3edbf78a4041cc67dd88a7bf91a21f31cb6","kind":"tag","published_at":"2018-07-28T18:14:28.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.0.4alpha1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.0.4alpha1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.4alpha1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.4alpha1/manifests"},{"name":"v3.0.3","sha":"27e145f81bae05a053867f37fc3f43cc4e61eb2f","kind":"commit","published_at":"2018-07-24T08:16:10.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.0.3","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.3/manifests"},{"name":"v3.0.2","sha":"6f2703342a7060c4673117e54d9a0c133a07211e","kind":"commit","published_at":"2018-07-23T18:10:26.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.0.2","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.2/manifests"},{"name":"v3.0.1","sha":"3214d3e665b296a85f12fc1c20430b311d7f2975","kind":"commit","published_at":"2018-07-23T13:44:30.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.0.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.1/manifests"},{"name":"v3.0.0","sha":"ae5533a4ee3be9f06270bcf9c4e152bedf59b832","kind":"commit","published_at":"2018-07-23T11:26:46.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v3.0.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v3.0.0/manifests"},{"name":"v2.1.0","sha":"cf621fc68076e0c6e35b9d8045aac5061727860f","kind":"tag","published_at":"2018-05-13T08:54:53.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v2.1.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v2.1.0/manifests"},{"name":"v2.0.0","sha":"b93a511c70c48668d9178eeb00fa9f575003a8bd","kind":"commit","published_at":"2018-04-10T08:11:22.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v2.0.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v2.0.0/manifests"},{"name":"v1.17.0","sha":"a7c8ee4100b6430f02f34e33136819db181f6d02","kind":"commit","published_at":"2018-03-20T10:12:17.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.17.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.17.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.17.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.17.0/manifests"},{"name":"v1.16.2","sha":"21792b14e808a23df53cf7e62eb9c87c741f6216","kind":"commit","published_at":"2018-03-20T07:04:52.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.16.2","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.16.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.16.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.16.2/manifests"},{"name":"v1.16.1","sha":"b7182bad424848e86abf1d747fad8327d7933920","kind":"commit","published_at":"2018-03-19T15:57:09.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.16.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.16.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.16.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.16.1/manifests"},{"name":"v1.16.0","sha":"6e9b5ddecfd2d74f24c30a7c74613db191c1679c","kind":"commit","published_at":"2018-03-19T09:23:50.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.16.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.16.0/manifests"},{"name":"v1.15.7","sha":"a966a798a5becfc22e0a7916e74c68387e69de68","kind":"commit","published_at":"2018-01-19T02:00:16.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.15.7","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.15.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.15.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.15.7/manifests"},{"name":"v1.15.6","sha":"a6f0878a67e6c2eb91ba4db1bbeb5f6c759bca00","kind":"commit","published_at":"2017-06-15T19:22:55.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.15.6","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.15.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.15.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.15.6/manifests"},{"name":"v1.15.5","sha":"75897ba511010efaabf628217d34b589d9299c8f","kind":"commit","published_at":"2017-04-08T16:47:02.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.15.5","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.15.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.15.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.15.5/manifests"},{"name":"v1.15.4","sha":"00f3fbe0dfd3ae396abdd4b33cd69cca7d4459c3","kind":"commit","published_at":"2017-04-08T11:43:14.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.15.4","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.15.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.15.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.15.4/manifests"},{"name":"v1.15.3","sha":"a3bc80d56fa13e988dad8f468215f816392b2f02","kind":"commit","published_at":"2017-04-07T20:59:42.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.15.3","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.15.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.15.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.15.3/manifests"},{"name":"v1.15.1rc1","sha":"809a9296ab5e124d28f82dddf73ac04730ad497e","kind":"commit","published_at":"2017-01-26T15:23:51.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.15.1rc1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.15.1rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.15.1rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.15.1rc1/manifests"},{"name":"1.15.0","sha":"9cf20094857f4568ef0218ae132913d1a08ed35d","kind":"commit","published_at":"2016-10-20T21:46:42.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/1.15.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/1.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/1.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/1.15.0/manifests"},{"name":"v1.15.0rc1","sha":"6b6c6cf538776ad0c68415fce33b1553d6290398","kind":"commit","published_at":"2016-10-20T16:55:35.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.15.0rc1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.15.0rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.15.0rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.15.0rc1/manifests"},{"name":"v1.14.0","sha":"79610468966055b8a2ca0e76b9b2fa59a241740e","kind":"commit","published_at":"2016-10-12T20:33:42.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.14.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.14.0/manifests"},{"name":"v1.14.0rc1","sha":"5ef809f2d0406de1c2c120ec20a415d058387956","kind":"commit","published_at":"2016-10-12T18:57:17.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.14.0rc1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.14.0rc1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.14.0rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.14.0rc1/manifests"},{"name":"v1.13.1","sha":"d041864fc414512a6772a90ba978826318a75a62","kind":"commit","published_at":"2016-10-11T08:43:20.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.13.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.13.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.13.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.13.1/manifests"},{"name":"v1.13.0","sha":"4a365d243692809c74f37f9c8db8d1b049af9150","kind":"commit","published_at":"2016-10-05T19:21:16.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.13.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.13.0/manifests"},{"name":"v1.12.0","sha":"f9ca54d95d9a43f4da0c226d7876ecdc64cb93cb","kind":"commit","published_at":"2016-10-05T14:40:38.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.12.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.12.0/manifests"},{"name":"v1.11.1","sha":"6384be622ad43370bc1c58a2f0fdd5d3300ed51b","kind":"commit","published_at":"2016-06-12T21:00:11.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.11.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.11.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.11.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.11.1/manifests"},{"name":"v1.11.0","sha":"f5390e98b426da854838738c86a48b87742e259d","kind":"commit","published_at":"2016-04-06T08:35:41.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.11.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.11.0/manifests"},{"name":"v1.10.1","sha":"3649c15317a8d533fb7ba6eebabdaaa798945452","kind":"commit","published_at":"2015-12-10T21:00:01.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.10.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.10.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.10.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.10.1/manifests"},{"name":"v1.10.0","sha":"a035b38bad6a3505fd2c24306080dc9a6e1dffe3","kind":"commit","published_at":"2015-12-07T20:46:16.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.10.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.10.0/manifests"},{"name":"v1.9.0","sha":"a2fbff3669720de8f926b69598fe66d8df11cbf0","kind":"commit","published_at":"2015-11-12T15:48:26.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.9.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.9.0/manifests"},{"name":"v1.8.0","sha":"d2eda883f3129662329bc04ba946bb70d6e14bcb","kind":"commit","published_at":"2015-09-17T20:58:24.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.8.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.8.0/manifests"},{"name":"v1.7.0","sha":"e8625deb6aaf4892f20c34927affe6fbcd8e55f2","kind":"commit","published_at":"2015-08-12T21:35:54.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.7.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.7.0/manifests"},{"name":"v1.6.0","sha":"6c68e6b2f40ed66987f75bd1fbb8d0a6703ff1a0","kind":"commit","published_at":"2015-07-22T21:37:23.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.6.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.6.0/manifests"},{"name":"v1.6.0.dev","sha":"4c4439c7d6d8274b61843203487452e13a18b333","kind":"commit","published_at":"2015-07-22T21:20:01.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.6.0.dev","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.6.0.dev","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.6.0.dev","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.6.0.dev/manifests"},{"name":"v1.5.5","sha":"d84ebf21433fe3317471accaf00ee0f9d0c4fbe1","kind":"commit","published_at":"2015-07-06T22:07:55.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.5.5","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.5.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.5.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.5.5/manifests"},{"name":"v1.5.4","sha":"ac7bba4f90565a433d6673758bebb6ed8cf47fc0","kind":"commit","published_at":"2015-06-13T00:45:31.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.5.4","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.5.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.5.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.5.4/manifests"},{"name":"v1.5.3","sha":"19967ea8000473baa4607f2c96c096c35d40f63b","kind":"commit","published_at":"2015-06-11T02:44:08.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.5.3","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.5.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.5.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.5.3/manifests"},{"name":"v1.5.2","sha":"b409cce66bebf13c62ca2d530418fdd9fdba560c","kind":"commit","published_at":"2015-05-30T14:51:18.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.5.2","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.5.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.5.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.5.2/manifests"},{"name":"v1.5.1","sha":"c2b84b4513bfab7eb9beb482fac2c2f9c9dc1ce9","kind":"commit","published_at":"2015-05-30T14:48:36.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.5.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.5.1/manifests"},{"name":"v1.5.0","sha":"40605077433d440ef3b25a4a81a2548501a45197","kind":"commit","published_at":"2015-05-30T13:36:50.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.5.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.5.0/manifests"},{"name":"v1.4.1","sha":"ca2b4580f42b7a2d3851af6c96b68ecfd713310a","kind":"commit","published_at":"2015-05-21T20:16:12.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.4.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"b2c63d3bc83dd744f4969df34a7fd104c84b6571","kind":"commit","published_at":"2015-05-21T20:14:11.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.4.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.4.0/manifests"},{"name":"v1.3.0","sha":"a4f653f6d27f2e729599e448e996968080390fa7","kind":"commit","published_at":"2015-03-14T13:46:11.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.3.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.3.0/manifests"},{"name":"v1.2.0","sha":"f3ed080b04db9387d270bee2f99a90b44455a897","kind":"commit","published_at":"2015-02-26T07:21:05.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.2.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.2.0/manifests"},{"name":"v1.1.0","sha":"e2a2c8c2dc4f46fd8eef64a8d58abcdae591f105","kind":"commit","published_at":"2015-02-24T17:08:21.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.1.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.1.0/manifests"},{"name":"v1.0.0","sha":"13d7340e92b208f5a0709168ca0956530aa31ccc","kind":"commit","published_at":"2015-02-23T19:02:56.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v1.0.0","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v1.0.0/manifests"},{"name":"v0.26","sha":"10bc9cb39f3aba936036e777ad71846402d3722a","kind":"commit","published_at":"2015-02-21T15:32:46.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.26","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.26","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.26","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.26/manifests"},{"name":"v0.25","sha":"5060618a65b67b2821345616d99f68c1cfe7f74a","kind":"commit","published_at":"2015-02-14T20:30:51.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.25","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.25","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.25","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.25/manifests"},{"name":"v0.24","sha":"8f325403b9689c10898010992a1cc31b2c7fb07c","kind":"commit","published_at":"2015-02-14T07:29:47.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.24","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.24","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.24","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.24/manifests"},{"name":"v0.23","sha":"67ba012fd89e062738b52318b62a057cf98edeb4","kind":"commit","published_at":"2014-10-23T20:02:46.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.23","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.23","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.23","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.23/manifests"},{"name":"v0.22","sha":"7e26b76cc48fe7746db410f145d603e39e1e81e9","kind":"commit","published_at":"2014-10-06T17:49:33.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.22","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.22","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.22","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.22/manifests"},{"name":"v0.21","sha":"4753e04ae2aa80ca4bc57744f7bfe19f9ac1a909","kind":"commit","published_at":"2014-09-11T20:01:30.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.21","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.21","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.21","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.21/manifests"},{"name":"v0.20","sha":"b61f0eb061a3eef965260b8eeba37f3cdafd9af0","kind":"commit","published_at":"2014-09-09T05:39:10.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.20","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.20","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.20","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.20/manifests"},{"name":"v0.19","sha":"6dba4154d8cf92ea98a9af4a785c4bd7513725be","kind":"commit","published_at":"2014-09-03T05:39:10.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.19","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.19","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.19","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.19/manifests"},{"name":"v0.18","sha":"83b17b37b24bf50208b2dc525e5ca865cc8a6ddc","kind":"commit","published_at":"2014-04-05T20:29:03.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.18","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.18","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.18","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.18/manifests"},{"name":"v0.17","sha":"699c6c560696f3ca6405ac48622f92dc604817bd","kind":"commit","published_at":"2014-04-05T15:14:55.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.17","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.17","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.17","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.17/manifests"},{"name":"v0.16","sha":"e5fdeeb93915f3ec5732194b738ff1ea5f68cdb5","kind":"commit","published_at":"2012-06-18T13:05:43.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.16","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.16","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.16/manifests"},{"name":"v0.15","sha":"ac8796b806110bef23ccf6d9d43977b1a17c7bac","kind":"commit","published_at":"2012-05-17T08:12:52.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.15","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.15","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.15","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.15/manifests"},{"name":"v0.14","sha":"2e655a0e592e45a877b24aad03934773e9501b67","kind":"commit","published_at":"2012-04-27T08:05:12.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.14","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.14","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.14","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.14/manifests"},{"name":"v0.13","sha":"a2c95fa7e82094a542d2075ed91f6853158324eb","kind":"commit","published_at":"2012-04-23T15:13:06.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.13","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.13","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.13","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.13/manifests"},{"name":"v0.12","sha":"91b10fd23385cb30cd838bde887ce9d7a23aa6cf","kind":"commit","published_at":"2012-04-22T13:05:39.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.12","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.12","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.12","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.12/manifests"},{"name":"v0.11","sha":"89035beee5249b71cdbb33544823fddf8773e5fa","kind":"commit","published_at":"2012-01-23T15:27:33.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.11","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.11","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.11","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.11/manifests"},{"name":"v0.10","sha":"f4ac9b701048becdb749af2ae3fe117ce638f53e","kind":"commit","published_at":"2010-09-14T21:52:07.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.10","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.10","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.10/manifests"},{"name":"v0.9","sha":"1bd1a3a6149e7bcbe6ee18f36fdc0abc530de043","kind":"commit","published_at":"2010-08-26T09:46:12.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/v0.9","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/v0.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/v0.9/manifests"},{"name":"0.8","sha":"03884794025b32721cfd5470beee0602f03549d8","kind":"commit","published_at":"2010-08-06T07:34:14.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/0.8","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/0.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/0.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/0.8/manifests"},{"name":"0.7","sha":"af9e4c0734bda684a3a6c93acb65d1e22949bdf6","kind":"commit","published_at":"2010-08-04T09:06:33.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/0.7","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/0.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/0.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/0.7/manifests"},{"name":"0.6","sha":"f1073eeadc0882176b05ed7ca89384a07a86c912","kind":"commit","published_at":"2010-05-27T08:39:43.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/0.6","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/0.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/0.6/manifests"},{"name":"0.5","sha":"8f17127f14a401a76f372f20f2553e4bdfebc2a8","kind":"commit","published_at":"2010-05-26T16:57:33.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/0.5","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/0.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/0.5/manifests"},{"name":"0.4","sha":"fcc0d789e65e0906333ba2a5778699da96f963ee","kind":"commit","published_at":"2010-05-26T10:06:59.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/0.4","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/0.4/manifests"},{"name":"0.3","sha":"576ba8470e3636eadf21823154a6164748f0a554","kind":"commit","published_at":"2010-05-26T00:01:55.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/0.3","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/0.3/manifests"},{"name":"0.2","sha":"1d639c83aa79e6df60ddb62f93719c47b76073b6","kind":"commit","published_at":"2010-05-25T17:46:38.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/0.2","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/0.2/manifests"},{"name":"0.1","sha":"29ee3ed546f0cc57630085f59e511f6d148b31f6","kind":"commit","published_at":"2010-05-25T15:34:11.000Z","download_url":"https://codeload.github.com/pypa/setuptools-scm/tar.gz/0.1","html_url":"https://github.com/pypa/setuptools-scm/releases/tag/0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pypa%2Fsetuptools-scm/tags/0.1/manifests"}]},"repo_metadata_updated_at":"2024-09-08T02:13:37.541Z","dependent_packages_count":580,"downloads":60947013,"downloads_period":"last-month","dependent_repos_count":8086,"rankings":{"downloads":0.04145214569878963,"dependent_repos_count":0.09977861619531664,"dependent_packages_count":0.04218581199434343,"stargazers_count":3.0276573851766395,"forks_count":4.708486868290392,"docker_downloads_count":0.40608429458902767,"average":1.387607520324085},"purl":"pkg:pypi/setuptools-scm","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/setuptools-scm","docker_dependents_count":393,"docker_downloads_count":72304531,"usage_url":"https://repos.ecosyste.ms/usage/pypi/setuptools-scm","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/setuptools-scm/dependencies","status":null,"funding_links":["https://tidelift.com/funding/github/pypi/setuptools-scm","https://github.com/sponsors/pypa"],"critical":true,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/setuptools-scm/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/setuptools-scm/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/setuptools-scm/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/setuptools-scm/related_packages","maintainers":[{"uuid":"jaraco","login":"jaraco","name":null,"email":null,"url":null,"packages_count":165,"html_url":"https://pypi.org/user/jaraco/","role":null,"created_at":"2022-12-15T20:07:14.883Z","updated_at":"2022-12-15T20:07:14.883Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/jaraco/packages"},{"uuid":"ronny","login":"ronny","name":null,"email":null,"url":null,"packages_count":57,"html_url":"https://pypi.org/user/ronny/","role":null,"created_at":"2022-12-15T20:07:15.069Z","updated_at":"2022-12-15T20:07:15.069Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/ronny/packages"},{"uuid":"jezdez","login":"jezdez","name":null,"email":null,"url":null,"packages_count":81,"html_url":"https://pypi.org/user/jezdez/","role":null,"created_at":"2022-12-15T20:07:15.079Z","updated_at":"2022-12-15T20:07:15.079Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/jezdez/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":690419,"maintainers_count":292811,"namespaces_count":0,"keywords_count":228590,"github":"pypi","metadata":{"funded_packages_count":48950},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-06-06T05:32:09.692Z","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":126,"unique_repositories_count_past_30_days":0,"recent_issues":[{"uuid":"4381046031","node_id":"PR_kwDOIAKz_s7YPPWS","number":312,"state":"open","title":"Update setuptools-scm requirement from \u003e=8 to \u003e=10.0.5","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-05T02:22:44.000Z","updated_at":"2026-05-06T12:01:06.725Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Update","packages":[{"name":"setuptools-scm","old_version":"\u003e=8","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\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/RedHatInsights/insights-content-template-renderer/pull/312","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedHatInsights%2Finsights-content-template-renderer/issues/312","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/312/packages"},{"uuid":"4366793626","node_id":"PR_kwDOOiFoQc7Xidys","number":35,"state":"open","title":"Update setuptools-scm requirement from \u003e=6.2 to \u003e=10.0.5","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-05-01T21:39:20.000Z","updated_at":"2026-05-01T21:41:18.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Update","packages":[{"name":"setuptools-scm","old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\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/Roman-HLIS-Cosmology-PIT/HAZARD-simulator/pull/35","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Roman-HLIS-Cosmology-PIT%2FHAZARD-simulator/issues/35","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/35/packages"},{"uuid":"4363070603","node_id":"PR_kwDOM7AeMs7XWlAg","number":27,"state":"open","title":"Update setuptools-scm requirement from \u003e=6.2 to \u003e=10.0.5","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-05-01T05:54:06.000Z","updated_at":"2026-05-01T05:56:01.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Update","packages":[{"name":"setuptools-scm","old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\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/Roman-HLIS-Cosmology-PIT/PSFSim/pull/27","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Roman-HLIS-Cosmology-PIT%2FPSFSim/issues/27","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/27/packages"},{"uuid":"4293378746","node_id":"PR_kwDOPwN4Cc7T1I5q","number":206,"state":"open","title":"Bump setuptools-scm from 9.2.2 to 10.0.5","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-04-20T05:44:51.000Z","updated_at":"2026-04-20T05:45:03.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"setuptools-scm","old_version":"9.2.2","new_version":"10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Bumps [setuptools-scm](https://github.com/pypa/setuptools-scm) from 9.2.2 to 10.0.5.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAnchor \u003ccode\u003eget_version\u003c/code\u003e in \u003ccode\u003esetup.py\u003c/code\u003e with \u003ccode\u003erelative_to\u003c/code\u003e and \u003ccode\u003efallback_root\u003c/code\u003e so SCM fallbacks (e.g. \u003ccode\u003ePKG-INFO\u003c/code\u003e) do not resolve against the wrong directory when the build cwd is the workspace or repo root. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1302\"\u003e#1302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnter \u003ccode\u003eGlobalOverrides\u003c/code\u003e for \u003ccode\u003eSETUPTOOLS_SCM\u003c/code\u003e when using \u003ccode\u003esetuptools_scm.get_version\u003c/code\u003e / \u003ccode\u003e_get_version\u003c/code\u003e, avoiding implicit context warnings for direct API callers. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1314\"\u003e#1314\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade pre-commit hooks (Ruff, mypy, codespell), align locked Ruff with hooks, and add Ruff per-file configuration for setuptools_scm re-export modules. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1311\"\u003e#1311\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove monorepo-only \u003ccode\u003e../vcs-versioning/src\u003c/code\u003e from \u003ccode\u003ebuild-system.backend-path\u003c/code\u003e so sdists install under PEP 517 (paths must stay inside the source tree). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1306\"\u003e#1306\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003egriffecli\u003c/code\u003e to test dependencies so the API stability check keeps working after the Griffe CLI was split into a separate package. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1310\"\u003e#1310\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix version file not generated for editable installs. Version files are now written to the source tree by default during inference (restoring pre-10.x behavior), and also registered as \u003ccode\u003ebuild_py\u003c/code\u003e outputs so strict editable installs include them in the persistent auxiliary directory. Set \u003ccode\u003eSETUPTOOLS_SCM_WRITE_TO_SOURCE=0\u003c/code\u003e to disable source-tree writing (e.g., for read-only source directories). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1298\"\u003e#1298\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.1\u003c/h2\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSimplify release tag creation to use a single \u003ccode\u003ecreateRelease\u003c/code\u003e API call instead of separate \u003ccode\u003ecreateTag\u003c/code\u003e/\u003ccode\u003ecreateRef\u003c/code\u003e/\u003ccode\u003ecreateRelease\u003c/code\u003e calls, avoiding dangling tag objects on partial failures. (\u003ca href=\"https://github.com/pypa/setuptools-scm/issues/release-pipeline\"\u003e#release-pipeline\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.0\u003c/h2\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 and 3.9 support. Minimum Python version is now 3.10. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esetuptools-scm now depends on vcs-versioning for core version inference logic. This enables other build backends to use the same version inference without setuptools dependency. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eVersion files (\u003ccode\u003ewrite_to\u003c/code\u003e and \u003ccode\u003eversion_file\u003c/code\u003e) are now written to the build directory\nduring \u003ccode\u003ebuild_py\u003c/code\u003e instead of the source tree during version inference.\nThis enables installing packages from read-only source directories (e.g., Bazel builds).\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/v9.2.2...setuptools-scm-v10.0.5\"\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=setuptools-scm\u0026package-manager=uv\u0026previous-version=9.2.2\u0026new-version=10.0.5)](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/uktrade/github-standards/pull/206","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/uktrade%2Fgithub-standards/issues/206","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/206/packages"},{"uuid":"4257377525","node_id":"PR_kwDODvqDAM7SF8ST","number":2,"state":"closed","title":"Update setuptools-scm requirement from \u003e=3.4.1 to \u003e=10.0.5","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-04-14T00:01:41.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-13T19:30:26.000Z","updated_at":"2026-04-14T00:01:44.000Z","time_to_close":16275,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Update","packages":[{"name":"setuptools-scm","old_version":"\u003e=3.4.1","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\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/sailfishos-mirror/pytest-runner/pull/2","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/sailfishos-mirror%2Fpytest-runner/issues/2","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2/packages"},{"uuid":"4256976059","node_id":"PR_kwDOMQEIKs7SEw_6","number":45,"state":"closed","title":"chore(deps-dev): update setuptools-scm requirement from \u003e=6.2 to \u003e=10.0.5","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-10T18:51:29.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-13T18:19:07.000Z","updated_at":"2026-05-10T18:51:30.000Z","time_to_close":2334742,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): update","packages":[{"name":"setuptools-scm","old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\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/phofmeier/mqtt2db/pull/45","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/phofmeier%2Fmqtt2db/issues/45","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/45/packages"},{"uuid":"4256942842","node_id":"PR_kwDOMDsw-M7SEqgs","number":241,"state":"open","title":"chore(deps-dev): update setuptools-scm requirement from \u003e=8.0 to \u003e=9.2.2","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-13T18:12:55.000Z","updated_at":"2026-04-13T18:16:29.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): update","packages":[{"name":"setuptools-scm","old_version":"\u003e=8.0","new_version":"\u003e=9.2.2","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) to permit the latest version.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/blob/v9.2.2/CHANGELOG.md\"\u003esetuptools-scm's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.2.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1231\"\u003e#1231\u003c/a\u003e: don't warn about \u003ccode\u003etool.setuptools.dynamic.version\u003c/code\u003e when only using file finder.\nThe warning about combining version guessing with setuptools dynamic versions should only\nbe issued when setuptools-scm is performing version inference, not when it's only being\nused for its file finder functionality.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.2.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1216\"\u003e#1216\u003c/a\u003e: accept and create a warning for usages of \u003ccode\u003eversion = attr:\u003c/code\u003e in setuptools config.\nunfortunately dozens of projects cargo-culted that antipattern\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.2.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eadd simplified activation via \u003ccode\u003esetuptools-scm[simple]\u003c/code\u003e extra\u003c/p\u003e\n\u003cp\u003eA new streamlined way to enable version inference without requiring a \u003ccode\u003e[tool.setuptools_scm]\u003c/code\u003e section.\nWhen \u003ccode\u003esetuptools-scm[simple]\u003c/code\u003e is in \u003ccode\u003ebuild-system.requires\u003c/code\u003e and \u003ccode\u003eversion\u003c/code\u003e is in \u003ccode\u003eproject.dynamic\u003c/code\u003e,\nversion inference is automatically enabled with default settings.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eunchecked simplified activation - too many projects use setups where it would fail\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erefine activation logic and add unittest for the relevant cases instead of trying to speedrun setuptools\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.1 (yanked)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1194\"\u003e#1194\u003c/a\u003e: correctly handle version keyword when pyproject metadata is missing\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.0 (yanked)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecomplete reiteration of the decision logic for enabling version inference on setuptools_scm\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/pypa/setuptools-scm/commit/e56b78fcd4c1e79aa36c1e4700fca34c8ff540fe\"\u003e\u003ccode\u003ee56b78f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1232\"\u003e#1232\u003c/a\u003e from RonnyPfannschmidt/fix-1231-dont-warn-when-no-guess\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/4f55e9585e398e13103112a6fd488109d9da4ead\"\u003e\u003ccode\u003e4f55e95\u003c/code\u003e\u003c/a\u003e docs: update changelog for v9.2.2 patch release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/95a0c47553ea0b373238bb64aa344b2c2547c849\"\u003e\u003ccode\u003e95a0c47\u003c/code\u003e\u003c/a\u003e fix: don't warn about tool.setuptools.dynamic.version when only using file fi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/338f562e6a38f8d32fd5aeb4677b3f87fc5a0122\"\u003e\u003ccode\u003e338f562\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1226\"\u003e#1226\u003c/a\u003e from RonnyPfannschmidt/prepare-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a893634c36a074052ed3f6d0e77b076b582c72ab\"\u003e\u003ccode\u003ea893634\u003c/code\u003e\u003c/a\u003e Prepare release v9.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/ad83282242e96fe11c958227740ee03a7a2ed0fe\"\u003e\u003ccode\u003ead83282\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1225\"\u003e#1225\u003c/a\u003e from pypa/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/20a44648f299f64b1241a448bdbafde9b1871ebf\"\u003e\u003ccode\u003e20a4464\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/70f69429c40f8c8d3c4e0eec2d8b4a6794671c88\"\u003e\u003ccode\u003e70f6942\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1219\"\u003e#1219\u003c/a\u003e from RonnyPfannschmidt/fix-1216-explicitly-deprecate...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/14d85c0fb8fa9efd1ec4bac3413f48aea0e319f5\"\u003e\u003ccode\u003e14d85c0\u003c/code\u003e\u003c/a\u003e Install Mercurial on Windows runners via Chocolatey\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c5cec917123e4cc87b490f56b6e7af27a3b0399\"\u003e\u003ccode\u003e8c5cec9\u003c/code\u003e\u003c/a\u003e Fix API stability check workflow to install griffe and improve reporting\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...v9.2.2\"\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\n\n\u003c!-- This is an auto-generated description by cubic. --\u003e\n---\n## Summary by cubic\nRaise the build requirement for `setuptools-scm` from \u003e=8.0 to \u003e=9.2.2 to adopt the latest fixes. This reduces noisy version warnings during builds and aligns with current activation logic.\n\n\u003csup\u003eWritten for commit 4b3b9b7bd92e1ffee45ee7bf120be0b3ad956851. Summary will update on new commits.\u003c/sup\u003e\n\n\u003c!-- End of auto-generated description by cubic. --\u003e\n\n","html_url":"https://github.com/DiogoRibeiro7/PSOD/pull/241","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/DiogoRibeiro7%2FPSOD/issues/241","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/241/packages"},{"uuid":"4256820081","node_id":"PR_kwDOFIi9HM7SERq2","number":88,"state":"closed","title":"chore(deps-dev): update setuptools-scm requirement from \u003e=6.2 to \u003e=9.2.2","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-04-14T03:49:16.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-13T17:49:28.000Z","updated_at":"2026-04-14T03:49:17.000Z","time_to_close":35988,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): update","packages":[{"name":"setuptools-scm","old_version":"\u003e=6.2","new_version":"\u003e=9.2.2","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) to permit the latest version.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/blob/v9.2.2/CHANGELOG.md\"\u003esetuptools-scm's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.2.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1231\"\u003e#1231\u003c/a\u003e: don't warn about \u003ccode\u003etool.setuptools.dynamic.version\u003c/code\u003e when only using file finder.\nThe warning about combining version guessing with setuptools dynamic versions should only\nbe issued when setuptools-scm is performing version inference, not when it's only being\nused for its file finder functionality.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.2.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1216\"\u003e#1216\u003c/a\u003e: accept and create a warning for usages of \u003ccode\u003eversion = attr:\u003c/code\u003e in setuptools config.\nunfortunately dozens of projects cargo-culted that antipattern\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.2.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eadd simplified activation via \u003ccode\u003esetuptools-scm[simple]\u003c/code\u003e extra\u003c/p\u003e\n\u003cp\u003eA new streamlined way to enable version inference without requiring a \u003ccode\u003e[tool.setuptools_scm]\u003c/code\u003e section.\nWhen \u003ccode\u003esetuptools-scm[simple]\u003c/code\u003e is in \u003ccode\u003ebuild-system.requires\u003c/code\u003e and \u003ccode\u003eversion\u003c/code\u003e is in \u003ccode\u003eproject.dynamic\u003c/code\u003e,\nversion inference is automatically enabled with default settings.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eunchecked simplified activation - too many projects use setups where it would fail\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erefine activation logic and add unittest for the relevant cases instead of trying to speedrun setuptools\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.1 (yanked)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1194\"\u003e#1194\u003c/a\u003e: correctly handle version keyword when pyproject metadata is missing\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.0 (yanked)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecomplete reiteration of the decision logic for enabling version inference on setuptools_scm\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/pypa/setuptools-scm/commit/e56b78fcd4c1e79aa36c1e4700fca34c8ff540fe\"\u003e\u003ccode\u003ee56b78f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1232\"\u003e#1232\u003c/a\u003e from RonnyPfannschmidt/fix-1231-dont-warn-when-no-guess\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/4f55e9585e398e13103112a6fd488109d9da4ead\"\u003e\u003ccode\u003e4f55e95\u003c/code\u003e\u003c/a\u003e docs: update changelog for v9.2.2 patch release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/95a0c47553ea0b373238bb64aa344b2c2547c849\"\u003e\u003ccode\u003e95a0c47\u003c/code\u003e\u003c/a\u003e fix: don't warn about tool.setuptools.dynamic.version when only using file fi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/338f562e6a38f8d32fd5aeb4677b3f87fc5a0122\"\u003e\u003ccode\u003e338f562\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1226\"\u003e#1226\u003c/a\u003e from RonnyPfannschmidt/prepare-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a893634c36a074052ed3f6d0e77b076b582c72ab\"\u003e\u003ccode\u003ea893634\u003c/code\u003e\u003c/a\u003e Prepare release v9.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/ad83282242e96fe11c958227740ee03a7a2ed0fe\"\u003e\u003ccode\u003ead83282\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1225\"\u003e#1225\u003c/a\u003e from pypa/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/20a44648f299f64b1241a448bdbafde9b1871ebf\"\u003e\u003ccode\u003e20a4464\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/70f69429c40f8c8d3c4e0eec2d8b4a6794671c88\"\u003e\u003ccode\u003e70f6942\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1219\"\u003e#1219\u003c/a\u003e from RonnyPfannschmidt/fix-1216-explicitly-deprecate...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/14d85c0fb8fa9efd1ec4bac3413f48aea0e319f5\"\u003e\u003ccode\u003e14d85c0\u003c/code\u003e\u003c/a\u003e Install Mercurial on Windows runners via Chocolatey\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c5cec917123e4cc87b490f56b6e7af27a3b0399\"\u003e\u003ccode\u003e8c5cec9\u003c/code\u003e\u003c/a\u003e Fix API stability check workflow to install griffe and improve reporting\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...v9.2.2\"\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/epg2xml/epg2xml/pull/88","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/epg2xml%2Fepg2xml/issues/88","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/88/packages"},{"uuid":"4256618950","node_id":"PR_kwDOA8d_js7SDpSN","number":147,"state":"closed","title":"Update setuptools-scm requirement from \u003e=6.2 to \u003e=10.0.5","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-07T23:08:51.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-13T17:11:17.000Z","updated_at":"2026-06-07T23:08:52.000Z","time_to_close":4773454,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Update","packages":[{"name":"setuptools-scm","old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n","html_url":"https://github.com/aio-libs/pytest-aiohttp/pull/147","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/aio-libs%2Fpytest-aiohttp/issues/147","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/147/packages"},{"uuid":"4254044022","node_id":"PR_kwDOHTtbCs7R9Ryn","number":134,"state":"closed","title":"deps(deps-dev): update setuptools-scm requirement from \u003e=6.2 to \u003e=10.0.5","user":"dependabot[bot]","labels":["dependencies","automated"],"assignees":["hostcc"],"locked":false,"comments_count":5,"pull_request":true,"closed_at":"2026-04-13T18:51:10.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-13T11:15:36.000Z","updated_at":"2026-04-13T18:52:31.000Z","time_to_close":27334,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps-dev): update","packages":[{"name":"setuptools-scm","old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\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/hostcc/energomera-hass-mqtt/pull/134","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/hostcc%2Fenergomera-hass-mqtt/issues/134","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/134/packages"},{"uuid":"4253692346","node_id":"PR_kwDOMB2Joc7R8mdX","number":181,"state":"closed","title":"Bump the pip-deps group across 1 directory with 8 updates","user":"dependabot[bot]","labels":["bumpless","major"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-04-20T11:13:30.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-13T10:35:23.000Z","updated_at":"2026-04-20T11:13:32.000Z","time_to_close":607087,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"pip-deps","update_count":8,"packages":[{"name":"setuptools-scm","old_version":"9.2.2","new_version":"10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"},{"name":"gdal","old_version":"3.12.1","new_version":"3.12.3","repository_url":"https://github.com/OSGeo/gdal"},{"name":"numpy","old_version":"2.4.2","new_version":"2.4.4","repository_url":"https://github.com/numpy/numpy"},{"name":"pytest","old_version":"9.0.2","new_version":"9.0.3","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"7.0.0","new_version":"7.1.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"ruff","old_version":"0.15.0","new_version":"0.15.10","repository_url":"https://github.com/astral-sh/ruff"},{"name":"mypy","old_version":"1.19.1","new_version":"1.20.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools](https://github.com/pypa/setuptools), [setuptools-scm](https://github.com/pypa/setuptools-scm), [gdal](https://github.com/OSGeo/gdal), [numpy](https://github.com/numpy/numpy), [pytest](https://github.com/pytest-dev/pytest), [pytest-cov](https://github.com/pytest-dev/pytest-cov), [ruff](https://github.com/astral-sh/ruff) and [mypy](https://github.com/python/mypy) to permit the latest version.\nUpdates `setuptools` to 82.0.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools/blob/main/NEWS.rst\"\u003esetuptools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ev82.0.1\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the loading of \u003ccode\u003elauncher manifest.xml\u003c/code\u003e file. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5047\"\u003e#5047\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplaced deprecated \u003ccode\u003ejson.__version__\u003c/code\u003e with fixture in tests. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5186\"\u003e#5186\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd advice about how to improve predictability when installing sdists. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5168\"\u003e#5168\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4941\"\u003e#4941\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev82.0.0\u003c/h1\u003e\n\u003ch2\u003eDeprecations and Removals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003epkg_resources\u003c/code\u003e has been removed from Setuptools. Most common uses of \u003ccode\u003epkg_resources\u003c/code\u003e have been superseded by the \u003ccode\u003eimportlib.resources \u0026lt;https://docs.python.org/3/library/importlib.resources.html\u0026gt;\u003c/code\u003e_ and \u003ccode\u003eimportlib.metadata \u0026lt;https://docs.python.org/3/library/importlib.metadata.html\u0026gt;\u003c/code\u003e_ projects. Projects and environments relying on \u003ccode\u003epkg_resources\u003c/code\u003e for namespace packages or other behavior should depend on older versions of \u003ccode\u003esetuptools\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev81.0.0\u003c/h1\u003e\n\u003ch2\u003eDeprecations and Removals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for the --dry-run parameter to setup.py. This one feature by its nature threads through lots of core and ancillary functionality, adding complexity and friction. Removal of this parameter will help decouple the compiler functionality from distutils and thus the eventual full integration of distutils. These changes do affect some class and function signatures, so any derivative functionality may require some compatibility shims to support their expected interface. Please report any issues to the Setuptools project for investigation. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4872\"\u003e#4872\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.10.2\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate vendored dependencies. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5159\"\u003e#5159\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMisc\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/5a13876673a41e3cd21d4d6e587f53d0fb4fd8e5\"\u003e\u003ccode\u003e5a13876\u003c/code\u003e\u003c/a\u003e Bump version: 82.0.0 → 82.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/51ab8f183f1c4112675d8d6ec6b004406d518ee8\"\u003e\u003ccode\u003e51ab8f1\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5194\"\u003e#5194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/f9c37b20bb0ed11203f676f9683452a4c3ace6f6\"\u003e\u003ccode\u003ef9c37b2\u003c/code\u003e\u003c/a\u003e Docs/CI: Fix intersphinx references (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5195\"\u003e#5195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/8173db2a4fc0f6cb28926b3dba59116b79f435c8\"\u003e\u003ccode\u003e8173db2\u003c/code\u003e\u003c/a\u003e Docs: Fix intersphinx references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/09bafbc74923f2a3591b5b098be75d6af6ca5141\"\u003e\u003ccode\u003e09bafbc\u003c/code\u003e\u003c/a\u003e Fix past tense on newsfragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/461ea56c8e629819a23920f44d9298d4f041abde\"\u003e\u003ccode\u003e461ea56\u003c/code\u003e\u003c/a\u003e Add news fragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/c4ffe535b58235ff9f9ebe90d24a2cffb57e70ae\"\u003e\u003ccode\u003ec4ffe53\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/749258b1a96c7accc05ea7d842fb19fc378866fe\"\u003e\u003ccode\u003e749258b\u003c/code\u003e\u003c/a\u003e Cleanup \u003ccode\u003epkg_resources\u003c/code\u003e dependencies and configuration (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/2019c16701667db1010c62ec11c6ef78c2e58206\"\u003e\u003ccode\u003e2019c16\u003c/code\u003e\u003c/a\u003e Parse \u003ccode\u003eext-module.define-macros\u003c/code\u003e from \u003ccode\u003epyproject.toml\u003c/code\u003e as list of tuples (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/b809c86a37d97fcce290d5f51d4c293ab40bc685\"\u003e\u003ccode\u003eb809c86\u003c/code\u003e\u003c/a\u003e Sync setuptools schema with validate-pyproject (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools/compare/v61.0.0...v82.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools-scm` from 9.2.2 to 10.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAnchor \u003ccode\u003eget_version\u003c/code\u003e in \u003ccode\u003esetup.py\u003c/code\u003e with \u003ccode\u003erelative_to\u003c/code\u003e and \u003ccode\u003efallback_root\u003c/code\u003e so SCM fallbacks (e.g. \u003ccode\u003ePKG-INFO\u003c/code\u003e) do not resolve against the wrong directory when the build cwd is the workspace or repo root. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1302\"\u003e#1302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnter \u003ccode\u003eGlobalOverrides\u003c/code\u003e for \u003ccode\u003eSETUPTOOLS_SCM\u003c/code\u003e when using \u003ccode\u003esetuptools_scm.get_version\u003c/code\u003e / \u003ccode\u003e_get_version\u003c/code\u003e, avoiding implicit context warnings for direct API callers. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1314\"\u003e#1314\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade pre-commit hooks (Ruff, mypy, codespell), align locked Ruff with hooks, and add Ruff per-file configuration for setuptools_scm re-export modules. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1311\"\u003e#1311\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove monorepo-only \u003ccode\u003e../vcs-versioning/src\u003c/code\u003e from \u003ccode\u003ebuild-system.backend-path\u003c/code\u003e so sdists install under PEP 517 (paths must stay inside the source tree). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1306\"\u003e#1306\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003egriffecli\u003c/code\u003e to test dependencies so the API stability check keeps working after the Griffe CLI was split into a separate package. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1310\"\u003e#1310\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix version file not generated for editable installs. Version files are now written to the source tree by default during inference (restoring pre-10.x behavior), and also registered as \u003ccode\u003ebuild_py\u003c/code\u003e outputs so strict editable installs include them in the persistent auxiliary directory. Set \u003ccode\u003eSETUPTOOLS_SCM_WRITE_TO_SOURCE=0\u003c/code\u003e to disable source-tree writing (e.g., for read-only source directories). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1298\"\u003e#1298\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.1\u003c/h2\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSimplify release tag creation to use a single \u003ccode\u003ecreateRelease\u003c/code\u003e API call instead of separate \u003ccode\u003ecreateTag\u003c/code\u003e/\u003ccode\u003ecreateRef\u003c/code\u003e/\u003ccode\u003ecreateRelease\u003c/code\u003e calls, avoiding dangling tag objects on partial failures. (\u003ca href=\"https://github.com/pypa/setuptools-scm/issues/release-pipeline\"\u003e#release-pipeline\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.0\u003c/h2\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 and 3.9 support. Minimum Python version is now 3.10. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esetuptools-scm now depends on vcs-versioning for core version inference logic. This enables other build backends to use the same version inference without setuptools dependency. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eVersion files (\u003ccode\u003ewrite_to\u003c/code\u003e and \u003ccode\u003eversion_file\u003c/code\u003e) are now written to the build directory\nduring \u003ccode\u003ebuild_py\u003c/code\u003e instead of the source tree during version inference.\nThis enables installing packages from read-only source directories (e.g., Bazel builds).\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/v9.2.2...setuptools-scm-v10.0.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gdal` from 3.12.1 to 3.12.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/OSGeo/gdal/releases\"\u003egdal's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eGDAL 3.12.3\u003c/h2\u003e\n\u003cp\u003eBug fix release. See release notes: \u003ca href=\"https://github.com/OSGeo/gdal/blob/v3.12.3/NEWS.md\"\u003ehttps://github.com/OSGeo/gdal/blob/v3.12.3/NEWS.md\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eGDAL 3.12.2\u003c/h2\u003e\n\u003cp\u003eBug fix release. See release notes: \u003ca href=\"https://github.com/OSGeo/gdal/blob/v3.12.2/NEWS.md\"\u003ehttps://github.com/OSGeo/gdal/blob/v3.12.2/NEWS.md\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/OSGeo/gdal/blob/master/NEWS.md\"\u003egdal's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eGDAL/OGR 3.12.3 Release Notes\u003c/h1\u003e\n\u003cp\u003eGDAL 3.12.3 is a bugfix release.\u003c/p\u003e\n\u003ch2\u003eBuild\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePDF: add compatibility with Poppler 26.02.0 (\u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/13857\"\u003e#13857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHDF5: Adding proper support for parallel HDF5\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eGDAL 3.12.3\u003c/h2\u003e\n\u003ch3\u003ePort\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd CPLLexicallyNormalize() to normalize file paths, to fix oss-fuzz#473110068\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAlgorithms\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHomography GCP transformer: fix bad scaling factor on overviews (3.11.0\n\u003ccode\u003eqgis/QGIS#65011\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eGDALCreateAndReprojectImage(): fix memleak in error code path (\u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/14001\"\u003e#14001\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eGDALWarpResolveWorkingDataType(): do not default to UInt8 before looking at\ndata type bands (\u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/14063\"\u003e#14063\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eWarper: add dedicated code path for Int8 nearest neighbour resampling (\u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/14063\"\u003e#14063\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eviewshed: allow out-of-range values outside of Byte range for DEM and GROUND\nmodes\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRMS overview resampling: fix error in normalization formula\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eUtilities\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003egdal raster calc: properly handle inputs with no geotransform\u003c/li\u003e\n\u003cli\u003egdal raster contour/polygonize: expose --output-layer for pipeline mode\u003c/li\u003e\n\u003cli\u003egdal raster edit: add missing --oo option in standalone mode (\u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/14107\"\u003e#14107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003egdalinfo: support again -wkt_format WKT1_ESRI (\u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/13906\"\u003e#13906\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003egdaltindex: use GDALWarp for reprojected extents\u003c/li\u003e\n\u003cli\u003egdal pipeline: fix nullptr deref on 'read -h' pipeline in non-command line\nmode (oss-fuzz#485952614)\u003c/li\u003e\n\u003cli\u003egdal dataset copy/rename: make it work with vector datasets, and directories\n(\u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/14097\"\u003e#14097\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003egdal2tiles: fix wrong extent computation on source raster with non-square pixels\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRaster drivers\u003c/h3\u003e\n\u003cp\u003eGIF driver:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eavoid potential left shift of \u0026gt;=32 positions (oss-fuzz#481899239)\u003c/li\u003e\n\u003cli\u003eavoid potential crash on corrupted datasets (oss-fuzz#481841770)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eGeoraster driver:\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/OSGeo/gdal/commit/5e70e43057176e6d6c45a147976daf04593f8471\"\u003e\u003ccode\u003e5e70e43\u003c/code\u003e\u003c/a\u003e Update release date for GDAL 3.12.3rc2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/fc34adf279db837e82675a152bc601c3f7d69bd3\"\u003e\u003ccode\u003efc34adf\u003c/code\u003e\u003c/a\u003e /vsis3/: fix out of bounds introduced by 605a79de8c81d639bd1979dd503c1bd95456...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/76af31eae3bcb493b496fd1e6312fdc23d786101\"\u003e\u003ccode\u003e76af31e\u003c/code\u003e\u003c/a\u003e Bump version numbers for GDAL 3.12.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/1f755bc228bb692329630d5179eae97f0f7c4cf8\"\u003e\u003ccode\u003e1f755bc\u003c/code\u003e\u003c/a\u003e NEWS.md: GDAL 3.12.3 news\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/84652294e2a571825a61535a546defde0a3206b2\"\u003e\u003ccode\u003e8465229\u003c/code\u003e\u003c/a\u003e typo fix [ci skip]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/253599ddccb392f96c09d0c5ed483e7e648adf90\"\u003e\u003ccode\u003e253599d\u003c/code\u003e\u003c/a\u003e gdal raster edit: add missing --oo option in standalone mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/45030e4cb51bdb508f00fdaa3b3d85b1a51ca8ae\"\u003e\u003ccode\u003e45030e4\u003c/code\u003e\u003c/a\u003e CI: Remove cppcheck 1.90 configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/5a1acd7cb81108c47af93f201f57cc7af9af0eeb\"\u003e\u003ccode\u003e5a1acd7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/14141\"\u003e#14141\u003c/a\u003e from OSGeo/backport-14133-to-release/3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/b714c3032b7ec684debfb687dda6eeb3eaf72e03\"\u003e\u003ccode\u003eb714c30\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/14140\"\u003e#14140\u003c/a\u003e from OSGeo/backport-14131-to-release/3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/58183f7ccf5934560456159b91f9c88303c01b40\"\u003e\u003ccode\u003e58183f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/14139\"\u003e#14139\u003c/a\u003e from OSGeo/backport-14123-to-release/3.12\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/OSGeo/gdal/compare/v3.12.1...v3.12.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.4.2 to 2.4.4\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\u003e2.4.4 (Mar 29, 2026)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.4.4 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.4.4 is a patch release that fixes bugs discovered after the 2.4.3\nrelease. It should finally close issue \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30816\"\u003e#30816\u003c/a\u003e, the OpenBLAS threading problem\non ARM.\u003c/p\u003e\n\u003cp\u003eThis release supports Python versions 3.11-3.14\u003c/p\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eA total of 8 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\u003eCharles Harris\u003c/li\u003e\n\u003cli\u003eDaniel Haag +\u003c/li\u003e\n\u003cli\u003eDenis Prokopenko +\u003c/li\u003e\n\u003cli\u003eHarshith J +\u003c/li\u003e\n\u003cli\u003eKoki Watanabe\u003c/li\u003e\n\u003cli\u003eMarten van Kerkwijk\u003c/li\u003e\n\u003cli\u003eMatti Picus\u003c/li\u003e\n\u003cli\u003eNathan Goldbaum\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ePull requests merged\u003c/h2\u003e\n\u003cp\u003eA total of 7 pull requests were merged for this release.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30978\"\u003e#30978\u003c/a\u003e: MAINT: Prepare 2.4.x for further development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31049\"\u003e#31049\u003c/a\u003e: BUG: Add test to reproduce problem described in \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30816\"\u003e#30816\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30818\"\u003e#30818\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31052\"\u003e#31052\u003c/a\u003e: BUG: fix FNV-1a 64-bit selection by using NPY_SIZEOF_UINTP (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31035\"\u003e#31035\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31053\"\u003e#31053\u003c/a\u003e: BUG: avoid warning on ufunc with where=True and no output\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31058\"\u003e#31058\u003c/a\u003e: DOC: document caveats of ndarray.resize on 3.14 and newer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31079\"\u003e#31079\u003c/a\u003e: TST: fix POWER VSX feature mapping (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30801\"\u003e#30801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31084\"\u003e#31084\u003c/a\u003e: MAINT: numpy.i: Replace deprecated \u003ccode\u003esprintf\u003c/code\u003e with \u003ccode\u003esnprintf\u003c/code\u003e...\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.4.3 (Mar 9, 2026)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.4.3 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.4.3 is a patch release that fixes bugs discovered after the\n2.4.2 release. The most user visible fix may be a threading fix for\nOpenBLAS on ARM, closing issue \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30816\"\u003e#30816\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis release supports Python versions 3.11-3.14\u003c/p\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eA total of 11 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\u003eAntareep Sarkar +\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/be93fe2960dbf49b4647f5783c66d967fb2c65b5\"\u003e\u003ccode\u003ebe93fe2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31090\"\u003e#31090\u003c/a\u003e from charris/prepare-2.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/f5245dc7ea5c6279c59cb0d5de81113229841290\"\u003e\u003ccode\u003ef5245dc\u003c/code\u003e\u003c/a\u003e REL: Prepare for the NumPy 2.4.4 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/02e838ba270a5ca3dd8afc5a31c090cd34a56615\"\u003e\u003ccode\u003e02e838b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31084\"\u003e#31084\u003c/a\u003e from charris/backport-31056\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/fa74b2d05f8f7604bf6635d5280c3216c8ec667f\"\u003e\u003ccode\u003efa74b2d\u003c/code\u003e\u003c/a\u003e MAINT: numpy.i: Replace deprecated \u003ccode\u003esprintf\u003c/code\u003e with \u003ccode\u003esnprintf\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31056\"\u003e#31056\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/533a6db96dfa2556a61102a58c35fd64eaf3fa2b\"\u003e\u003ccode\u003e533a6db\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31079\"\u003e#31079\u003c/a\u003e from charris/backport-20801\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/9e496cbd0a281195bd779ae1833f2a8f4a1d46a7\"\u003e\u003ccode\u003e9e496cb\u003c/code\u003e\u003c/a\u003e TST: fix POWER VSX feature mapping (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30801\"\u003e#30801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/8052c4b69ef18e582709af946f93f9e58b848f39\"\u003e\u003ccode\u003e8052c4b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31058\"\u003e#31058\u003c/a\u003e from charris/backport-31021\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/7f13b5ad2b69fd6ea6aa3af7036b2dcf98e96486\"\u003e\u003ccode\u003e7f13b5a\u003c/code\u003e\u003c/a\u003e MAINT: Skip test on PyPy.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/4c5fdd66c8f379a1e2b3f40fa62bd0b87769d1c7\"\u003e\u003ccode\u003e4c5fdd6\u003c/code\u003e\u003c/a\u003e MAINT: Remove unused import of tracemalloc.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/a3ca5ed354b26e0fd6e35bf29765a24271ed7c3a\"\u003e\u003ccode\u003ea3ca5ed\u003c/code\u003e\u003c/a\u003e Update numpy/_core/src/multiarray/shape.c\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/numpy/numpy/compare/v2.4.2...v2.4.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 9.0.2 to 9.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.0.3\u003c/h2\u003e\n\u003ch1\u003epytest 9.0.3 (2026-04-07)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12444\"\u003e#12444\u003c/a\u003e: Fixed \u003ccode\u003epytest.approx\u003c/code\u003e which now correctly takes into account \u003ccode\u003e~collections.abc.Mapping\u003c/code\u003e keys order to compare them.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13634\"\u003e#13634\u003c/a\u003e: Blocking a \u003ccode\u003econftest.py\u003c/code\u003e file using the \u003ccode\u003e-p no:\u003c/code\u003e option is now explicitly disallowed.\u003c/p\u003e\n\u003cp\u003ePreviously this resulted in an internal assertion failure during plugin loading.\u003c/p\u003e\n\u003cp\u003ePytest now raises a clear \u003ccode\u003eUsageError\u003c/code\u003e explaining that conftest files are not plugins and cannot be disabled via \u003ccode\u003e-p\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13734\"\u003e#13734\u003c/a\u003e: Fixed crash when a test raises an exceptiongroup with \u003ccode\u003e__tracebackhide__ = True\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14195\"\u003e#14195\u003c/a\u003e: Fixed an issue where non-string messages passed to \u003c!-- raw HTML omitted --\u003eunittest.TestCase.subTest()\u003c!-- raw HTML omitted --\u003e were not printed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14343\"\u003e#14343\u003c/a\u003e: Fixed use of insecure temporary directory (CVE-2025-71176).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13388\"\u003e#13388\u003c/a\u003e: Clarified documentation for \u003ccode\u003e-p\u003c/code\u003e vs \u003ccode\u003ePYTEST_PLUGINS\u003c/code\u003e plugin loading and fixed an incorrect \u003ccode\u003e-p\u003c/code\u003e example.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13731\"\u003e#13731\u003c/a\u003e: Clarified that capture fixtures (e.g. \u003ccode\u003ecapsys\u003c/code\u003e and \u003ccode\u003ecapfd\u003c/code\u003e) take precedence over the \u003ccode\u003e-s\u003c/code\u003e / \u003ccode\u003e--capture=no\u003c/code\u003e command-line options in \u003ccode\u003eAccessing captured output from a test function \u0026lt;accessing-captured-output\u0026gt;\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14088\"\u003e#14088\u003c/a\u003e: Clarified that the default \u003ccode\u003epytest_collection\u003c/code\u003e hook sets \u003ccode\u003esession.items\u003c/code\u003e before it calls \u003ccode\u003epytest_collection_finish\u003c/code\u003e, not after.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14255\"\u003e#14255\u003c/a\u003e: TOML integer log levels must be quoted: Updating reference documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12689\"\u003e#12689\u003c/a\u003e: The test reports are now published to Codecov from GitHub Actions.\nThe test statistics is visible \u003ca href=\"https://app.codecov.io/gh/pytest-dev/pytest/tests\"\u003eon the web interface\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e-- by \u003ccode\u003ealeguy02\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a7d58d7a21b78581e636bbbdea13c66ad1657c1e\"\u003e\u003ccode\u003ea7d58d7\u003c/code\u003e\u003c/a\u003e Prepare release version 9.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/089d98199c253d8f89a040243bc4f2aa6cd5ab22\"\u003e\u003ccode\u003e089d981\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14366\"\u003e#14366\u003c/a\u003e from bluetech/revert-14193-backport\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/8127eaf4ab7f6b2fdd0dc1b38343ec97aeef05ac\"\u003e\u003ccode\u003e8127eaf\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Fix: assertrepr_compare respects dict insertion order (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14050\"\u003e#14050\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14193\"\u003e#14193\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/99a7e6029e7a6e8d53e5df114b1346e035370241\"\u003e\u003ccode\u003e99a7e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14363\"\u003e#14363\u003c/a\u003e from pytest-dev/patchback/backports/9.0.x/95d8423bd...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ddee02a578da30dd43aedc39c1c1f1aaadfcee95\"\u003e\u003ccode\u003eddee02a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14343\"\u003e#14343\u003c/a\u003e from bluetech/cve-2025-71176-simple\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/74eac6916fee34726cb194f16c516e96fbd29619\"\u003e\u003ccode\u003e74eac69\u003c/code\u003e\u003c/a\u003e doc: Update training info (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14298\"\u003e#14298\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14301\"\u003e#14301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f92dee777cfdb77d1c43633d02766ddf1f07c869\"\u003e\u003ccode\u003ef92dee7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14267\"\u003e#14267\u003c/a\u003e from pytest-dev/patchback/backports/9.0.x/d6fa26c62...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7ee58acc8777c31ac6cf388d01addf5a414a7439\"\u003e\u003ccode\u003e7ee58ac\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12378\"\u003e#12378\u003c/a\u003e from Pierre-Sassoulas/fix-implicit-str-concat-and-d...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/37da870d37e3a2f5177cae075c7b9ae279432bf8\"\u003e\u003ccode\u003e37da870\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14259\"\u003e#14259\u003c/a\u003e from mitre88/patch-4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14268\"\u003e#14268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c34bfa3b7acb65b594707c714f1d8461b0304eed\"\u003e\u003ccode\u003ec34bfa3\u003c/code\u003e\u003c/a\u003e Add explanation for string context diffs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14257\"\u003e#14257\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14266\"\u003e#14266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/9.0.2...9.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 7.0.0 to 7.1.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst\"\u003epytest-cov's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.0 (2026-03-21)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed total coverage computation to always be consistent, regardless of reporting settings.\nPreviously some reports could produce different total counts, and consequently can make --cov-fail-under behave different depending on\nreporting options.\nSee \u003ccode\u003e[#641](https://github.com/pytest-dev/pytest-cov/issues/641) \u0026lt;https://github.com/pytest-dev/pytest-cov/issues/641\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImprove handling of ResourceWarning from sqlite3.\u003c/p\u003e\n\u003cp\u003eThe plugin adds warning filter for sqlite3 \u003ccode\u003eResourceWarning\u003c/code\u003e unclosed database (since 6.2.0).\nIt checks if there is already existing plugin for this message by comparing filter regular expression.\nWhen filter is specified on command line the message is escaped and does not match an expected message.\nA check for an escaped regular expression is added to handle this case.\u003c/p\u003e\n\u003cp\u003eWith this fix one can suppress \u003ccode\u003eResourceWarning\u003c/code\u003e from sqlite3 from command line::\u003c/p\u003e\n\u003cp\u003epytest -W \u0026quot;ignore:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\u0026quot; ...\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eVarious improvements to documentation.\nContributed by Art Pelling in \u003ccode\u003e[#718](https://github.com/pytest-dev/pytest-cov/issues/718) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/718\u0026gt;\u003c/code\u003e_ and\n\u0026quot;vivodi\u0026quot; in \u003ccode\u003e[#738](https://github.com/pytest-dev/pytest-cov/issues/738) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/738\u0026gt;\u003c/code\u003e\u003cem\u003e.\nAlso closed \u003ccode\u003e[#736](https://github.com/pytest-dev/pytest-cov/issues/736) \u0026lt;https://github.com/pytest-dev/pytest-cov/issues/736\u0026gt;\u003c/code\u003e\u003c/em\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed some assertions in tests.\nContributed by in Markéta Machová in \u003ccode\u003e[#722](https://github.com/pytest-dev/pytest-cov/issues/722) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/722\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved unnecessary coverage configuration copying (meant as a backup because reporting commands had configuration side-effects before coverage 5.0).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/66c8a526b1246b5eb8fb1bc218878131bc628622\"\u003e\u003ccode\u003e66c8a52\u003c/code\u003e\u003c/a\u003e Bump version: 7.0.0 → 7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f7076624784332594aa4cb3585d4757d295db15e\"\u003e\u003ccode\u003ef707662\u003c/code\u003e\u003c/a\u003e Make the examples use pypy 3.11.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6049a7847872e3139e6c82e93787123df5dc8672\"\u003e\u003ccode\u003e6049a78\u003c/code\u003e\u003c/a\u003e Make context test use the old ctracer (seems the new sysmon tracer behaves di...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/8ebf20bbbc73478b3f8fd36d30237d9ea083f06b\"\u003e\u003ccode\u003e8ebf20b\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/861d30e60d571f97259c6b718b71c819d5dbc3b9\"\u003e\u003ccode\u003e861d30e\u003c/code\u003e\u003c/a\u003e Remove the backup context manager  - shouldn't be needed since coverage 5.0, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/fd4c956014035527f0c3c8d7faef3f8cfdadac7f\"\u003e\u003ccode\u003efd4c956\u003c/code\u003e\u003c/a\u003e Pass the precision on the nulled total (seems that there's some caching goion...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/78c9c4ecb005faf4962fd86ff7bf9c9cce9554d6\"\u003e\u003ccode\u003e78c9c4e\u003c/code\u003e\u003c/a\u003e Only run the 3.9 on older deps.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4849a922e8be725c662a3d9175da571ace6545dc\"\u003e\u003ccode\u003e4849a92\u003c/code\u003e\u003c/a\u003e Punctuation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/197c35e2f37031fd1927715307ab6eed7cb3d2b7\"\u003e\u003ccode\u003e197c35e\u003c/code\u003e\u003c/a\u003e Update changelog and hopefully I don't forget to publish release again :))\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/14dc1c92d44108384e39803888635fdbfc578b7f\"\u003e\u003ccode\u003e14dc1c9\u003c/code\u003e\u003c/a\u003e Update examples to use 3.11 and make the adhoc layout example look a bit more...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v7.0.0...v7.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.15.0 to 0.15.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.10\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-04-09.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Allow closures in except handlers (\u003ccode\u003eLOG004\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24464\"\u003e#24464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Make \u003ccode\u003eSLF\u003c/code\u003e diagnostics robust to non-self-named variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24281\"\u003e#24281\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Make the fix for \u003ccode\u003ecollapsible-if\u003c/code\u003e safe in \u003ccode\u003epreview\u003c/code\u003e (\u003ccode\u003eSIM102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24371\"\u003e#24371\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid emitting multi-line f-string elements before Python 3.12 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24377\"\u003e#24377\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid syntax error from \u003ccode\u003eE502\u003c/code\u003e fixes in f-strings and t-strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24410\"\u003e#24410\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eStrip form feeds from indent passed to \u003ccode\u003ededent_to\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24381\"\u003e#24381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Fix panic caused by handling of octals (\u003ccode\u003eUP012\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24390\"\u003e#24390\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReject multi-line f-string elements before Python 3.12 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24355\"\u003e#24355\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Treat f-string interpolation as potential side effect (\u003ccode\u003eRUF019\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24426\"\u003e#24426\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for custom file extensions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24463\"\u003e#24463\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument adding fixes in CONTRIBUTING.md (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24393\"\u003e#24393\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix JSON typo in settings example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24517\"\u003e#24517\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/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dylwil3\"\u003e\u003ccode\u003e@​dylwil3\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/silverstein\"\u003e\u003ccode\u003e@​silverstein\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anishgirianish\"\u003e\u003ccode\u003e@​anishgirianish\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/shizukushq\"\u003e\u003ccode\u003e@​shizukushq\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zanieb\"\u003e\u003ccode\u003e@​zanieb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eInstall ruff 0.15.10\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.15.10/ruff-installer.sh | sh\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.10\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-04-09.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Allow closures in except handlers (\u003ccode\u003eLOG004\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24464\"\u003e#24464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Make \u003ccode\u003eSLF\u003c/code\u003e diagnostics robust to non-self-named variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24281\"\u003e#24281\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Make the fix for \u003ccode\u003ecollapsible-if\u003c/code\u003e safe in \u003ccode\u003epreview\u003c/code\u003e (\u003ccode\u003eSIM102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24371\"\u003e#24371\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid emitting multi-line f-string elements before Python 3.12 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24377\"\u003e#24377\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid syntax error from \u003ccode\u003eE502\u003c/code\u003e fixes in f-strings and t-strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24410\"\u003e#24410\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eStrip form feeds from indent passed to \u003ccode\u003ededent_to\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24381\"\u003e#24381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Fix panic caused by handling of octals (\u003ccode\u003eUP012\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24390\"\u003e#24390\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReject multi-line f-string elements before Python 3.12 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24355\"\u003e#24355\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Treat f-string interpolation as potential side effect (\u003ccode\u003eRUF019\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24426\"\u003e#24426\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for custom file extensions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24463\"\u003e#24463\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument adding fixes in CONTRIBUTING.md (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24393\"\u003e#24393\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix JSON typo in settings example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24517\"\u003e#24517\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/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dylwil3\"\u003e\u003ccode\u003e@​dylwil3\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/silverstein\"\u003e\u003ccode\u003e@​silverstein\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anishgirianish\"\u003e\u003ccode\u003e@​anishgirianish\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/shizukushq\"\u003e\u003ccode\u003e@​shizukushq\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zanieb\"\u003e\u003ccode\u003e@​zanieb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.15.9\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-04-02.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Flag annotated variable redeclarations as \u003ccode\u003eF811\u003c/code\u003e in preview mode (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24244\"\u003e#24244\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Allow dunder-named assignments in non-strict mode for \u003ccode\u003eRUF067\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24089\"\u003e#24089\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/252f76102a618bff6537b6c53c316ca3837f4abf\"\u003e\u003ccode\u003e252f761\u003c/code\u003e\u003c/a\u003e Bump 0.15.10 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24519\"\u003e#24519\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/37a1ec8bb8e30955787b0cdf6e97f7f2254dba7f\"\u003e\u003ccode\u003e37a1ec8\u003c/code\u003e\u003c/a\u003e [ty] Fix assignability of intersections with bounded typevars (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24502\"\u003e#24502\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/f518cc9ca0c830773dd49c3964eb5e49d52c8aed\"\u003e\u003ccode\u003ef518cc9\u003c/code\u003e\u003c/a\u003e [ty] Allow partially stringified \u003ccode\u003etype[…]\u003c/code\u003e annotations (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24518\"\u003e#24518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/16c4090d0a711b9c0523b932014f3daf140f35bc\"\u003e\u003ccode\u003e16c4090\u003c/code\u003e\u003c/a\u003e docs: fix JSON typo in settings example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24517\"\u003e#24517\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/99d97bd72f1934ac2af93e52468c10ef1c7a1a4e\"\u003e\u003ccode\u003e99d97bd\u003c/code\u003e\u003c/a\u003e [ty] Tighten up a few edge cases in \u003ccode\u003eConcatenate\u003c/code\u003e type-expression parsing (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/2\"\u003e#2\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/2714e345bdd64a5baae3844c0d25db7b0b9fe330\"\u003e\u003ccode\u003e2714e34\u003c/code\u003e\u003c/a\u003e [ty] Enable \u003ccode\u003epull-diagnostics\u003c/code\u003e by default in E2E tests (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24516\"\u003e#24516\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d8bc700722ab1b7272a4d724839da7c569b349d4\"\u003e\u003ccode\u003ed8bc700\u003c/code\u003e\u003c/a\u003e LSP: Add support for custom extensions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24463\"\u003e#24463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/a45f96d65dbd4f958b07accd718f8d2af48cb956\"\u003e\u003ccode\u003ea45f96d\u003c/code\u003e\u003c/a\u003e [ty] stop special-casing str constructor (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24514\"\u003e#24514\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/87a0f01cfd016e0297ef05ab638cde006bf8d947\"\u003e\u003ccode\u003e87a0f01\u003c/code\u003e\u003c/a\u003e [ruff] Treat f-string interpolation as potential side effect in RUF019 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24426\"\u003e#24426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/e9ba8489b8d1f1fd5fd66887a74d5f2f58f733d4\"\u003e\u003ccode\u003ee9ba848\u003c/code\u003e\u003c/a\u003e [ty] Fix excess subscript argument inference for non-generic types (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24354\"\u003e#24354\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.15.0...0.15.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mypy` from 1.19.1 to 1.20.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python/mypy/blob/master/CHANGELOG.md\"\u003emypy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003eMypy 1.20.1\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAlways disable sync in SQLite cache (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21184\"\u003e21184\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTemporarily skip few base64 tests (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21193\"\u003e21193\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRevert \u003ccode\u003edict.__or__\u003c/code\u003e typeshed change (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21186\"\u003e21186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix narrowing for match case with variadic tuples (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21192\"\u003e21192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid narrowing \u003ccode\u003etype[T]\u003c/code\u003e in type calls (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21174\"\u003e21174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression for catching empty tuple in except (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21153\"\u003e21153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix reachability for frozenset and dict view narrowing (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21151\"\u003e21151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix narrowing with chained comparison (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21150\"\u003e21150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid narrowing to unreachable at module level (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21144\"\u003e21144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow dangerous identity comparisons to \u003ccode\u003eAny\u003c/code\u003e typed variables (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21142\"\u003e21142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e--warn-unused-config\u003c/code\u003e should not be a strict flag (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21139\"\u003e21139\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAcknowledgements\u003c/h3\u003e\n\u003cp\u003eThanks to all mypy contributors who contributed to this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eA5rocks\u003c/li\u003e\n\u003cli\u003eAaron Wieczorek\u003c/li\u003e\n\u003cli\u003eAdam Turner\u003c/li\u003e\n\u003cli\u003eAli Hamdan\u003c/li\u003e\n\u003cli\u003easce\u003c/li\u003e\n\u003cli\u003eBobTheBuidler\u003c/li\u003e\n\u003cli\u003eBrent Westbrook\u003c/li\u003e\n\u003cli\u003eBrian Schubert\u003c/li\u003e\n\u003cli\u003ebzoracler\u003c/li\u003e\n\u003cli\u003eChris Burroughs\u003c/li\u003e\n\u003cli\u003eChristoph Tyralla\u003c/li\u003e\n\u003cli\u003eColin Watson\u003c/li\u003e\n\u003cli\u003eDonghoon Nam\u003c/li\u003e\n\u003cli\u003eE. M. Bray\u003c/li\u003e\n\u003cli\u003eEmma Smith\u003c/li\u003e\n\u003cli\u003eEthan Sarp\u003c/li\u003e\n\u003cli\u003eGeorge Ogden\u003c/li\u003e\n\u003cli\u003egetzze\u003c/li\u003e\n\u003cli\u003egrayjk\u003c/li\u003e\n\u003cli\u003eGregor Riepl\u003c/li\u003e\n\u003cli\u003eIvan Levkivskyi\u003c/li\u003e\n\u003cli\u003eJames Hilliard\u003c/li\u003e\n\u003cli\u003eJames Le Cuirot\u003c/li\u003e\n\u003cli\u003eJeremy Nimmer\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eKai (Kazuya Ito)\u003c/li\u003e\n\u003cli\u003ekaushal trivedi\u003c/li\u003e\n\u003cli\u003eKevin Kannammalil\u003c/li\u003e\n\u003cli\u003eLukas Geiger\u003c/li\u003e\n\u003cli\u003eŁukasz Langa\u003c/li\u003e\n\u003cli\u003eMarc Mueller\u003c/li\u003e\n\u003cli\u003eMichael R. Crusoe\u003c/li\u003e\n\u003cli\u003emichaelm-openai\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c60e8bfcb5910974b577e443725c475e0485d269\"\u003e\u003ccode\u003ec60e8bf\u003c/code\u003e\u003c/a\u003e Bump version to 1.20.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/842e4927738264949e969df0c2ee285a13594d06\"\u003e\u003ccode\u003e842e492\u003c/code\u003e\u003c/a\u003e Always disable sync in SQLite cache (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21184\"\u003e#21184\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/e82a046356b242441fcd55c8cf922c7904ef311a\"\u003e\u003ccode\u003ee82a046\u003c/code\u003e\u003c/a\u003e Temporarily skip few base64 tests (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21193\"\u003e#21193\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/f7fa418b6504e20c1277947e03a6db2f6d03e13e\"\u003e\u003ccode\u003ef7fa418\u003c/code\u003e\u003c/a\u003e Revert dict.\u003cstrong\u003eor\u003c/strong\u003e typeshed change (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21186\"\u003e#21186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/a2e8ee1afd5bbda26ad301496685295b1a7997a3\"\u003e\u003ccode\u003ea2e8ee1\u003c/code\u003e\u003c/a\u003e Fix narrowing for match case with variadic tuples (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21192\"\u003e#21192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/521f88f510c2065132909928815f08502097ceea\"\u003e\u003ccode\u003e521f88f\u003c/code\u003e\u003c/a\u003e Avoid narrowing type[T] in type calls (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21174\"\u003e#21174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/a4876e9186b927fe4777609fc9932752dcfb7047\"\u003e\u003ccode\u003ea4876e9\u003c/code\u003e\u003c/a\u003e Fix regression for catching empty tuple in except (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21153\"\u003e#21153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/6fccffcac0c8c24034d4f2b262ca7e5564ba9375\"\u003e\u003ccode\u003e6fccffc\u003c/code\u003e\u003c/a\u003e Fix reachability for frozenset and dict view narrowing (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21151\"\u003e#21151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/de50419dc84a66f0e8606308023f81a44dee54f3\"\u003e\u003ccode\u003ede50419\u003c/code\u003e\u003c/a\u003e Fix narrowing with chained comparison (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21150\"\u003e#21150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/eafcf18ff1d83923c0f749cf3056962df63ed693\"\u003e\u003ccode\u003eeafcf18\u003c/code\u003e\u003c/a\u003e Avoid narrowing to unreachable at module level (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21144\"\u003e#21144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/mypy/compare/v1.19.1...v1.20.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/ASFHyP3/opera-rtc-s1-browse/pull/181","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ASFHyP3%2Fopera-rtc-s1-browse/issues/181","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/181/packages"},{"uuid":"4246234520","node_id":"PR_kwDOOzY3rM7RuOxi","number":161,"state":"open","title":"deps(deps-dev): update setuptools-scm requirement from \u003e=6.2 to \u003e=10.0.5","user":"dependabot[bot]","labels":[],"assignees":["pkuppens"],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-12T02:13:24.000Z","updated_at":"2026-04-12T02:13:25.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps-dev): update","packages":[{"name":"setuptools-scm","old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\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/pkuppens/on_prem_rag/pull/161","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/pkuppens%2Fon_prem_rag/issues/161","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/161/packages"},{"uuid":"4244521853","node_id":"PR_kwDORiN6gs7RqUkE","number":23,"state":"closed","title":"chore(deps): bump the pip-all group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-04-11T12:58:50.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-11T12:31:30.000Z","updated_at":"2026-04-11T12:58:58.000Z","time_to_close":1640,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"pip-all","update_count":21,"packages":[{"name":"azure-identity","old_version":"1.25.2","new_version":"1.25.3","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"rich","old_version":"14.3.3","new_version":"14.3.4","repository_url":"https://github.com/Textualize/rich"},{"name":"mypy","old_version":"1.19.1","new_version":"1.20.0","repository_url":"https://github.com/python/mypy"},{"name":"pytest","old_version":"9.0.2","new_version":"9.0.3","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"ruff","old_version":"0.15.5","new_version":"0.15.10","repository_url":"https://github.com/astral-sh/ruff"},{"name":"types-pyyaml","old_version":"6.0.12.20250915","new_version":"6.0.12.20260408","repository_url":"https://github.com/python/typeshed"},{"name":"anyio","old_version":"4.12.1","new_version":"4.13.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.39.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"charset-normalizer","old_version":"3.4.5","new_version":"3.4.7","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.3.1","new_version":"8.3.2","repository_url":"https://github.com/pallets/click"},{"name":"coverage","old_version":"7.13.4","new_version":"7.13.5","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"librt","old_version":"0.8.1","new_version":"0.9.0","repository_url":"https://github.com/mypyc/librt"},{"name":"mkdocs-get-deps","old_version":"0.2.0","new_version":"0.2.2","repository_url":"https://github.com/mkdocs/get-deps"},{"name":"mkdocs-material","old_version":"9.7.4","new_version":"9.7.6","repository_url":"https://github.com/squidfunk/mkdocs-material"},{"name":"msal","old_version":"1.35.1","new_version":"1.36.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"platformdirs","old_version":"4.9.4","new_version":"4.9.6","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pydantic-core","old_version":"2.41.5","new_version":"2.45.0","repository_url":"https://github.com/pydantic/pydantic-core"},{"name":"pymdown-extensions","old_version":"10.21","new_version":"10.21.2","repository_url":"https://github.com/facelessuser/pymdown-extensions"},{"name":"pytest-cov","old_version":"7.0.0","new_version":"7.1.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"setuptools","old_version":"82.0.0","new_version":"82.0.1","repository_url":"https://github.com/pypa/setuptools"},{"name":"setuptools-scm","old_version":"9.2.2","new_version":"10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-all group with 21 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [azure-identity](https://github.com/Azure/azure-sdk-for-python) | `1.25.2` | `1.25.3` |\n| [rich](https://github.com/Textualize/rich) | `14.3.3` | `14.3.4` |\n| [mypy](https://github.com/python/mypy) | `1.19.1` | `1.20.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `9.0.2` | `9.0.3` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.5` | `0.15.10` |\n| [types-pyyaml](https://github.com/python/typeshed) | `6.0.12.20250915` | `6.0.12.20260408` |\n| [anyio](https://github.com/agronholm/anyio) | `4.12.1` | `4.13.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.39.0` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.5` | `3.4.7` |\n| [click](https://github.com/pallets/click) | `8.3.1` | `8.3.2` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.13.4` | `7.13.5` |\n| [librt](https://github.com/mypyc/librt) | `0.8.1` | `0.9.0` |\n| [mkdocs-get-deps](https://github.com/mkdocs/get-deps) | `0.2.0` | `0.2.2` |\n| [mkdocs-material](https://github.com/squidfunk/mkdocs-material) | `9.7.4` | `9.7.6` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.35.1` | `1.36.0` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.9.4` | `4.9.6` |\n| [pydantic-core](https://github.com/pydantic/pydantic-core) | `2.41.5` | `2.45.0` |\n| [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) | `10.21` | `10.21.2` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `7.0.0` | `7.1.0` |\n| [setuptools](https://github.com/pypa/setuptools) | `82.0.0` | `82.0.1` |\n| [setuptools-scm](https://github.com/pypa/setuptools-scm) | `9.2.2` | `10.0.5` |\n\n\nUpdates `azure-identity` from 1.25.2 to 1.25.3\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-identity's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eazure-identity_1.25.3\u003c/h2\u003e\n\u003ch2\u003e1.25.3 (2026-03-12)\u003c/h2\u003e\n\u003ch3\u003eBugs Fixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed an issue where an expired token could skip refresh when a recent token request was made, due to the retry delay taking precedence over expiration. (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/pull/45496\"\u003e#45496\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped minimum dependency on \u003ccode\u003emsal\u003c/code\u003e to \u003ccode\u003e\u0026gt;=1.35.1\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/Azure/azure-sdk-for-python/commit/a989ea467731265fdf097b622ba254703187746b\"\u003e\u003ccode\u003ea989ea4\u003c/code\u003e\u003c/a\u003e [Identity] Prep patch release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/79728834e7f38018d372860cf9117bf51d9ed417\"\u003e\u003ccode\u003e7972883\u003c/code\u003e\u003c/a\u003e [Identity] Adjust refresh logic (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45496\"\u003e#45496\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/04764a9a8a0cb59aab6421b41152246853dfcfe8\"\u003e\u003ccode\u003e04764a9\u003c/code\u003e\u003c/a\u003e add psscript to convert apiview json files to md (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45589\"\u003e#45589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/50e01659d7204865dfa07c5ece1019ed9a229b4f\"\u003e\u003ccode\u003e50e0165\u003c/code\u003e\u003c/a\u003e Sync eng/common directory with azure-sdk-tools for PR 14461 (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45646\"\u003e#45646\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/5333117e0e181404ff4deaa757e9b6ef86dabf8b\"\u003e\u003ccode\u003e5333117\u003c/code\u003e\u003c/a\u003e Add Bo to /sdk/ai/azure-ai-projects owner list (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45664\"\u003e#45664\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/775d6942e4335422fc69da8e997a6069e356b104\"\u003e\u003ccode\u003e775d694\u003c/code\u003e\u003c/a\u003e Doc and automation updates for .github sync directory changes (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45630\"\u003e#45630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/c6e48b5cd71adf5728a5e2f33bc9f62fb221221f\"\u003e\u003ccode\u003ec6e48b5\u003c/code\u003e\u003c/a\u003e [Core] Prepare release (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45656\"\u003e#45656\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/ae769c4e9379c8d309bffa5ccb76dcfba64e1f71\"\u003e\u003ccode\u003eae769c4\u003c/code\u003e\u003c/a\u003e Fix custom Memory Stores LRO poller operation (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45662\"\u003e#45662\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/6074492844d670316eb171756483f1394a6c94c7\"\u003e\u003ccode\u003e6074492\u003c/code\u003e\u003c/a\u003e Add asset id none check in dt (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45618\"\u003e#45618\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/e1a986aeb7a8001bd3a4f336cf096c2b050aa480\"\u003e\u003ccode\u003ee1a986a\u003c/code\u003e\u003c/a\u003e Bump tar from 7.5.10 to 7.5.11 in /eng/common/tsp-client (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45640\"\u003e#45640\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Azure/azure-sdk-for-python/compare/azure-identity_1.25.2...azure-identity_1.25.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `rich` from 14.3.3 to 14.3.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Textualize/rich/releases\"\u003erich's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eThe Faster Startup Release\u003c/h2\u003e\n\u003cp\u003eNo new features in this release, but there should be improved startup time for Rich apps, and potentially improved runtime if you have a lot of links.\u003c/p\u003e\n\u003ch2\u003e[14.3.4] - 2026-04-11\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImproved import time with lazy loading \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/4070\"\u003eTextualize/rich#4070\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChanged link id generation to avoid random number generation at runtime \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3845\"\u003eTextualize/rich#3845\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Textualize/rich/blob/master/CHANGELOG.md\"\u003erich's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[14.3.4] - 2026-04-11\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImproved import time with lazy loading \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/4070\"\u003eTextualize/rich#4070\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChanged link id generation to avoid random number generation at runtime \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3845\"\u003eTextualize/rich#3845\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/ee8378c3bbbd7c75abc2f55c6c19e83b218ae81d\"\u003e\u003ccode\u003eee8378c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Textualize/rich/issues/4073\"\u003e#4073\u003c/a\u003e from Textualize/bump1434\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/f441a326f10af5dc0cd570dadaed16e7f7035fc3\"\u003e\u003ccode\u003ef441a32\u003c/code\u003e\u003c/a\u003e changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/b3167144fea59b02e257c1361f5e0c5832065ccd\"\u003e\u003ccode\u003eb316714\u003c/code\u003e\u003c/a\u003e bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/a86dce09714f4e5195cce8c15fce7a586d7b562a\"\u003e\u003ccode\u003ea86dce0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Textualize/rich/issues/3845\"\u003e#3845\u003c/a\u003e from akx/faster-ids\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/7f40063da781f4990d21423f23f7ccb3165ce0bd\"\u003e\u003ccode\u003e7f40063\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Textualize/rich/issues/4070\"\u003e#4070\u003c/a\u003e from KRRT7/upstream/lazy-traceback-logging\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/6729c6f6c4ee24a13a94d825cb7ce66b52206db2\"\u003e\u003ccode\u003e6729c6f\u003c/code\u003e\u003c/a\u003e typing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/64f2f1cf89a698f17f5b2c801b014dc8aced1177\"\u003e\u003ccode\u003e64f2f1c\u003c/code\u003e\u003c/a\u003e import\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/de4a8bd5746a3cbda6d8ead9f75cbf49f868a639\"\u003e\u003ccode\u003ede4a8bd\u003c/code\u003e\u003c/a\u003e lazy is_expandable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/e5b7b3199fecb1f7d1fbc3d3d0df800fa6234830\"\u003e\u003ccode\u003ee5b7b31\u003c/code\u003e\u003c/a\u003e no need to rename locals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/5d6e2d72e4012eb594e131a8319dbd4165d97eda\"\u003e\u003ccode\u003e5d6e2d7\u003c/code\u003e\u003c/a\u003e fix docstring\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Textualize/rich/compare/v14.3.3...v14.3.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mypy` from 1.19.1 to 1.20.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python/mypy/blob/master/CHANGELOG.md\"\u003emypy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eMypy Release Notes\u003c/h1\u003e\n\u003ch2\u003eNext Release\u003c/h2\u003e\n\u003ch2\u003eMypy 1.20\u003c/h2\u003e\n\u003cp\u003eWe’ve just uploaded mypy 1.20.0 to the Python Package Index (\u003ca href=\"https://pypi.org/project/mypy/\"\u003ePyPI\u003c/a\u003e).\nMypy is a static type checker for Python. This release includes new features, performance\nimprovements and bug fixes. You can install it as follows:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install -U mypy\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eYou can read the full documentation for this release on \u003ca href=\"http://mypy.readthedocs.io\"\u003eRead the Docs\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003ePlanned Changes to Defaults and Flags in Mypy 2.0\u003c/h3\u003e\n\u003cp\u003eAs a reminder, we are planning to enable \u003ccode\u003e--local-partial-types\u003c/code\u003e by default in mypy 2.0, which\nwill likely be the next feature release. This will often require at least minor code changes. This\noption is implicitly enabled by mypy daemon, so this makes the behavior of daemon and non-daemon\nmodes consistent.\u003c/p\u003e\n\u003cp\u003eNote that this release improves the compatibility of \u003ccode\u003e--local-partial-types\u003c/code\u003e significantly to\nmake the switch easier (see below for more).\u003c/p\u003e\n\u003cp\u003eThis can also be configured in a mypy configuration file (use \u003ccode\u003eFalse\u003c/code\u003e to disable):\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003elocal_partial_types = True\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eFor more information, refer to the\n\u003ca href=\"https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-local-partial-types\"\u003edocumentation\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe will also enable \u003ccode\u003e--strict-bytes\u003c/code\u003e by default in mypy 2.0. This usually requires at most\nminor code changes to adopt. For more information, refer to the\n\u003ca href=\"https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-strict-bytes\"\u003edocumentation\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eFinally, \u003ccode\u003e--allow-redefinition-new\u003c/code\u003e will be renamed to \u003ccode\u003e--allow-redefinition\u003c/code\u003e. If you want\nto continue using the older \u003ccode\u003e--allow-redefinition\u003c/code\u003e semantics which are less flexible (e.g.\nlimited support for conditional redefinitions), you can switch to \u003ccode\u003e--allow-redefinition-old\u003c/code\u003e,\nwhich is currently supported as an alias to the legacy \u003ccode\u003e--allow-redefinition\u003c/code\u003e behavior.\nTo use \u003ccode\u003e--allow-redefinition\u003c/code\u003e in the upcoming mypy 2.0, you can't use \u003ccode\u003e--no-local-partial-types\u003c/code\u003e.\nFor more information, refer to the\n\u003ca href=\"https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-allow-redefinition-new\"\u003edocumentation\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eBetter Type Narrowing\u003c/h3\u003e\n\u003cp\u003eMypy's implementation of narrowing has been substantially reworked. Mypy will now narrow more\naggressively, more consistently, and more correctly. In particular, you are likely to notice new\nnarrowing behavior in equality expressions (\u003ccode\u003e==\u003c/code\u003e), containment expressions (\u003ccode\u003ein\u003c/code\u003e),\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/770d3ca4997032dc3a1c4f0b468e9f58e8f38505\"\u003e\u003ccode\u003e770d3ca\u003c/code\u003e\u003c/a\u003e Remove +dev from version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/4738ffafc56a0d175cba06e893ffa62e756fc7e0\"\u003e\u003ccode\u003e4738ffa\u003c/code\u003e\u003c/a\u003e Changelog updates for 1.20 (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21109\"\u003e#21109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/b4f07a717c3a239a9c77808c5550fff5f2638c96\"\u003e\u003ccode\u003eb4f07a7\u003c/code\u003e\u003c/a\u003e Use 'native-parser' instead of 'native-parse' for optional dependency (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21115\"\u003e#21115\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/7bec7b7f791790b1c925cdcc573ced564fbbf065\"\u003e\u003ccode\u003e7bec7b7\u003c/code\u003e\u003c/a\u003e [mypyc] Document librt and librt.base64 (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21114\"\u003e#21114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c4825969450385cf3eb91a4fc02f273b369bc301\"\u003e\u003ccode\u003ec482596\u003c/code\u003e\u003c/a\u003e --allow-redefinition-new is no longer experimental (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21110\"\u003e#21110\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c916ca3fa79d9324dcbe130b18e24e2b5e2d1eb5\"\u003e\u003ccode\u003ec916ca3\u003c/code\u003e\u003c/a\u003e sdist: include \u003ccode\u003emisc/{diff-cache,apply-cache-diff}.py\u003c/code\u003e for `mypy/test/test_di...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/b137e4ed41d6178f6dbd0e609db56b8c1ad5384a\"\u003e\u003ccode\u003eb137e4e\u003c/code\u003e\u003c/a\u003e [mypyc] Speed up native-to-native imports within the same group (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21101\"\u003e#21101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/978b711c21adadf5dae4db80127ddf270d79af5f\"\u003e\u003ccode\u003e978b711\u003c/code\u003e\u003c/a\u003e [mypyc] Fix range loop variable off-by-one after loop exit (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21098\"\u003e#21098\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/67ada30918d1a32e1935e9ac468113e0aa002b79\"\u003e\u003ccode\u003e67ada30\u003c/code\u003e\u003c/a\u003e [stubtest] Check runtime availability of private types not marked `@type_chec...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/bdef6ef8734af07cab1bf0acadc1d8ab9add93c3\"\u003e\u003ccode\u003ebdef6ef\u003c/code\u003e\u003c/a\u003e librt cache tests: build respecting MYPY_TEST_PREFIX (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21097\"\u003e#21097\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/mypy/compare/v1.19.1...v1.20.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 9.0.2 to 9.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.0.3\u003c/h2\u003e\n\u003ch1\u003epytest 9.0.3 (2026-04-07)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12444\"\u003e#12444\u003c/a\u003e: Fixed \u003ccode\u003epytest.approx\u003c/code\u003e which now correctly takes into account \u003ccode\u003e~collections.abc.Mapping\u003c/code\u003e keys order to compare them.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13634\"\u003e#13634\u003c/a\u003e: Blocking a \u003ccode\u003econftest.py\u003c/code\u003e file using the \u003ccode\u003e-p no:\u003c/code\u003e option is now explicitly disallowed.\u003c/p\u003e\n\u003cp\u003ePreviously this resulted in an internal assertion failure during plugin loading.\u003c/p\u003e\n\u003cp\u003ePytest now raises a clear \u003ccode\u003eUsageError\u003c/code\u003e explaining that conftest files are not plugins and cannot be disabled via \u003ccode\u003e-p\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13734\"\u003e#13734\u003c/a\u003e: Fixed crash when a test raises an exceptiongroup with \u003ccode\u003e__tracebackhide__ = True\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14195\"\u003e#14195\u003c/a\u003e: Fixed an issue where non-string messages passed to \u003c!-- raw HTML omitted --\u003eunittest.TestCase.subTest()\u003c!-- raw HTML omitted --\u003e were not printed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14343\"\u003e#14343\u003c/a\u003e: Fixed use of insecure temporary directory (CVE-2025-71176).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13388\"\u003e#13388\u003c/a\u003e: Clarified documentation for \u003ccode\u003e-p\u003c/code\u003e vs \u003ccode\u003ePYTEST_PLUGINS\u003c/code\u003e plugin loading and fixed an incorrect \u003ccode\u003e-p\u003c/code\u003e example.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13731\"\u003e#13731\u003c/a\u003e: Clarified that capture fixtures (e.g. \u003ccode\u003ecapsys\u003c/code\u003e and \u003ccode\u003ecapfd\u003c/code\u003e) take precedence over the \u003ccode\u003e-s\u003c/code\u003e / \u003ccode\u003e--capture=no\u003c/code\u003e command-line options in \u003ccode\u003eAccessing captured output from a test function \u0026lt;accessing-captured-output\u0026gt;\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14088\"\u003e#14088\u003c/a\u003e: Clarified that the default \u003ccode\u003epytest_collection\u003c/code\u003e hook sets \u003ccode\u003esession.items\u003c/code\u003e before it calls \u003ccode\u003epytest_collection_finish\u003c/code\u003e, not after.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14255\"\u003e#14255\u003c/a\u003e: TOML integer log levels must be quoted: Updating reference documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12689\"\u003e#12689\u003c/a\u003e: The test reports are now published to Codecov from GitHub Actions.\nThe test statistics is visible \u003ca href=\"https://app.codecov.io/gh/pytest-dev/pytest/tests\"\u003eon the web interface\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e-- by \u003ccode\u003ealeguy02\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a7d58d7a21b78581e636bbbdea13c66ad1657c1e\"\u003e\u003ccode\u003ea7d58d7\u003c/code\u003e\u003c/a\u003e Prepare release version 9.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/089d98199c253d8f89a040243bc4f2aa6cd5ab22\"\u003e\u003ccode\u003e089d981\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14366\"\u003e#14366\u003c/a\u003e from bluetech/revert-14193-backport\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/8127eaf4ab7f6b2fdd0dc1b38343ec97aeef05ac\"\u003e\u003ccode\u003e8127eaf\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Fix: assertrepr_compare respects dict insertion order (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14050\"\u003e#14050\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14193\"\u003e#14193\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/99a7e6029e7a6e8d53e5df114b1346e035370241\"\u003e\u003ccode\u003e99a7e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14363\"\u003e#14363\u003c/a\u003e from pytest-dev/patchback/backports/9.0.x/95d8423bd...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ddee02a578da30dd43aedc39c1c1f1aaadfcee95\"\u003e\u003ccode\u003eddee02a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14343\"\u003e#14343\u003c/a\u003e from bluetech/cve-2025-71176-simple\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/74eac6916fee34726cb194f16c516e96fbd29619\"\u003e\u003ccode\u003e74eac69\u003c/code\u003e\u003c/a\u003e doc: Update training info (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14298\"\u003e#14298\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14301\"\u003e#14301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f92dee777cfdb77d1c43633d02766ddf1f07c869\"\u003e\u003ccode\u003ef92dee7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14267\"\u003e#14267\u003c/a\u003e from pytest-dev/patchback/backports/9.0.x/d6fa26c62...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7ee58acc8777c31ac6cf388d01addf5a414a7439\"\u003e\u003ccode\u003e7ee58ac\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12378\"\u003e#12378\u003c/a\u003e from Pierre-Sassoulas/fix-implicit-str-concat-and-d...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/37da870d37e3a2f5177cae075c7b9ae279432bf8\"\u003e\u003ccode\u003e37da870\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14259\"\u003e#14259\u003c/a\u003e from mitre88/patch-4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14268\"\u003e#14268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c34bfa3b7acb65b594707c714f1d8461b0304eed\"\u003e\u003ccode\u003ec34bfa3\u003c/code\u003e\u003c/a\u003e Add explanation for string context diffs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14257\"\u003e#14257\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14266\"\u003e#14266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/9.0.2...9.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.15.5 to 0.15.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.10\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-04-09.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Allow closures in except handlers (\u003ccode\u003eLOG004\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24464\"\u003e#24464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Make \u003ccode\u003eSLF\u003c/code\u003e diagnostics robust to non-self-named variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24281\"\u003e#24281\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Make the fix for \u003ccode\u003ecollapsible-if\u003c/code\u003e safe in \u003ccode\u003epreview\u003c/code\u003e (\u003ccode\u003eSIM102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24371\"\u003e#24371\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid emitting multi-line f-string elements before Python 3.12 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24377\"\u003e#24377\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid syntax error from \u003ccode\u003eE502\u003c/code\u003e fixes in f-strings and t-strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24410\"\u003e#24410\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eStrip form feeds from indent passed to \u003ccode\u003ededent_to\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24381\"\u003e#24381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Fix panic caused by handling of octals (\u003ccode\u003eUP012\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24390\"\u003e#24390\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReject multi-line f-string elements before Python 3.12 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24355\"\u003e#24355\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Treat f-string interpolation as potential side effect (\u003ccode\u003eRUF019\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24426\"\u003e#24426\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for custom file extensions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24463\"\u003e#24463\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument adding fixes in CONTRIBUTING.md (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24393\"\u003e#24393\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix JSON typo in settings example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24517\"\u003e#24517\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/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dylwil3\"\u003e\u003ccode\u003e@​dylwil3\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/silverstein\"\u003e\u003ccode\u003e@​silverstein\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anishgirianish\"\u003e\u003ccode\u003e@​anishgirianish\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/shizukushq\"\u003e\u003ccode\u003e@​shizukushq\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zanieb\"\u003e\u003ccode\u003e@​zanieb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eInstall ruff 0.15.10\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.15.10/ruff-installer.sh | sh\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.10\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-04-09.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Allow closures in except handlers (\u003ccode\u003eLOG004\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24464\"\u003e#24464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Make \u003ccode\u003eSLF\u003c/code\u003e diagnostics robust to non-self-named variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24281\"\u003e#24281\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Make the fix for \u003ccode\u003ecollapsible-if\u003c/code\u003e safe in \u003ccode\u003epreview\u003c/code\u003e (\u003ccode\u003eSIM102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24371\"\u003e#24371\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid emitting multi-line f-string elements before Python 3.12 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24377\"\u003e#24377\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid syntax error from \u003ccode\u003eE502\u003c/code\u003e fixes in f-strings and t-strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24410\"\u003e#24410\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eStrip form feeds from indent passed to \u003ccode\u003ededent_to\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24381\"\u003e#24381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Fix panic caused by handling of octals (\u003ccode\u003eUP012\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24390\"\u003e#24390\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReject multi-line f-string elements before Python 3.12 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24355\"\u003e#24355\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Treat f-string interpolation as potential side effect (\u003ccode\u003eRUF019\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24426\"\u003e#24426\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for custom file extensions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24463\"\u003e#24463\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument adding fixes in CONTRIBUTING.md (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24393\"\u003e#24393\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix JSON typo in settings example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24517\"\u003e#24517\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/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dylwil3\"\u003e\u003ccode\u003e@​dylwil3\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/silverstein\"\u003e\u003ccode\u003e@​silverstein\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anishgirianish\"\u003e\u003ccode\u003e@​anishgirianish\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/shizukushq\"\u003e\u003ccode\u003e@​shizukushq\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zanieb\"\u003e\u003ccode\u003e@​zanieb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.15.9\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-04-02.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Flag annotated variable redeclarations as \u003ccode\u003eF811\u003c/code\u003e in preview mode (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24244\"\u003e#24244\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Allow dunder-named assignments in non-strict mode for \u003ccode\u003eRUF067\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24089\"\u003e#24089\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/252f76102a618bff6537b6c53c316ca3837f4abf\"\u003e\u003ccode\u003e252f761\u003c/code\u003e\u003c/a\u003e Bump 0.15.10 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24519\"\u003e#24519\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/37a1ec8bb8e30955787b0cdf6e97f7f2254dba7f\"\u003e\u003ccode\u003e37a1ec8\u003c/code\u003e\u003c/a\u003e [ty] Fix assignability of intersections with bounded typevars (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24502\"\u003e#24502\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/f518cc9ca0c830773dd49c3964eb5e49d52c8aed\"\u003e\u003ccode\u003ef518cc9\u003c/code\u003e\u003c/a\u003e [ty] Allow partially stringified \u003ccode\u003etype[…]\u003c/code\u003e annotations (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24518\"\u003e#24518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/16c4090d0a711b9c0523b932014f3daf140f35bc\"\u003e\u003ccode\u003e16c4090\u003c/code\u003e\u003c/a\u003e docs: fix JSON typo in settings example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24517\"\u003e#24517\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/99d97bd72f1934ac2af93e52468c10ef1c7a1a4e\"\u003e\u003ccode\u003e99d97bd\u003c/code\u003e\u003c/a\u003e [ty] Tighten up a few edge cases in \u003ccode\u003eConcatenate\u003c/code\u003e type-expression parsing (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/2\"\u003e#2\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/2714e345bdd64a5baae3844c0d25db7b0b9fe330\"\u003e\u003ccode\u003e2714e34\u003c/code\u003e\u003c/a\u003e [ty] Enable \u003ccode\u003epull-diagnostics\u003c/code\u003e by default in E2E tests (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24516\"\u003e#24516\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d8bc700722ab1b7272a4d724839da7c569b349d4\"\u003e\u003ccode\u003ed8bc700\u003c/code\u003e\u003c/a\u003e LSP: Add support for custom extensions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24463\"\u003e#24463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/a45f96d65dbd4f958b07accd718f8d2af48cb956\"\u003e\u003ccode\u003ea45f96d\u003c/code\u003e\u003c/a\u003e [ty] stop special-casing str constructor (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24514\"\u003e#24514\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/87a0f01cfd016e0297ef05ab638cde006bf8d947\"\u003e\u003ccode\u003e87a0f01\u003c/code\u003e\u003c/a\u003e [ruff] Treat f-string interpolation as potential side effect in RUF019 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24426\"\u003e#24426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/e9ba8489b8d1f1fd5fd66887a74d5f2f58f733d4\"\u003e\u003ccode\u003ee9ba848\u003c/code\u003e\u003c/a\u003e [ty] Fix excess subscript argument inference for non-generic types (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24354\"\u003e#24354\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.15.5...0.15.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `types-pyyaml` from 6.0.12.20250915 to 6.0.12.20260408\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/python/typeshed/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `anyio` from 4.12.1 to 4.13.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.13.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for Python 3.9\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ettl\u003c/code\u003e parameter to the \u003ccode\u003eanyio.functools.lru_cache\u003c/code\u003e wrapper (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1073\"\u003e#1073\u003c/a\u003e; PR by \u003ca href=\"https://github.com/Graeme22\"\u003e\u003ccode\u003e@​Graeme22\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eWidened the type annotations of file I/O streams to accept \u003ccode\u003eIO[bytes]\u003c/code\u003e instead of just \u003ccode\u003eBinaryIO\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1078\"\u003e#1078\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eanyio.Path\u003c/code\u003e not being compatible with Python 3.15 due to the removal of \u003ccode\u003epathlib.Path.is_reserved()\u003c/code\u003e and the addition of \u003ccode\u003epathlib.Path.__vfspath__()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1061\"\u003e#1061\u003c/a\u003e; PR by \u003ca href=\"https://github.com/veeceey\"\u003e\u003ccode\u003e@​veeceey\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed the \u003ccode\u003eBrokenResourceError\u003c/code\u003e raised by the asyncio \u003ccode\u003eSocketStream\u003c/code\u003e not having the original exception as its cause (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1055\"\u003e#1055\u003c/a\u003e; PR by \u003ca href=\"https://github.com/veeceey\"\u003e\u003ccode\u003e@​veeceey\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed the \u003ccode\u003eTypeError\u003c/code\u003e raised when using \u0026quot;func\u0026quot; as a parameter name in \u003ccode\u003epytest.mark.parametrize\u003c/code\u003e when using the pytest plugin (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1068\"\u003e#1068\u003c/a\u003e; PR by \u003ca href=\"https://github.com/JohnnyDeuss\"\u003e\u003ccode\u003e@​JohnnyDeuss\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed the pytest plugin not running tests that had the \u003ccode\u003eanyio\u003c/code\u003e marker added programmatically via \u003ccode\u003epytest_collection_modifyitems\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/422\"\u003e#422\u003c/a\u003e; PR by \u003ca href=\"https://github.com/chbndrhnns\"\u003e\u003ccode\u003e@​chbndrhnns\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed cancellation exceptions leaking from a \u003ccode\u003eCancelScope\u003c/code\u003e on asyncio when they are contained in an exception group alongside non-cancellation exceptions (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1091\"\u003e#1091\u003c/a\u003e; PR by \u003ca href=\"https://github.com/gschaffner\"\u003e\u003ccode\u003e@​gschaffner\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCondition.wait()\u003c/code\u003e not passing on a notification when the task is cancelled but already received a notification\u003c/li\u003e\n\u003cli\u003eFixed inverted condition in the process pool shutdown phase which would cause still-running pooled processes not to be terminated (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1074\"\u003e#1074\u003c/a\u003e; PR by \u003ca href=\"https://github.com/bysiber\"\u003e\u003ccode\u003e@​bysiber\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/agronholm/anyio/commit/afbe93ca9d0c447adf26e9c1715ac20870622bf2\"\u003e\u003ccode\u003eafbe93c\u003c/code\u003e\u003c/a\u003e Bumped up the version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/33bdf2e4b4f40c2df178123746147a6d2471808d\"\u003e\u003ccode\u003e33bdf2e\u003c/code\u003e\u003c/a\u003e Rearranged the changelog entries\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/19e09e25bc5a23dd78a577d8c3909dd377057c78\"\u003e\u003ccode\u003e19e09e2\u003c/code\u003e\u003c/a\u003e Fixed inverted condition in _forcibly_shutdown_process_pool_on_exit (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1074\"\u003e#1074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/9369d80b9e8292f2a892a9d5c73923c6a28aa08c\"\u003e\u003ccode\u003e9369d80\u003c/code\u003e\u003c/a\u003e Fixed Condition.wait() not handing over notification when cancelled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/6f122abdc6f6b166c6b6ac27d36d55cdf8fa08e8\"\u003e\u003ccode\u003e6f122ab\u003c/code\u003e\u003c/a\u003e Fixed cancellation exceptions leaking from a \u003ccode\u003eCancelScope\u003c/code\u003e on asyncio when th...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/beaa45aff568a4020f2faf317321dd92f0e1f4a0\"\u003e\u003ccode\u003ebeaa45a\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1097\"\u003e#1097\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/602f6606dcf3f37702686a4f3e161328c537b07f\"\u003e\u003ccode\u003e602f660\u003c/code\u003e\u003c/a\u003e Widened type annotations to accept IO[bytes] in file streams\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/b5dcd45170701a756ba634197398f05d4710cab3\"\u003e\u003ccode\u003eb5dcd45\u003c/code\u003e\u003c/a\u003e Added note about erasing the template\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/d68670b3b4e0917d4caff2de082e03220f3e05a1\"\u003e\u003ccode\u003ed68670b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1090\"\u003e#1090\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/fc17a22dd948e6a3d90d99908813f0010dfc3d2c\"\u003e\u003ccode\u003efc17a22\u003c/code\u003e\u003c/a\u003e tweak to_thread docs about abandon_on_cancel (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1088\"\u003e#1088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/agronholm/anyio/compare/4.12.1...4.13.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `azure-core` from 1.38.2 to 1.39.0\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-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eazure-core_1.39.0\u003c/h2\u003e\n\u003ch2\u003e1.39.0 (2026-03-18)\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChanged the previously undocumented \u003ccode\u003eazure_cloud\u003c/code\u003e setting environment variable from \u003ccode\u003eAZURE_CLOUD\u003c/code\u003e to \u003ccode\u003eAZURE_SDK_CLOUD_CONF\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eazure-core_1.38.3\u003c/h2\u003e\n\u003ch2\u003e1.38.3 (2026-03-12)\u003c/h2\u003e\n\u003ch3\u003eBugs Fixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ccode\u003ePipelineClient.format_url\u003c/code\u003e to preserve trailing slash in the base URL when the URL template is query-string-only (e.g., \u003ccode\u003e?key=value\u003c/code\u003e). \u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45365\"\u003e#45365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSensitiveHeaderCleanupPolicy\u003c/code\u003e to persist the \u003ccode\u003einsecure_domain_change\u003c/code\u003e flag across retries after a cross-domain redirect. \u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45518\"\u003e#45518\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded jitter to token refresh timing in \u003ccode\u003eBearerTokenCredentialPolicy\u003c/code\u003e and \u003ccode\u003eAsyncBearerTokenCredentialPolicy\u003c/code\u003e to prevent simultaneous token refresh attempts across multiple processes. This helps mitigate the thundering herd problem during token refresh operations. \u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/43720\"\u003e#43720\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/Azure/azure-sdk-for-python/commit/dee80a8fd745ddab91933f05e795cf41e10ab8fe\"\u003e\u003ccode\u003edee80a8\u003c/code\u003e\u003c/a\u003e Changed the \u003ccode\u003eazure_cloud\u003c/code\u003e setting environment variable (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45763\"\u003e#45763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/a2d11701462371d3f8b38b935f77f2e5070a5bf7\"\u003e\u003ccode\u003ea2d1170\u003c/code\u003e\u003c/a\u003e Increment package version after release of azure-core (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45671\"\u003e#45671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/c6e48b5cd71adf5728a5e2f33bc9f62fb221221f\"\u003e\u003ccode\u003ec6e48b5\u003c/code\u003e\u003c/a\u003e [Core] Prepare release (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45656\"\u003e#45656\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/079e76bb7bef96cf1027777afc69995b6024b857\"\u003e\u003ccode\u003e079e76b\u003c/code\u003e\u003c/a\u003e Port data-plane packages in sdk/core/ to pyproject.toml (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45556\"\u003e#45556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/2117dfb31ed48fe429ef2604aeb89526e9496c66\"\u003e\u003ccode\u003e2117dfb\u003c/code\u003e\u003c/a\u003e [Core] Persist cross domain redirect flag (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45518\"\u003e#45518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/2d0a9aa509c220d575c33e81207a5b6dedb5f148\"\u003e\u003ccode\u003e2d0a9aa\u003c/code\u003e\u003c/a\u003e [Core] Update pytest fixture scope (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45563\"\u003e#45563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/4c4c8698d61f2ad60296ef0cf7c64f7837cdc5a3\"\u003e\u003ccode\u003e4c4c869\u003c/code\u003e\u003c/a\u003e [Core] Add jitter to token refresh intervals (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/43720\"\u003e#43720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/41391f1e7b5ad52e3d480a7adcbf3fa5b99e2326\"\u003e\u003ccode\u003e41391f1\u003c/code\u003e\u003c/a\u003e [azure-core] Fix \u003ccode\u003eformat_url\u003c/code\u003e dropping trailing slash when URL template is qu...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/9fdb4f1a9764b466a408eeed45ce59da97e150a5\"\u003e\u003ccode\u003e9fdb4f1\u003c/code\u003e\u003c/a\u003e [Corehttp] Changelog update (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45113\"\u003e#45113\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/f40b764989ce757cd35698cae9c91b3a52c0b7a9\"\u003e\u003ccode\u003ef40b764\u003c/code\u003e\u003c/a\u003e Increment package version after release of azure-core (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45246\"\u003e#45246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/Azure/azure-sdk-for-python/compare/azure-core_1.38.2...azure-core_1.39.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `charset-normalizer` from 3.4.5 to 3.4.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.7\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.6...3.4.7\"\u003e3.4.7\u003c/a\u003e (2026-04-02)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePre-built optimized version using mypy[c] v1.20.\u003c/li\u003e\n\u003cli\u003eRelax \u003ccode\u003esetuptools\u003c/code\u003e constraint to \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;82.1\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrectly remove SIG remnant in utf-7 decoded string. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/718\"\u003e#718\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/716\"\u003e#716\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.6\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.5...3.4.6\"\u003e3.4.6\u003c/a\u003e (2026-03-15)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFlattened the logic in \u003ccode\u003echarset_normalizer.md\u003c/code\u003e for higher performance. Removed \u003ccode\u003eeligible(..)\u003c/code\u003e and \u003ccode\u003efeed(...)\u003c/code\u003e\nin favor of \u003ccode\u003efeed_info(...)\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound for mypy[c] to 1.20, for our optimized version.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003eUNICODE_RANGES_COMBINED\u003c/code\u003e using Unicode blocks v17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEdge case where noise difference between two candidates can be almost insignificant. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/672\"\u003e#672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCLI \u003ccode\u003e--normalize\u003c/code\u003e writing to wrong path when passing multiple files in. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/702\"\u003e#702\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFreethreaded pre-built wheels now shipped in PyPI starting with 3.14t. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/616\"\u003e#616\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.6...3.4.7\"\u003e3.4.7\u003c/a\u003e (2026-04-02)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePre-built optimized version using mypy[c] v1.20.\u003c/li\u003e\n\u003cli\u003eRelax \u003ccode\u003esetuptools\u003c/code\u003e constraint to \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;82.1\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrectly remove SIG remnant in utf-7 decoded string. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/718\"\u003e#718\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/716\"\u003e#716\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.5...3.4.6\"\u003e3.4.6\u003c/a\u003e (2026-03-15)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFlattened the logic in \u003ccode\u003echarset_normalizer.md\u003c/code\u003e for higher performance. Removed \u003ccode\u003eeligible(..)\u003c/code\u003e and \u003ccode\u003efeed(...)\u003c/code\u003e\nin favor of \u003ccode\u003efeed_info(...)\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound for mypy[c] to 1.20, for our optimized version.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003eUNICODE_RANGES_COMBINED\u003c/code\u003e using Unicode blocks v17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEdge case where noise difference between two candidates can be almost insignificant. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/672\"\u003e#672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCLI \u003ccode\u003e--normalize\u003c/code\u003e writing to wrong path when passing multiple files in. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/702\"\u003e#702\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFreethreaded pre-built wheels now shipped in PyPI starting with 3.14t. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/616\"\u003e#616\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/0f07891bf516b5d5231f1bd4dd2d8da7d4d09a9a\"\u003e\u003ccode\u003e0f07891\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/729\"\u003e#729\u003c/a\u003e from jawah/release-3.4.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/fdbeb299479e8f4d737e4d227cd0b2bd5d273dc0\"\u003e\u003ccode\u003efdbeb29\u003c/code\u003e\u003c/a\u003e chore: update dev, and ci requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/b66f922bfbdbdd9dd46af18a8964d4fb888756d4\"\u003e\u003ccode\u003eb66f922\u003c/code\u003e\u003c/a\u003e chore: add ft classifier\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f94249d0a2c712f2d03124f4de6b77f5e03aaa96\"\u003e\u003ccode\u003ef94249d\u003c/code\u003e\u003c/a\u003e chore: add test cases for utf_7 recent fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/95c866f6c984bbd043e7e3ed0628aa4f3f8d5a26\"\u003e\u003ccode\u003e95c866f\u003c/code\u003e\u003c/a\u003e chore: bump version to 3.4.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/4f429bb764c7e893f99bb4bceb60856da1baacfb\"\u003e\u003ccode\u003e4f429bb\u003c/code\u003e\u003c/a\u003e chore: bump mypy pre-commit to v1.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/b579cd6cab9bd83aa3fc0ca169d4df022bf4888c\"\u003e\u003ccode\u003eb579cd6\u003c/code\u003e\u003c/a\u003e fix: correctly remove SIG remnant in utf-7 decoded string\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/58bf944a77cc0883fc46a6ee8edac3549fea5d59\"\u003e\u003ccode\u003e58bf944\u003c/code\u003e\u003c/a\u003e :arrow_up: Bump github/codeql-action from 4.32.4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/728\"\u003e#728\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/44cf8a1b676a2532a8f1694e62e4f4f98f9132e1\"\u003e\u003ccode\u003e44cf8a1\u003c/code\u003e\u003c/a\u003e :arrow_up: Bump actions/download-artifact from 8.0.0 to 8.0.1 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/726\"\u003e#726\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/362bc20073f737b1ba4ca2f68cffb0c4cc024d20\"\u003e\u003ccode\u003e362bc20\u003c/code\u003e\u003c/a\u003e :arrow_up: Bump docker/setup-qemu-action from 3.7.0 to 4.0.0 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/725\"\u003e#725\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.5...3.4.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `click` from 8.3.1 to 8.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/click/releases\"\u003eclick's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.3.2\u003c/h2\u003e\n\u003cp\u003eThis is the Click 8.3.2 fix release, which fixes bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.\u003c/p\u003e\n\u003cp\u003ePyPI: \u003ca href=\"https://pypi.org/project/click/8.3.2/\"\u003ehttps://pypi.org/project/click/8.3.2/\u003c/a\u003e\nChanges: \u003ca href=\"https://click.palletsprojects.com/page/changes/#version-8-3-2\"\u003ehttps://click.palletsprojects.com/page/changes/#version-8-3-2\u003c/a\u003e\nMilestone: \u003ca href=\"https://github.com/pallets/click/milestone/29\"\u003ehttps://github.com/pallets/click/milestone/29\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix handling of \u003ccode\u003eflag_value\u003c/code\u003e when \u003ccode\u003eis_flag=False\u003c/code\u003e to allow such options to be\nused without an explicit value. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3084\"\u003e#3084\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3152\"\u003e#3152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHide \u003ccode\u003eSentinel.UNSET\u003c/code\u003e values as \u003ccode\u003eNone\u003c/code\u003e when using \u003ccode\u003elookup_default()\u003c/code\u003e.\n\u003ca href=\"https://redirect.github.com/pallets/click/issues/3136\"\u003e#3136\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3199\"\u003e#3199\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3202\"\u003e#3202\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3209\"\u003e#3209\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3212\"\u003e#3212\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3224\"\u003e#3224\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrevent \u003ccode\u003e_NamedTextIOWrapper\u003c/code\u003e from closing streams owned by \u003ccode\u003eStreamMixer\u003c/code\u003e.\n\u003ca href=\"https://redirect.github.com/pallets/click/issues/824\"\u003e#824\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/2991\"\u003e#2991\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/2993\"\u003e#2993\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3110\"\u003e#3110\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3139\"\u003e#3139\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3140\"\u003e#3140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd comprehensive tests for \u003ccode\u003eCliRunner\u003c/code\u003e stream lifecycle, covering\nlogging interaction, multi-threaded safety, and sequential invocation\nisolation. Add high-iteration stress tests behind a \u003ccode\u003estress\u003c/code\u003e marker\nwith a dedicated CI job. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3139\"\u003e#3139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix callable \u003ccode\u003eflag_value\u003c/code\u003e being instantiated when used as a default via\n\u003ccode\u003edefault=True\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3121\"\u003e#3121\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3201\"\u003e#3201\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3213\"\u003e#3213\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3225\"\u003e#3225\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/click/blob/main/CHANGES.rst\"\u003eclick's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 8.3.2\u003c/h2\u003e\n\u003cp\u003eReleased 2026-04-02\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix handling of \u003ccode\u003eflag_value\u003c/code\u003e when \u003ccode\u003eis_flag=False\u003c/code\u003e to allow such options to be\nused without an explicit value. :issue:\u003ccode\u003e3084\u003c/code\u003e :pr:\u003ccode\u003e3152\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eHide \u003ccode\u003eSentinel.UNSET\u003c/code\u003e values as \u003ccode\u003eNone\u003c/code\u003e when using \u003ccode\u003elookup_default()\u003c/code\u003e.\n:issue:\u003ccode\u003e3136\u003c/code\u003e :pr:\u003ccode\u003e3199\u003c/code\u003e :pr:\u003ccode\u003e3202\u003c/code\u003e :pr:\u003ccode\u003e3209\u003c/code\u003e :pr:\u003ccode\u003e3212\u003c/code\u003e :pr:\u003ccode\u003e3224\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003ePrevent \u003ccode\u003e_NamedTextIOWrapper\u003c/code\u003e from closing streams owned by \u003ccode\u003eStreamMixer\u003c/code\u003e.\n:issue:\u003ccode\u003e824\u003c/code\u003e :issue:\u003ccode\u003e2991\u003c/code\u003e :issue:\u003ccode\u003e2993\u003c/code\u003e :issue:\u003ccode\u003e3110\u003c/code\u003e :pr:\u003ccode\u003e3139\u003c/code\u003e :pr:\u003ccode\u003e3140\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd comprehensive tests for \u003ccode\u003eCliRunner\u003c/code\u003e stream lifecycle, covering\nlogging interaction, multi-threaded safety, and sequential invocation\nisolation. Add high-iteration stress tests behind a \u003ccode\u003estress\u003c/code\u003e marker\nwith a dedicated CI job. :pr:\u003ccode\u003e3139\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFix callable \u003ccode\u003eflag_value\u003c/code\u003e being instantiated when used as a default via\n\u003ccode\u003edefault=True\u003c/code\u003e. :issue:\u003ccode\u003e3121\u003c/code\u003e :pr:\u003ccode\u003e3201\u003c/code\u003e :pr:\u003ccode\u003e3213\u003c/code\u003e :pr:\u003ccode\u003e3225\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/052c006033729bbb422cbdad0c4fee988ecb5aa5\"\u003e\u003ccode\u003e052c006\u003c/code\u003e\u003c/a\u003e Change update release date.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/502b7ce7b131473ef00a3586e60bb000f33b4c43\"\u003e\u003ccode\u003e502b7ce\u003c/code\u003e\u003c/a\u003e Merge branch 'stable' of \u003ca href=\"https://github.com/pallets/click\"\u003ehttps://github.com/pallets/click\u003c/a\u003e into release-8.3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/a0a37e411820861d48e21b131fdd840abaf746e0\"\u003e\u003ccode\u003ea0a37e4\u003c/code\u003e\u003c/a\u003e Change publish to werkzeug latest. (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3301\"\u003e#3301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/57be6fc2b40eb40279d022e6aabc983ee0dfb7a9\"\u003e\u003ccode\u003e57be6fc\u003c/code\u003e\u003c/a\u003e Change publish to werkzeug latest.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/781d6a88bdd30229e72a84cd6753b0235f339679\"\u003e\u003ccode\u003e781d6a8\u003c/code\u003e\u003c/a\u003e Update publish workflows (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3266\"\u003e#3266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/ff795b66ba945239c779b528171f5fe4536cf844\"\u003e\u003ccode\u003eff795b6\u003c/code\u003e\u003c/a\u003e Update precommit pins with tox\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/dd87ef4f9fa7d6f13e14885e9a6842a21ededebc\"\u003e\u003ccode\u003edd87ef4\u003c/code\u003e\u003c/a\u003e Update github action pins with tox\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/93d3f9d22e90035bc2b51c2183c15bd4a021376f\"\u003e\u003ccode\u003e93d3f9d\u003c/code\u003e\u003c/a\u003e Release version 8.3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/3299ba1a8a5de34b24a7226a683a837d8a0857e7\"\u003e\u003ccode\u003e3299ba1\u003c/code\u003e\u003c/a\u003e Add missing PR to changelog. (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3264\"\u003e#3264\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/b7f62c4d002e5b5bca3ebef6b995b7338740fe6f\"\u003e\u003ccode\u003eb7f62c4\u003c/code\u003e\u003c/a\u003e Add missing PR to changelog.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets/click/compare/8.3.1...8.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `coverage` from 7.13.4 to 7.13.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/coveragepy/coveragepy/blob/main/CHANGES.rst\"\u003ecoverage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 7.13.5 — 2026-03-17\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003eissue 2138\u003c/code\u003e_ describes a memory leak that happened when repeatedly\nusing the Coverage API with in-memory data. This is now fixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: the markdown-formatted coverage report didn't fully escape special\ncharacters in file paths (\u003ccode\u003eissue 2141\u003c/code\u003e\u003cem\u003e). This would be very unlikely to\ncause a problem, but now it's done properly, thanks to \u003ccode\u003eEllie Ayla \u0026lt;pull 2142_\u0026gt;\u003c/code\u003e\u003c/em\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: the C extension wouldn't build on VS2019, but now it does (\u003ccode\u003eissue 2145\u003c/code\u003e_).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 2138: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2138\"\u003ecoveragepy/coveragepy#2138\u003c/a\u003e\n.. _issue 2141: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2141\"\u003ecoveragepy/coveragepy#2141\u003c/a\u003e\n.. _pull 2142: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/pull/2142\"\u003ecoveragepy/coveragepy#2142\u003c/a\u003e\n.. _issue 2145: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2145\"\u003ecoveragepy/coveragepy#2145\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-13-4:\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/c88da144eef8cf78424331e5cbbde3e002eef43f\"\u003e\u003ccode\u003ec88da14\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/e2ac3e1ef644370101ff365acad3431d16076512\"\u003e\u003ccode\u003ee2ac3e1\u003c/code\u003e\u003c/a\u003e build: sample HTML shouldn't include the status.json file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/910f8f336541c2dcb4e9ec468144c7eb4a7779ac\"\u003e\u003ccode\u003e910f8f3\u003c/code\u003e\u003c/a\u003e docs: prep for 7.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/3a4819c24d3d20cb2670b99141517812ffa3fab0\"\u003e\u003ccode\u003e3a4819c\u003c/code\u003e\u003c/a\u003e style: make workflows more uniform\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/2a53705f5fe588158b8a8d37ff3beee86388b9e4\"\u003e\u003ccode\u003e2a53705\u003c/code\u003e\u003c/a\u003e chore: bump the action-dependencies group across 1 directory with 4 updates (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/e7c878d201db819416b978150944d9a842d22b18\"\u003e\u003ccode\u003ee7c878d\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/ab4db406a9c35acf977cf3ddb94a78d696b77bc5\"\u003e\u003ccode\u003eab4db40\u003c/code\u003e\u003c/a\u003e build: use --generate-hashes when pinning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/a438753eef870441044cef588e29ce4b9a28adf1\"\u003e\u003ccode\u003ea438753\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/7b33457d2c6367dfd5a563239998b3980444e090\"\u003e\u003ccode\u003e7b33457\u003c/code\u003e\u003c/a\u003e refactor: some leftover pyupgrade 3.10 bits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/2ff968db91a7cdafe6f6569ac7659a3a93a2da07\"\u003e\u003ccode\u003e2ff968d\u003c/code\u003e\u003c/a\u003e refactor: this type wasn't used anywhere\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/coveragepy/coveragepy/compare/7.13.4...7.13.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `librt` from 0.8.1 to 0.9.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mypyc/librt/commit/8f66cfe9cb3611b32741dd5b00e9049a627d6ccb\"\u003e\u003ccode\u003e8f66cfe\u003c/code\u003e\u003c/a\u003e Bump version to 0.9.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mypyc/librt/commit/149b3698bc3f6f7724f3fe6148938d6a4bc0d421\"\u003e\u003ccode\u003e149b369\u003c/code\u003e\u003c/a\u003e Sync mypy including extract_symbol() PR (\u003ca href=\"https://redirect.github.com/mypyc/librt/issues/37\"\u003e#37\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mypyc/librt/commit/05c11113460b73eb8ecc90adf539996012510169\"\u003e\u003ccode\u003e05c1111\u003c/code\u003e\u003c/a\u003e Use PEP 639 license metadata (\u003ca href=\"https://redirect.github.com/mypyc/librt/issues/34\"\u003e#34\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/mypyc/librt/compare/v0.8.1...v0.9.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mkdocs-get-deps` from 0.2.0 to 0.2.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/mkdocs/get-deps/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mkdocs-material` from 9.7.4 to 9.7.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/squidfunk/mkdocs-material/releases\"\u003emkdocs-material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003emkdocs-material-9.7.6\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eMaterial for MkDocs is in maintenance mode\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eGoing forward, the Material for MkDocs team focuses on \u003ca href=\"https://zensical.org\"\u003eZensical\u003c/a\u003e, a next-gen static site generator built from first principles. We will provide critical bug fixes and security updates for Material for MkDocs until November 2026.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://squidfunk.github.io/mkdocs-material/blog/2025/11/05/zensical/\"\u003eRead the full announcement on our blog\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically disable MkDocs 2.0 warning for forks of MkDocs\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.7.5\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eMaterial for MkDocs is in maintenance mode\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eGoing forward, the Material for MkDocs team focuses on \u003ca href=\"https://zensical.org\"\u003eZensical\u003c/a\u003e, a next-gen static site generator built from first principles. We will provide critical bug fixes and security updates for Material for MkDocs until November 2026.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://squidfunk.github.io/mkdocs-material/blog/2025/11/05/zensical/\"\u003eRead the full announcement on our blog\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLimited version range of mkdocs to \u0026lt;2\u003c/li\u003e\n\u003cli\u003eUpdated MkDocs 2.0 incompatibility warning (clarify relation with MkDocs)\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/squidfunk/mkdocs-material/blob/master/CHANGELOG\"\u003emkdocs-material's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003emkdocs-material-9.7.6 (2026-03-19)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically disable MkDocs 2.0 warning for forks of MkDocs\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.7.5 (2026-03-10)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eLimited version range of mkdocs to \u0026lt;2\u003c/li\u003e\n\u003cli\u003eUpdated MkDocs 2.0 incompatibility warning (clarify relation with MkDocs)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.7.4 (2026-03-03)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eHardened social cards plugin by switching to sandboxed environment\u003c/li\u003e\n\u003cli\u003eUpdated MkDocs 2.0 incompatibility warning\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.7.3 (2026-02-24)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8567\"\u003e#8567\u003c/a\u003e: Print MkDocs 2.0 incompatibility warning to stderr\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.7.2 (2026-02-18)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eOpened up version ranges of optional dependencies for forward-compatibility\u003c/li\u003e\n\u003cli\u003eAdded warning to 'mkdocs build' about impending MkDocs 2.0 incompatibility\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.7.1 (2025-12-18)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated requests to 2.30+ to mitigate CVE in urllib\u003c/li\u003e\n\u003cli\u003eFixed privacy plugin not picking up protocol-relative URLs\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8542\"\u003e#8542\u003c/a\u003e: false positives and negatives captured in privacy plugin\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.7.0 (2025-11-11)\u003c/p\u003e\n\u003cp\u003e⚠️ Material for MkDocs is now in maintenance mode\u003c/p\u003e\n\u003cp\u003eThis is the last release of Material for MkDocs that will receive new features.\nGoing forward, the Material for MkDocs team focuses on Zensical, a next-gen\nstatic site generator built from first principles. We will provide critical\nbug fixes and security updates for Material for MkDocs for 12 months at least.\u003c/p\u003e\n\u003cp\u003eRead the full announcement on our blog:\n\u003ca href=\"https://squidfunk.github.io/mkdocs-material/blog/2025/11/05/zensical/\"\u003ehttps://squidfunk.github.io/mkdocs-material/blog/2025/11/05/zensical/\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis release includes all features that were previously exclusive to the\nInsiders edition. These features are now freely available to everyone.\u003c/p\u003e\n\u003cp\u003eNote on deprecated plugins: The projects and typeset plugins are included in\nthis release, but must be considered deprecated. Both plugins proved\nunsustainable to maintain and represent architectural dead ends. They are\nprovided as-is without ongoing support.\u003c/p\u003e\n\u003cp\u003eChanges:\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/squidfunk/mkdocs-material/commit/6c52ed6289b171a153875491f059a94819ec3e10\"\u003e\u003ccode\u003e6c52ed6\u003c/code\u003e\u003c/a\u003e Prepare 9.7.6 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/51d9b76636431814df924bcda27485b16023978b\"\u003e\u003ccode\u003e51d9b76\u003c/code\u003e\u003c/a\u003e Automatically disable MkDocs 2.0 warning for forks of MkDocs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/6f9a48b4048650341a654d9757da57fc1e3e323d\"\u003e\u003ccode\u003e6f9a48b\u003c/code\u003e\u003c/a\u003e Updated links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/00b9933e5821fd852700268767d4fd53ae1ce1cb\"\u003e\u003ccode\u003e00b9933\u003c/code\u003e\u003c/a\u003e Prepare 9.7.5 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/37683d12c9cd62309aa917237741ee0886709b7c\"\u003e\u003ccode\u003e37683d1\u003c/code\u003e\u003c/a\u003e Updated blog post on MkDocs 2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/199e31598055d5d6ea538618804c7558f5d81047\"\u003e\u003ccode\u003e199e315\u003c/code\u003e\u003c/a\u003e Updated warning message to clarify relation to MkDocs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/10258334eb13545e6d708cf121c3867bfbdb6017\"\u003e\u003ccode\u003e1025833\u003c/code\u003e\u003c/a\u003e Limited version range of mkdocs to \u0026lt;2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/1532f523f6c650c9d6fd16229ee8bec0759b4151\"\u003e\u003ccode\u003e1532f52\u003c/code\u003e\u003c/a\u003e Added update log to blog post\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/d0c8b2862a966f5f268d4a4c35bb4fcfccebb9b1\"\u003e\u003ccode\u003ed0c8b28\u003c/code\u003e\u003c/a\u003e Updated dependencies to fix vulnerabilities\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/71d48699a0e2bef231e796818c4dc20b230a5f45\"\u003e\u003ccode\u003e71d4869\u003c/code\u003e\u003c/a\u003e Updated blog post on MkDocs 2.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/squidfunk/mkdocs-material/compare/9.7.4...9.7.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `msal` from 1.35.1 to 1.36.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-python/releases\"\u003emsal's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.36.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the PoP flow in the console app by \u003ca href=\"https://github.com/PetarSDimov\"\u003e\u003ccode\u003e@​PetarSDimov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/887\"\u003eAzureAD/microsoft-authentication-library-for-python#887\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd ADO CI, SDL, and release pipelines with e2e test enablement by \u003ca href=\"https://github.com/RyAuld\"\u003e\u003ccode\u003e@​RyAuld\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/890\"\u003eAzureAD/microsoft-authentication-library-for-python#890\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd documentation for Managed Identity v2 Hackathon by \u003ca href=\"https://github.com/gladjohn\"\u003e\u003ccode\u003e@​gladjohn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/885\"\u003eAzureAD/microsoft-authentication-library-for-python#885\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePotential fix for code scanning alert no. 74: Workflow does not contain permissions by \u003ca href=\"https://github.com/Avery-Dunn\"\u003e\u003ccode\u003e@​Avery-Dunn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/884\"\u003eAzureAD/microsoft-authentication-library-for-python#884\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded withFmi method for cca app by \u003ca href=\"https://github.com/4gust\"\u003e\u003ccode\u003e@​4gust\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/876\"\u003eAzureAD/microsoft-authentication-library-for-python#876\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse cryptographically secure randomness for PKCE, state, and nonce generation by \u003ca href=\"https://github.com/ashok672\"\u003e\u003ccode\u003e@​ashok672\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/894\"\u003eAzureAD/microsoft-authentication-library-for-python#894\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix OIDC issuer domain spoofing in B2C host validation by \u003ca href=\"https://github.com/4gust\"\u003e\u003ccode\u003e@​4gust\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/896\"\u003eAzureAD/microsoft-authentication-library-for-python#896\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/PetarSDimov\"\u003e\u003ccode\u003e@​PetarSDimov\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/887\"\u003eAzureAD/microsoft-authentication-library-for-python#887\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gladjohn\"\u003e\u003ccode\u003e@​gladjohn\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/885\"\u003eAzureAD/microsoft-authentication-library-for-python#885\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-python/compare/1.35.1...1.36.0\"\u003ehttps://github.com/AzureAD/microsoft-authentication-library-for-python/compare/1.35.1...1.36.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://gi...\n\n_Description has been truncated_","html_url":"https://github.com/maxvanp/az-rbac-watch/pull/23","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxvanp%2Faz-rbac-watch/issues/23","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/23/packages"},{"uuid":"4243180005","node_id":"PR_kwDOPORtnc7RoNga","number":67,"state":"open","title":"build(deps-dev): update setuptools-scm requirement from \u003e=8 to \u003e=9.2.2","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-11T05:13:22.000Z","updated_at":"2026-04-11T05:15:29.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps-dev): update","packages":[{"name":"setuptools-scm","old_version":"\u003e=8","new_version":"\u003e=9.2.2","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) to permit the latest version.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/blob/v9.2.2/CHANGELOG.md\"\u003esetuptools-scm's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.2.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1231\"\u003e#1231\u003c/a\u003e: don't warn about \u003ccode\u003etool.setuptools.dynamic.version\u003c/code\u003e when only using file finder.\nThe warning about combining version guessing with setuptools dynamic versions should only\nbe issued when setuptools-scm is performing version inference, not when it's only being\nused for its file finder functionality.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.2.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1216\"\u003e#1216\u003c/a\u003e: accept and create a warning for usages of \u003ccode\u003eversion = attr:\u003c/code\u003e in setuptools config.\nunfortunately dozens of projects cargo-culted that antipattern\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.2.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eadd simplified activation via \u003ccode\u003esetuptools-scm[simple]\u003c/code\u003e extra\u003c/p\u003e\n\u003cp\u003eA new streamlined way to enable version inference without requiring a \u003ccode\u003e[tool.setuptools_scm]\u003c/code\u003e section.\nWhen \u003ccode\u003esetuptools-scm[simple]\u003c/code\u003e is in \u003ccode\u003ebuild-system.requires\u003c/code\u003e and \u003ccode\u003eversion\u003c/code\u003e is in \u003ccode\u003eproject.dynamic\u003c/code\u003e,\nversion inference is automatically enabled with default settings.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eunchecked simplified activation - too many projects use setups where it would fail\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erefine activation logic and add unittest for the relevant cases instead of trying to speedrun setuptools\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.1 (yanked)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1194\"\u003e#1194\u003c/a\u003e: correctly handle version keyword when pyproject metadata is missing\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.0 (yanked)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecomplete reiteration of the decision logic for enabling version inference on setuptools_scm\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/pypa/setuptools-scm/commit/e56b78fcd4c1e79aa36c1e4700fca34c8ff540fe\"\u003e\u003ccode\u003ee56b78f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1232\"\u003e#1232\u003c/a\u003e from RonnyPfannschmidt/fix-1231-dont-warn-when-no-guess\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/4f55e9585e398e13103112a6fd488109d9da4ead\"\u003e\u003ccode\u003e4f55e95\u003c/code\u003e\u003c/a\u003e docs: update changelog for v9.2.2 patch release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/95a0c47553ea0b373238bb64aa344b2c2547c849\"\u003e\u003ccode\u003e95a0c47\u003c/code\u003e\u003c/a\u003e fix: don't warn about tool.setuptools.dynamic.version when only using file fi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/338f562e6a38f8d32fd5aeb4677b3f87fc5a0122\"\u003e\u003ccode\u003e338f562\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1226\"\u003e#1226\u003c/a\u003e from RonnyPfannschmidt/prepare-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a893634c36a074052ed3f6d0e77b076b582c72ab\"\u003e\u003ccode\u003ea893634\u003c/code\u003e\u003c/a\u003e Prepare release v9.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/ad83282242e96fe11c958227740ee03a7a2ed0fe\"\u003e\u003ccode\u003ead83282\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1225\"\u003e#1225\u003c/a\u003e from pypa/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/20a44648f299f64b1241a448bdbafde9b1871ebf\"\u003e\u003ccode\u003e20a4464\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/70f69429c40f8c8d3c4e0eec2d8b4a6794671c88\"\u003e\u003ccode\u003e70f6942\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1219\"\u003e#1219\u003c/a\u003e from RonnyPfannschmidt/fix-1216-explicitly-deprecate...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/14d85c0fb8fa9efd1ec4bac3413f48aea0e319f5\"\u003e\u003ccode\u003e14d85c0\u003c/code\u003e\u003c/a\u003e Install Mercurial on Windows runners via Chocolatey\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c5cec917123e4cc87b490f56b6e7af27a3b0399\"\u003e\u003ccode\u003e8c5cec9\u003c/code\u003e\u003c/a\u003e Fix API stability check workflow to install griffe and improve reporting\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...v9.2.2\"\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/Ajimaru/ajitroids/pull/67","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ajimaru%2Fajitroids/issues/67","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/67/packages"},{"uuid":"4242248007","node_id":"PR_kwDOFLbcYM7RmAv0","number":75,"state":"closed","title":"Update setuptools-scm requirement from \u003e=3.4.3 to \u003e=10.0.5","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-04-11T00:40:04.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-10T23:52:43.000Z","updated_at":"2026-04-11T00:40:13.000Z","time_to_close":2841,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Update","packages":[{"name":"setuptools-scm","old_version":"\u003e=3.4.3","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\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/randovania/py-randomprime/pull/75","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/randovania%2Fpy-randomprime/issues/75","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/75/packages"},{"uuid":"4213260039","node_id":"PR_kwDOR6uIbc7QRuD4","number":21,"state":"closed","title":"build(deps): bump the pip group across 3 directories with 19 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-04-12T13:29:16.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-06T18:11:09.000Z","updated_at":"2026-04-12T13:29:24.000Z","time_to_close":501487,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"pip","update_count":19,"packages":[{"name":"setuptools","old_version":"80.9.0","new_version":"82.0.1","repository_url":"https://github.com/pypa/setuptools"},{"name":"setuptools-scm","old_version":"9.2.0","new_version":"9.2.2","repository_url":"https://github.com/pypa/setuptools-scm"},{"name":"setuptools","old_version":"80.9.0","new_version":"82.0.1","repository_url":"https://github.com/pypa/setuptools"},{"name":"datasets","old_version":"4.3.0","new_version":"4.8.4","repository_url":"https://github.com/huggingface/datasets"},{"name":"huggingface-hub","old_version":"0.36.2","new_version":"1.9.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"transformers","old_version":"4.57.6","new_version":"5.5.0","repository_url":"https://github.com/huggingface/transformers"},{"name":"trl","old_version":"0.23.1","new_version":"1.0.0","repository_url":"https://github.com/huggingface/trl"},{"name":"data-designer-engine","old_version":"0.5.4","new_version":"0.5.5"},{"name":"pandas","old_version":"2.3.3","new_version":"3.0.2","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"pytest-rerunfailures","old_version":"15.1","new_version":"16.1","repository_url":"https://github.com/pytest-dev/pytest-rerunfailures"},{"name":"scikit-learn","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/scikit-learn/scikit-learn"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [datasets](https://github.com/huggingface/datasets), [setuptools](https://github.com/pypa/setuptools), [setuptools-scm](https://github.com/pypa/setuptools-scm), [pandas](https://github.com/pandas-dev/pandas), [huggingface-hub](https://github.com/huggingface/huggingface_hub), [transformers](https://github.com/huggingface/transformers), [trl](https://github.com/huggingface/trl), data-designer-engine, [pytest](https://github.com/pytest-dev/pytest), [pytest-rerunfailures](https://github.com/pytest-dev/pytest-rerunfailures), [scikit-learn](https://github.com/scikit-learn/scikit-learn), [torchao](https://github.com/pytorch/ao), [chardet](https://github.com/chardet/chardet), [faker](https://github.com/joke2k/faker), [fsspec](https://github.com/fsspec/filesystem_spec), [python-json-logger](https://github.com/nhairs/python-json-logger), [sqlfluff](https://github.com/sqlfluff/sqlfluff), [data-designer](https://github.com/NVIDIA-NeMo/DataDesigner) and data-designer-config to permit the latest version.\nUpdates `datasets` to 4.5.0\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\u003e4.5.0\u003c/h2\u003e\n\u003ch2\u003eDataset Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd lance format support by \u003ca href=\"https://github.com/eddyxu\"\u003e\u003ccode\u003e@​eddyxu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7913\"\u003ehuggingface/datasets#7913\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for both Lance dataset (including metadata / manifests) and standalone .lance files\u003c/li\u003e\n\u003cli\u003ee.g. with \u003ca href=\"https://huggingface.co/datasets/lance-format/fineweb-edu\"\u003elance-format/fineweb-edu\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003efrom datasets import load_dataset\r\n\u003cp\u003eds = load_dataset(\u0026quot;lance-format/fineweb-edu\u0026quot;, streaming=True)\nfor example in ds[\u0026quot;train\u0026quot;]:\n...\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRaise early for invalid \u003ccode\u003erevision\u003c/code\u003e in \u003ccode\u003eload_dataset\u003c/code\u003e by \u003ca href=\"https://github.com/Scott-Simmons\"\u003e\u003ccode\u003e@​Scott-Simmons\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7929\"\u003ehuggingface/datasets#7929\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix low but large example indexerror by \u003ca href=\"https://github.com/CloseChoice\"\u003e\u003ccode\u003e@​CloseChoice\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7912\"\u003ehuggingface/datasets#7912\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix method to retrieve attributes from file object 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/7938\"\u003ehuggingface/datasets#7938\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd _OverridableIOWrapper 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/7942\"\u003ehuggingface/datasets#7942\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd _generate_shards 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/7943\"\u003ehuggingface/datasets#7943\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/eddyxu\"\u003e\u003ccode\u003e@​eddyxu\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7913\"\u003ehuggingface/datasets#7913\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Scott-Simmons\"\u003e\u003ccode\u003e@​Scott-Simmons\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7929\"\u003ehuggingface/datasets#7929\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/datasets/compare/4.4.2...4.5.0\"\u003ehttps://github.com/huggingface/datasets/compare/4.4.2...4.5.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/huggingface/datasets/commit/69d773ac45a28194b96977034ec410dda1f2ccf4\"\u003e\u003ccode\u003e69d773a\u003c/code\u003e\u003c/a\u003e Release: 4.5.0 (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7944\"\u003e#7944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/dc98f979517dbfa68322d2b9d193e32ec3b61bc2\"\u003e\u003ccode\u003edc98f97\u003c/code\u003e\u003c/a\u003e Add _generate_shards (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7943\"\u003e#7943\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/38d28bfc942a6f1dff1b5321f927f676c7515d8c\"\u003e\u003ccode\u003e38d28bf\u003c/code\u003e\u003c/a\u003e add _OverridableIOWrapper (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7942\"\u003e#7942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/7431153ef4bd827dbbea077c3e9300ce9a275710\"\u003e\u003ccode\u003e7431153\u003c/code\u003e\u003c/a\u003e Fix method to retrieve attributes from file object (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7938\"\u003e#7938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/6a1bc355a0ca2c8f9f5c10698215212f0f14e7b7\"\u003e\u003ccode\u003e6a1bc35\u003c/code\u003e\u003c/a\u003e fix low but large example indexerror (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7912\"\u003e#7912\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/7bdf8403a4ae180f98bfa58080d92f57709448fa\"\u003e\u003ccode\u003e7bdf840\u003c/code\u003e\u003c/a\u003e Raise early for invalid \u003ccode\u003erevision\u003c/code\u003e in \u003ccode\u003eload_dataset\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7929\"\u003e#7929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/06b6e020cadc12d625e34bea5048378d6097ab9d\"\u003e\u003ccode\u003e06b6e02\u003c/code\u003e\u003c/a\u003e Add lance format support (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7913\"\u003e#7913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/0feb65dd8733191dd2d1e74215b422fc5939a56a\"\u003e\u003ccode\u003e0feb65d\u003c/code\u003e\u003c/a\u003e set dev version (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7908\"\u003e#7908\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/37d96157e1632e946f0af8b9e3274a0ca8cd96c7\"\u003e\u003ccode\u003e37d9615\u003c/code\u003e\u003c/a\u003e release: 4.4.2 (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7907\"\u003e#7907\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/58dda425abb52c09e65feeef563c4fb33908e8dc\"\u003e\u003ccode\u003e58dda42\u003c/code\u003e\u003c/a\u003e Don't save original_shard_lengths by default for backward compat (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7906\"\u003e#7906\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/datasets/compare/3.4.1...4.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools` from 80.9.0 to 82.0.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools/blob/main/NEWS.rst\"\u003esetuptools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ev82.0.1\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the loading of \u003ccode\u003elauncher manifest.xml\u003c/code\u003e file. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5047\"\u003e#5047\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplaced deprecated \u003ccode\u003ejson.__version__\u003c/code\u003e with fixture in tests. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5186\"\u003e#5186\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd advice about how to improve predictability when installing sdists. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5168\"\u003e#5168\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4941\"\u003e#4941\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev82.0.0\u003c/h1\u003e\n\u003ch2\u003eDeprecations and Removals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003epkg_resources\u003c/code\u003e has been removed from Setuptools. Most common uses of \u003ccode\u003epkg_resources\u003c/code\u003e have been superseded by the \u003ccode\u003eimportlib.resources \u0026lt;https://docs.python.org/3/library/importlib.resources.html\u0026gt;\u003c/code\u003e_ and \u003ccode\u003eimportlib.metadata \u0026lt;https://docs.python.org/3/library/importlib.metadata.html\u0026gt;\u003c/code\u003e_ projects. Projects and environments relying on \u003ccode\u003epkg_resources\u003c/code\u003e for namespace packages or other behavior should depend on older versions of \u003ccode\u003esetuptools\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev81.0.0\u003c/h1\u003e\n\u003ch2\u003eDeprecations and Removals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for the --dry-run parameter to setup.py. This one feature by its nature threads through lots of core and ancillary functionality, adding complexity and friction. Removal of this parameter will help decouple the compiler functionality from distutils and thus the eventual full integration of distutils. These changes do affect some class and function signatures, so any derivative functionality may require some compatibility shims to support their expected interface. Please report any issues to the Setuptools project for investigation. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4872\"\u003e#4872\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.10.2\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate vendored dependencies. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5159\"\u003e#5159\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMisc\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/5a13876673a41e3cd21d4d6e587f53d0fb4fd8e5\"\u003e\u003ccode\u003e5a13876\u003c/code\u003e\u003c/a\u003e Bump version: 82.0.0 → 82.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/51ab8f183f1c4112675d8d6ec6b004406d518ee8\"\u003e\u003ccode\u003e51ab8f1\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5194\"\u003e#5194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/f9c37b20bb0ed11203f676f9683452a4c3ace6f6\"\u003e\u003ccode\u003ef9c37b2\u003c/code\u003e\u003c/a\u003e Docs/CI: Fix intersphinx references (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5195\"\u003e#5195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/8173db2a4fc0f6cb28926b3dba59116b79f435c8\"\u003e\u003ccode\u003e8173db2\u003c/code\u003e\u003c/a\u003e Docs: Fix intersphinx references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/09bafbc74923f2a3591b5b098be75d6af6ca5141\"\u003e\u003ccode\u003e09bafbc\u003c/code\u003e\u003c/a\u003e Fix past tense on newsfragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/461ea56c8e629819a23920f44d9298d4f041abde\"\u003e\u003ccode\u003e461ea56\u003c/code\u003e\u003c/a\u003e Add news fragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/c4ffe535b58235ff9f9ebe90d24a2cffb57e70ae\"\u003e\u003ccode\u003ec4ffe53\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/749258b1a96c7accc05ea7d842fb19fc378866fe\"\u003e\u003ccode\u003e749258b\u003c/code\u003e\u003c/a\u003e Cleanup \u003ccode\u003epkg_resources\u003c/code\u003e dependencies and configuration (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/2019c16701667db1010c62ec11c6ef78c2e58206\"\u003e\u003ccode\u003e2019c16\u003c/code\u003e\u003c/a\u003e Parse \u003ccode\u003eext-module.define-macros\u003c/code\u003e from \u003ccode\u003epyproject.toml\u003c/code\u003e as list of tuples (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/b809c86a37d97fcce290d5f51d4c293ab40bc685\"\u003e\u003ccode\u003eb809c86\u003c/code\u003e\u003c/a\u003e Sync setuptools schema with validate-pyproject (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools/compare/v80.9.0...v82.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools-scm` from 9.2.0 to 9.2.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/blob/v9.2.2/CHANGELOG.md\"\u003esetuptools-scm's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.2.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1231\"\u003e#1231\u003c/a\u003e: don't warn about \u003ccode\u003etool.setuptools.dynamic.version\u003c/code\u003e when only using file finder.\nThe warning about combining version guessing with setuptools dynamic versions should only\nbe issued when setuptools-scm is performing version inference, not when it's only being\nused for its file finder functionality.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.2.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1216\"\u003e#1216\u003c/a\u003e: accept and create a warning for usages of \u003ccode\u003eversion = attr:\u003c/code\u003e in setuptools config.\nunfortunately dozens of projects cargo-culted that antipattern\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/e56b78fcd4c1e79aa36c1e4700fca34c8ff540fe\"\u003e\u003ccode\u003ee56b78f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1232\"\u003e#1232\u003c/a\u003e from RonnyPfannschmidt/fix-1231-dont-warn-when-no-guess\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/4f55e9585e398e13103112a6fd488109d9da4ead\"\u003e\u003ccode\u003e4f55e95\u003c/code\u003e\u003c/a\u003e docs: update changelog for v9.2.2 patch release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/95a0c47553ea0b373238bb64aa344b2c2547c849\"\u003e\u003ccode\u003e95a0c47\u003c/code\u003e\u003c/a\u003e fix: don't warn about tool.setuptools.dynamic.version when only using file fi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/338f562e6a38f8d32fd5aeb4677b3f87fc5a0122\"\u003e\u003ccode\u003e338f562\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1226\"\u003e#1226\u003c/a\u003e from RonnyPfannschmidt/prepare-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a893634c36a074052ed3f6d0e77b076b582c72ab\"\u003e\u003ccode\u003ea893634\u003c/code\u003e\u003c/a\u003e Prepare release v9.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/ad83282242e96fe11c958227740ee03a7a2ed0fe\"\u003e\u003ccode\u003ead83282\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1225\"\u003e#1225\u003c/a\u003e from pypa/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/20a44648f299f64b1241a448bdbafde9b1871ebf\"\u003e\u003ccode\u003e20a4464\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/70f69429c40f8c8d3c4e0eec2d8b4a6794671c88\"\u003e\u003ccode\u003e70f6942\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1219\"\u003e#1219\u003c/a\u003e from RonnyPfannschmidt/fix-1216-explicitly-deprecate...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/14d85c0fb8fa9efd1ec4bac3413f48aea0e319f5\"\u003e\u003ccode\u003e14d85c0\u003c/code\u003e\u003c/a\u003e Install Mercurial on Windows runners via Chocolatey\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c5cec917123e4cc87b490f56b6e7af27a3b0399\"\u003e\u003ccode\u003e8c5cec9\u003c/code\u003e\u003c/a\u003e Fix API stability check workflow to install griffe and improve reporting\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/v9.2.0...v9.2.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools` from 80.9.0 to 82.0.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools/blob/main/NEWS.rst\"\u003esetuptools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ev82.0.1\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the loading of \u003ccode\u003elauncher manifest.xml\u003c/code\u003e file. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5047\"\u003e#5047\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplaced deprecated \u003ccode\u003ejson.__version__\u003c/code\u003e with fixture in tests. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5186\"\u003e#5186\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd advice about how to improve predictability when installing sdists. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5168\"\u003e#5168\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4941\"\u003e#4941\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev82.0.0\u003c/h1\u003e\n\u003ch2\u003eDeprecations and Removals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003epkg_resources\u003c/code\u003e has been removed from Setuptools. Most common uses of \u003ccode\u003epkg_resources\u003c/code\u003e have been superseded by the \u003ccode\u003eimportlib.resources \u0026lt;https://docs.python.org/3/library/importlib.resources.html\u0026gt;\u003c/code\u003e_ and \u003ccode\u003eimportlib.metadata \u0026lt;https://docs.python.org/3/library/importlib.metadata.html\u0026gt;\u003c/code\u003e_ projects. Projects and environments relying on \u003ccode\u003epkg_resources\u003c/code\u003e for namespace packages or other behavior should depend on older versions of \u003ccode\u003esetuptools\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev81.0.0\u003c/h1\u003e\n\u003ch2\u003eDeprecations and Removals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for the --dry-run parameter to setup.py. This one feature by its nature threads through lots of core and ancillary functionality, adding complexity and friction. Removal of this parameter will help decouple the compiler functionality from distutils and thus the eventual full integration of distutils. These changes do affect some class and function signatures, so any derivative functionality may require some compatibility shims to support their expected interface. Please report any issues to the Setuptools project for investigation. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4872\"\u003e#4872\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.10.2\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate vendored dependencies. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5159\"\u003e#5159\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMisc\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/5a13876673a41e3cd21d4d6e587f53d0fb4fd8e5\"\u003e\u003ccode\u003e5a13876\u003c/code\u003e\u003c/a\u003e Bump version: 82.0.0 → 82.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/51ab8f183f1c4112675d8d6ec6b004406d518ee8\"\u003e\u003ccode\u003e51ab8f1\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5194\"\u003e#5194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/f9c37b20bb0ed11203f676f9683452a4c3ace6f6\"\u003e\u003ccode\u003ef9c37b2\u003c/code\u003e\u003c/a\u003e Docs/CI: Fix intersphinx references (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5195\"\u003e#5195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/8173db2a4fc0f6cb28926b3dba59116b79f435c8\"\u003e\u003ccode\u003e8173db2\u003c/code\u003e\u003c/a\u003e Docs: Fix intersphinx references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/09bafbc74923f2a3591b5b098be75d6af6ca5141\"\u003e\u003ccode\u003e09bafbc\u003c/code\u003e\u003c/a\u003e Fix past tense on newsfragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/461ea56c8e629819a23920f44d9298d4f041abde\"\u003e\u003ccode\u003e461ea56\u003c/code\u003e\u003c/a\u003e Add news fragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/c4ffe535b58235ff9f9ebe90d24a2cffb57e70ae\"\u003e\u003ccode\u003ec4ffe53\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/749258b1a96c7accc05ea7d842fb19fc378866fe\"\u003e\u003ccode\u003e749258b\u003c/code\u003e\u003c/a\u003e Cleanup \u003ccode\u003epkg_resources\u003c/code\u003e dependencies and configuration (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/2019c16701667db1010c62ec11c6ef78c2e58206\"\u003e\u003ccode\u003e2019c16\u003c/code\u003e\u003c/a\u003e Parse \u003ccode\u003eext-module.define-macros\u003c/code\u003e from \u003ccode\u003epyproject.toml\u003c/code\u003e as list of tuples (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/b809c86a37d97fcce290d5f51d4c293ab40bc685\"\u003e\u003ccode\u003eb809c86\u003c/code\u003e\u003c/a\u003e Sync setuptools schema with validate-pyproject (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools/compare/v80.9.0...v82.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` to 3.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pandas-dev/pandas/releases\"\u003epandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epandas 3.0.2\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 3.0.2.\nThis is a patch release in the 3.0.x series and includes some regression fixes and bug fixes. We recommend that all users of the 3.0.x series upgrade to this version.\u003c/p\u003e\n\u003cp\u003eSee the \u003ca href=\"https://pandas.pydata.org/docs/dev/whatsnew/v3.0.2.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\u003c/p\u003e\n\u003cp\u003ePandas 3.0 supports Python 3.11 and higher.\nThe release can be installed from PyPI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython -m pip install --upgrade pandas==3.0.*\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr from conda-forge\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge pandas=3.0\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePlease report any issues with the release on the \u003ca href=\"https://github.com/pandas-dev/pandas/issues\"\u003epandas issue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to all the contributors who made this release possible.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/ab90747e3dae0e69b1bdbf083820b8075689b34b\"\u003e\u003ccode\u003eab90747\u003c/code\u003e\u003c/a\u003e RLS: 3.0.2 (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64934\"\u003e#64934\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6f270137a27f8de4bd1afd7d71220e0760429750\"\u003e\u003ccode\u003e6f27013\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64931\"\u003e#64931\u003c/a\u003e on branch 3.0.x (DOC/BLD: temporary disable upload of docs...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/48ddc60d6efe8d942dbe1495dea725a9d7db15ef\"\u003e\u003ccode\u003e48ddc60\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64664\"\u003e#64664\u003c/a\u003e on branch 3.0.x (BUG: DataFrame.sum() crashes on empty Dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/8774488df19d0859ddc05a24210783b66da27ef7\"\u003e\u003ccode\u003e8774488\u003c/code\u003e\u003c/a\u003e [backport 3.0.x] PERF: fix slow python loop in validation for ArrowStringArra...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/33af6cc04ed6331c23a49655c4c7bb8f90351da3\"\u003e\u003ccode\u003e33af6cc\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64133\"\u003e#64133\u003c/a\u003e on branch 3.0.x (BUG: str.find returns byte offset instead...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/4ef49d815aae99b6ba5627ab0a54ba0819336652\"\u003e\u003ccode\u003e4ef49d8\u003c/code\u003e\u003c/a\u003e [backport 3.0.x] BUG: fix convert_dtypes dropping values from sliced mixed-dt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/0668f3451120e5552cdc8cf5d85f6d1238ce4e12\"\u003e\u003ccode\u003e0668f34\u003c/code\u003e\u003c/a\u003e [backport 3.0.x] BUG: Fix HDFStore.put with StringDtype columns and compressi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/23f2f442ea1af6deddfefef2a4a1e4cb44328c3d\"\u003e\u003ccode\u003e23f2f44\u003c/code\u003e\u003c/a\u003e [backport 3.0.x] BUG: Suppress unnecessary RuntimeWarning in to_datetime with...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/83ba804de35ec98798d31474d044cff7666bebd6\"\u003e\u003ccode\u003e83ba804\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64886\"\u003e#64886\u003c/a\u003e: BUG: Compute Variance of Complex Numbers Correctly (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64892\"\u003e#64892\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/bb5ca1a7a96130fa0e8e2a3987c051e4473f7792\"\u003e\u003ccode\u003ebb5ca1a\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64386\"\u003e#64386\u003c/a\u003e on branch 3.0.x (BUG: fix sort_index AssertionError with R...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.0.0...v3.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `datasets` from 4.3.0 to 4.8.4\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\u003e4.5.0\u003c/h2\u003e\n\u003ch2\u003eDataset Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd lance format support by \u003ca href=\"https://github.com/eddyxu\"\u003e\u003ccode\u003e@​eddyxu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7913\"\u003ehuggingface/datasets#7913\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for both Lance dataset (including metadata / manifests) and standalone .lance files\u003c/li\u003e\n\u003cli\u003ee.g. with \u003ca href=\"https://huggingface.co/datasets/lance-format/fineweb-edu\"\u003elance-format/fineweb-edu\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003efrom datasets import load_dataset\r\n\u003cp\u003eds = load_dataset(\u0026quot;lance-format/fineweb-edu\u0026quot;, streaming=True)\nfor example in ds[\u0026quot;train\u0026quot;]:\n...\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRaise early for invalid \u003ccode\u003erevision\u003c/code\u003e in \u003ccode\u003eload_dataset\u003c/code\u003e by \u003ca href=\"https://github.com/Scott-Simmons\"\u003e\u003ccode\u003e@​Scott-Simmons\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7929\"\u003ehuggingface/datasets#7929\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix low but large example indexerror by \u003ca href=\"https://github.com/CloseChoice\"\u003e\u003ccode\u003e@​CloseChoice\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7912\"\u003ehuggingface/datasets#7912\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix method to retrieve attributes from file object 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/7938\"\u003ehuggingface/datasets#7938\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd _OverridableIOWrapper 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/7942\"\u003ehuggingface/datasets#7942\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd _generate_shards 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/7943\"\u003ehuggingface/datasets#7943\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/eddyxu\"\u003e\u003ccode\u003e@​eddyxu\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7913\"\u003ehuggingface/datasets#7913\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Scott-Simmons\"\u003e\u003ccode\u003e@​Scott-Simmons\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7929\"\u003ehuggingface/datasets#7929\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/datasets/compare/4.4.2...4.5.0\"\u003ehttps://github.com/huggingface/datasets/compare/4.4.2...4.5.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/huggingface/datasets/commit/69d773ac45a28194b96977034ec410dda1f2ccf4\"\u003e\u003ccode\u003e69d773a\u003c/code\u003e\u003c/a\u003e Release: 4.5.0 (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7944\"\u003e#7944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/dc98f979517dbfa68322d2b9d193e32ec3b61bc2\"\u003e\u003ccode\u003edc98f97\u003c/code\u003e\u003c/a\u003e Add _generate_shards (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7943\"\u003e#7943\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/38d28bfc942a6f1dff1b5321f927f676c7515d8c\"\u003e\u003ccode\u003e38d28bf\u003c/code\u003e\u003c/a\u003e add _OverridableIOWrapper (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7942\"\u003e#7942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/7431153ef4bd827dbbea077c3e9300ce9a275710\"\u003e\u003ccode\u003e7431153\u003c/code\u003e\u003c/a\u003e Fix method to retrieve attributes from file object (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7938\"\u003e#7938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/6a1bc355a0ca2c8f9f5c10698215212f0f14e7b7\"\u003e\u003ccode\u003e6a1bc35\u003c/code\u003e\u003c/a\u003e fix low but large example indexerror (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7912\"\u003e#7912\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/7bdf8403a4ae180f98bfa58080d92f57709448fa\"\u003e\u003ccode\u003e7bdf840\u003c/code\u003e\u003c/a\u003e Raise early for invalid \u003ccode\u003erevision\u003c/code\u003e in \u003ccode\u003eload_dataset\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7929\"\u003e#7929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/06b6e020cadc12d625e34bea5048378d6097ab9d\"\u003e\u003ccode\u003e06b6e02\u003c/code\u003e\u003c/a\u003e Add lance format support (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7913\"\u003e#7913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/0feb65dd8733191dd2d1e74215b422fc5939a56a\"\u003e\u003ccode\u003e0feb65d\u003c/code\u003e\u003c/a\u003e set dev version (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7908\"\u003e#7908\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/37d96157e1632e946f0af8b9e3274a0ca8cd96c7\"\u003e\u003ccode\u003e37d9615\u003c/code\u003e\u003c/a\u003e release: 4.4.2 (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7907\"\u003e#7907\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/58dda425abb52c09e65feeef563c4fb33908e8dc\"\u003e\u003ccode\u003e58dda42\u003c/code\u003e\u003c/a\u003e Don't save original_shard_lengths by default for backward compat (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7906\"\u003e#7906\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/datasets/compare/3.4.1...4.5.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 0.36.2 to 1.9.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.9.0] Agent-Aware CLI, Spaces Volumes, and more\u003c/h2\u003e\n\u003ch2\u003e🚀 Spaces Volumes: Mount Models, Datasets, and Buckets Directly\u003c/h2\u003e\n\u003cp\u003eHugging Face Spaces now support mounting volumes, giving your Space direct filesystem access to models, datasets, and storage buckets. This replaces the deprecated persistent storage feature.\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003efrom huggingface_hub import HfApi, Volume\r\n\u003cp\u003eapi = HfApi()\napi.set_space_volumes(\nrepo_id=\u0026quot;username/my-space\u0026quot;,\nvolumes=[\nVolume(type=\u0026quot;model\u0026quot;, source=\u0026quot;username/my-model\u0026quot;, mount_path=\u0026quot;/models\u0026quot;, read_only=True),\nVolume(type=\u0026quot;bucket\u0026quot;, source=\u0026quot;username/my-bucket\u0026quot;, mount_path=\u0026quot;/data\u0026quot;),\n],\n)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVolumes can also be set at creation time via \u003ccode\u003ecreate_repo(space_volumes=...)\u003c/code\u003e and \u003ccode\u003eduplicate_repo(space_volumes=...)\u003c/code\u003e, and from the CLI with the \u003ccode\u003e--volume\u003c/code\u003e / \u003ccode\u003e-v\u003c/code\u003e flag:\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Create a Space with volumes mounted\r\nhf repos create my-space --type space --space-sdk gradio \\\r\n    -v hf://gpt2:/models -v hf://buckets/org/b:/data\r\n\u003ch1\u003eDuplicate a Space with volumes\u003c/h1\u003e\n\u003cp\u003ehf repos duplicate org/my-space my-space --type space \u003cbr /\u003e\n-v hf://gpt2:/models -v hf://buckets/org/b:/data\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for mounted volumes 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/4018\"\u003e#4018\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport volumes at repo creation and duplication 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/4035\"\u003e#4035\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 The \u003ccode\u003ehf\u003c/code\u003e CLI Now Auto-Detects AI Agents and Adapts Its Output\u003c/h2\u003e\n\u003cp\u003eAI coding agents (Claude Code, Cursor, Codex, Copilot, Gemini, ...) increasingly use the \u003ccode\u003ehf\u003c/code\u003e CLI to interact with the Hub. Until now, the output was designed for humans - ANSI colors, padded tables, emoji booleans, truncated cells - making it hard for agents to parse reliably.\u003c/p\u003e\n\u003cp\u003eStarting with v1.9, the CLI \u003cstrong\u003eautomatically detects when it's running inside an agent\u003c/strong\u003e and adapts its output: no ANSI, no truncation, tab-separated tables, compact JSON, full timestamps. No configuration needed - it just works. This is only a first step toward making the \u003ccode\u003ehf\u003c/code\u003e CLI the primary entry point to the Hugging Face Hub for AI agents!\u003c/p\u003e\n\u003cp\u003eAgent mode is auto-detected but you can also force a mode explicitly with \u003ccode\u003e--format\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003ehf models ls --limit 5                  # auto-detect\r\nhf models ls --limit 5 --format agent   # force agent-friendly output\r\nhf models ls --limit 5 --format json    # structured JSON\r\nhf models ls --limit 5 --format quiet   # IDs only, great for piping\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eHere's what an agent sees compared to a human:\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/huggingface/huggingface_hub/commit/b768bb2ddb2a8ca27314f53ddc884bccafe01a7a\"\u003e\u003ccode\u003eb768bb2\u003c/code\u003e\u003c/a\u003e Release: v1.9.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/9d30ff2af2f0ac8c6930e4f1a0cc1d4512ca1cef\"\u003e\u003ccode\u003e9d30ff2\u003c/code\u003e\u003c/a\u003e Release: v1.9.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/657b8b95fb60d41b014c465f8f15546cbd0ebb7a\"\u003e\u003ccode\u003e657b8b9\u003c/code\u003e\u003c/a\u003e chore: remove claude.yml workflow file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4031\"\u003e#4031\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d48d91fe18acbf578d0fb70bb6acea424f8f38\"\u003e\u003ccode\u003e38d48d9\u003c/code\u003e\u003c/a\u003e [CLI] Migrate \u003ccode\u003emodels\u003c/code\u003e, \u003ccode\u003edatasets\u003c/code\u003e, \u003ccode\u003espaces\u003c/code\u003e, \u003ccode\u003epapers\u003c/code\u003e to \u003ccode\u003eout\u003c/code\u003e singleton (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4\"\u003e#4\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4e2337d5d4197f2bd08963ffaf392e82fe5479de\"\u003e\u003ccode\u003e4e2337d\u003c/code\u003e\u003c/a\u003e [CLI] enrich CLI errors with available options and commands (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4034\"\u003e#4034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/ea1f4b79eb06368fd0e99a31eb40383c4c871dc5\"\u003e\u003ccode\u003eea1f4b7\u003c/code\u003e\u003c/a\u003e Support volumes at repo creation and duplication (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4035\"\u003e#4035\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/993d6456afe292af43699ca2bedc991b74cc2b95\"\u003e\u003ccode\u003e993d645\u003c/code\u003e\u003c/a\u003e [FEAT] Support skills from hf skills (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/3956\"\u003e#3956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/bb7dc6e26670b16776359023211f8691e5ac0e0f\"\u003e\u003ccode\u003ebb7dc6e\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eHF_HUB_DISABLE_SYMLINKS\u003c/code\u003e env variable to force no-symlink cache (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4032\"\u003e#4032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2593ff8f9261b7d23f69fb65a260f1b0ec8e9749\"\u003e\u003ccode\u003e2593ff8\u003c/code\u003e\u003c/a\u003e Do not scan CACHEDIR.TAG file in cache (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4036\"\u003e#4036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b8d92a2572de4f6289400606336da6817f3e0059\"\u003e\u003ccode\u003eb8d92a2\u003c/code\u003e\u003c/a\u003e [Fix] Validate shard filenames in sharded checkpoint index files (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4033\"\u003e#4033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v0.36.2...v1.9.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.57.6 to 5.5.0\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.5.0\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eGemma4\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/huggingface/transformers/blob/HEAD/INSET_PAPER_LINK\"\u003eGemma 4\u003c/a\u003e is a multimodal model with pretrained and instruction-tuned variants, available in 1B, 13B, and 27B parameters. The architecture is mostly the same as the previous Gemma versions. The key differences are a vision processor that can output images of fixed token budget and a spatial 2D RoPE to encode vision-specific information across height and width axis.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003eYou can find all the original Gemma 4 checkpoints under the \u003ca href=\"https://huggingface.co/collections/google/gemma-4-release-67c6c6f89c4f76621268bb6d\"\u003eGemma 4\u003c/a\u003e release.\u003c/p\u003e\n\u003cp\u003eThe key difference from previous Gemma releases is the new design to process \u003cstrong\u003eimages of different sizes\u003c/strong\u003e using a \u003cstrong\u003efixed-budget number of tokens\u003c/strong\u003e. Unlike many models that squash every image into a fixed square (like 224×224), Gemma 4 keeps the image's natural aspect ratio while making it the right size. There a a couple constraints to follow:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe total number of pixels must fit within a patch budget\u003c/li\u003e\n\u003cli\u003eBoth height and width must be divisible by \u003cstrong\u003e48\u003c/strong\u003e (= patch size 16 × pooling kernel 3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!IMPORTANT]\nGemma 4 does \u003cstrong\u003enot\u003c/strong\u003e apply the standard ImageNet mean/std normalization that many other vision models use. The model's own patch embedding layer handles the final scaling internally (shifting values to the [-1, 1] range).\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cp\u003eThe number of \u0026quot;soft tokens\u0026quot; (aka vision tokens) an image processor can produce is configurable. The supported options are outlined below and the default is \u003cstrong\u003e280 soft tokens\u003c/strong\u003e per image.\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth align=\"center\"\u003eSoft Tokens\u003c/th\u003e\n\u003cth align=\"center\"\u003ePatches (before pooling)\u003c/th\u003e\n\u003cth align=\"center\"\u003eApprox. Image Area\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd align=\"center\"\u003e70\u003c/td\u003e\n\u003ctd align=\"center\"\u003e630\u003c/td\u003e\n\u003ctd align=\"center\"\u003e~161K pixels\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd align=\"center\"\u003e140\u003c/td\u003e\n\u003ctd align=\"center\"\u003e1,260\u003c/td\u003e\n\u003ctd align=\"center\"\u003e~323K pixels\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd align=\"center\"\u003e\u003cstrong\u003e280\u003c/strong\u003e\u003c/td\u003e\n\u003ctd align=\"center\"\u003e\u003cstrong\u003e2,520\u003c/strong\u003e\u003c/td\u003e\n\u003ctd align=\"center\"\u003e\u003cstrong\u003e~645K pixels\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd align=\"center\"\u003e560\u003c/td\u003e\n\u003ctd align=\"center\"\u003e5,040\u003c/td\u003e\n\u003ctd align=\"center\"\u003e~1.3M pixels\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd align=\"center\"\u003e1,120\u003c/td\u003e\n\u003ctd align=\"center\"\u003e10,080\u003c/td\u003e\n\u003ctd align=\"center\"\u003e~2.6M pixels\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eTo encode positional information for each patch in the image, Gemma 4 uses a learned 2D position embedding table. The position table stores up to 10,240 positions per axis, which allows the model to handle very large images. Each position is a learned vector of the same dimensions as the patch embedding. The 2D RoPE which Gemma 4 uses independently rotate half the attention head dimensions for the x-axis and the other half for the y-axis. This allows the model to understand spatial relationships like \u0026quot;above,\u0026quot; \u0026quot;below,\u0026quot; \u0026quot;left of,\u0026quot; and \u0026quot;right of.\u0026quot;\u003c/p\u003e\n\u003ch3\u003eNomicBERT\u003c/h3\u003e\n\u003cp\u003eNomicBERT is a BERT-inspired encoder model that applies Rotary Position Embeddings (RoPE) to create reproducible long context text embeddings. It is the first fully reproducible, open-source text embedding model with 8192 context length that outperforms both OpenAI Ada-002 and OpenAI text-embedding-3-small on short-context MTEB and long context LoCo benchmarks. The model generates dense vector embeddings for various tasks including search, clustering, and classification using specific instruction prefixes.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/nomic_bert\"\u003eDocumentation\u003c/a\u003e | \u003ca href=\"https://arxiv.org/abs/2402.01613\"\u003ePaper\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eInternalise the NomicBERT model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/43067\"\u003e#43067\u003c/a\u003e) by \u003ca href=\"https://github.com/ed22699\"\u003e\u003ccode\u003e@​ed22699\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/43067\"\u003e#43067\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMusicFlamingo\u003c/h3\u003e\n\u003cp\u003eMusic Flamingo is a fully open large audio–language model designed for robust understanding and reasoning over music. It builds upon the Audio Flamingo 3 architecture by including Rotary Time Embeddings (RoTE), which injects temporal position information to enable the model to handle audio sequences up to 20 minutes. The model features a unified audio encoder across speech, sound, and music with special sound boundary tokens for improved audio sequence modeling.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/musicflamingo\"\u003eDocumentation\u003c/a\u003e | \u003ca href=\"https://huggingface.co/papers/2511.10289\"\u003ePaper\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Music Flamingo (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/43538\"\u003e#43538\u003c/a\u003e) by \u003ca href=\"https://github.com/lashahub\"\u003e\u003ccode\u003e@​lashahub\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/43538\"\u003e#43538\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/transformers/commit/c1c34249fa27deefbd4a377dfbf883a39baf5c6d\"\u003e\u003ccode\u003ec1c3424\u003c/code\u003e\u003c/a\u003e update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/20bff6865a756a074f5b893b57f0ae438b25ec46\"\u003e\u003ccode\u003e20bff68\u003c/code\u003e\u003c/a\u003e update release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/89564412a56ae6581f8aa48a533a835860dc9f43\"\u003e\u003ccode\u003e8956441\u003c/code\u003e\u003c/a\u003e v5.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5135e5efa7203cd23aac0866de12dfeef038422d\"\u003e\u003ccode\u003e5135e5e\u003c/code\u003e\u003c/a\u003e casually dropping the most capable open weights on the planet (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/45192\"\u003e#45192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/a594e09e3924120f1f5508e7d81946bf3504df2b\"\u003e\u003ccode\u003ea594e09\u003c/code\u003e\u003c/a\u003e Internalise the NomicBERT model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/43067\"\u003e#43067\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/4932e9721e230bea915341e7f04db32885b6c6af\"\u003e\u003ccode\u003e4932e97\u003c/code\u003e\u003c/a\u003e Fix resized LM head weights being overwritten by post_init (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/45079\"\u003e#45079\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/57e84139542c8c297873f35fcd25f66ffcf132ae\"\u003e\u003ccode\u003e57e8413\u003c/code\u003e\u003c/a\u003e [Qwen3.5 MoE] Add _tp_plan to ForConditionalGeneration (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/45124\"\u003e#45124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b10552e99dc4974b30126995baea455df43f8476\"\u003e\u003ccode\u003eb10552e\u003c/code\u003e\u003c/a\u003e Fix TypeError: 'NoneType' object is not iterable in GenerationMixin.generate ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/423f2a31d2bd05bdc1dc30dd938389edaa998fde\"\u003e\u003ccode\u003e423f2a3\u003c/code\u003e\u003c/a\u003e fix(models): Fix dtype mismatch in SwitchTransformers and TimmWrapperModel (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/ade7a05a42bf53b183bb78c181743be063c5ff14\"\u003e\u003ccode\u003eade7a05\u003c/code\u003e\u003c/a\u003e Generalize gemma vision mask to videos (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/45185\"\u003e#45185\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v4.57.6...v5.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `trl` from 0.23.1 to 1.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/trl/releases\"\u003etrl's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003eRead our \u003ca href=\"https://hf.co/blog/trl-v1\"\u003eblog post\u003c/a\u003e for an overview of TRL v1.\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003ch3\u003eAsynchronous GRPO\u003c/h3\u003e\n\u003cp\u003eAsynchronous GRPO decouples generation from the gradient update loop by offloading rollouts to an external vLLM server. Generation runs in parallel while training continues, eliminating idle GPU time and improving hardware utilization.\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003efrom trl.experimental.async_grpo import AsyncGRPOTrainer\r\nfrom trl.rewards import accuracy_reward\r\nfrom datasets import load_dataset\r\n\u003cp\u003edataset = load_dataset(\u0026quot;trl-lib/DeepMath-103K\u0026quot;, split=\u0026quot;train\u0026quot;)\u003c/p\u003e\n\u003cp\u003etrainer = AsyncGRPOTrainer(\nmodel=\u0026quot;Qwen/Qwen2.5-0.5B-Instruct\u0026quot;,\nreward_funcs=accuracy_reward,\ntrain_dataset=dataset,\n)\ntrainer.train()\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eby \u003ca href=\"https://github.com/qgallouedec\"\u003e\u003ccode\u003e@​qgallouedec\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/trl/pull/5293\"\u003ehuggingface/trl#5293\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eVariational Sequence-Level Soft Policy Optimization (VESPO)\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003ca href=\"https://huggingface.co/papers/2602.10693\"\u003eVESPO\u003c/a\u003e addresses training instability in off-policy RL caused by policy staleness, asynchronous updates, and train-inference mismatches. Rather than relying on heuristic token-level clipping (GRPO) or sequence-length normalization (GSPO), VESPO derives a principled reshaping kernel from a variational framework. In practice, this yields a smooth, asymmetric Gamma weighting function that gracefully suppresses extreme sequence-level importance weights without introducing length bias. It can be enabled via the \u003ccode\u003eloss_type\u003c/code\u003e parameter of \u003ccode\u003eGRPOConfig\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003efrom trl import GRPOConfig, GRPOTrainer\r\n\u003cp\u003etrainer = GRPOTrainer(\nmodel=\u0026quot;Qwen/Qwen3-0.6B\u0026quot;,\nargs=GRPOConfig(loss_type=\u0026quot;vespo\u0026quot;),\n...\n)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eby \u003ca href=\"https://github.com/casinca\"\u003e\u003ccode\u003e@​casinca\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/trl/pull/5199\"\u003ehuggingface/trl#5199\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eDivergence Proximal Policy Optimization (DPPO)\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/trl/commit/f3e9ac1005980fded7192682599c70749785fa9b\"\u003e\u003ccode\u003ef3e9ac1\u003c/code\u003e\u003c/a\u003e Release: v1.0 (\u003ca href=\"https://redirect.github.com/huggingface/trl/issues/5409\"\u003e#5409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/e8d5dfc0d2ea4d5f6fe4d9597b8bd45f3e393be6\"\u003e\u003ccode\u003ee8d5dfc\u003c/code\u003e\u003c/a\u003e Add second version of Qwen 3.5 chat template to chat_template_utils (\u003ca href=\"https://redirect.github.com/huggingface/trl/issues/5405\"\u003e#5405\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/71ff6a27a25eb411d6cd14702ac8ab91768f48e0\"\u003e\u003ccode\u003e71ff6a2\u003c/code\u003e\u003c/a\u003e Add HF_TOKEN environment variable to workflow files (\u003ca href=\"https://redirect.github.com/huggingface/trl/issues/5397\"\u003e#5397\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/1ee3975e5f92d6412a23c7fb72208f6585b09b64\"\u003e\u003ccode\u003e1ee3975\u003c/code\u003e\u003c/a\u003e Add vLLM inference to the Base Self-Distillation Trainer (\u003ca href=\"https://redirect.github.com/huggingface/trl/issues/5388\"\u003e#5388\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/79e6e7986880e80689c5d4cbb531127e427a1de2\"\u003e\u003ccode\u003e79e6e79\u003c/code\u003e\u003c/a\u003e Move \u003ccode\u003edisable_config=True\u003c/code\u003e from \u003ccode\u003egenerate\u003c/code\u003e to \u003ccode\u003eGenerationConfig\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/trl/issues/5384\"\u003e#5384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/83d68dd1287493710a124318f96885295e6ecc68\"\u003e\u003ccode\u003e83d68dd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003epr_template_check.yml\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/trl/issues/5393\"\u003e#5393\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/4cb7ab1cb8a431622bac10029030ac14f7271315\"\u003e\u003ccode\u003e4cb7ab1\u003c/code\u003e\u003c/a\u003e Enhance PR template check to exclude reopened PRs from first-time contributor...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/32a40bf9035a559a9e9961c976a31ef4733ac9dd\"\u003e\u003ccode\u003e32a40bf\u003c/code\u003e\u003c/a\u003e Enforce PR template for first-time contributors and document AI usage policy ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/8e69b68a1f6b9e7c5774315fa2174dc1ce7f0605\"\u003e\u003ccode\u003e8e69b68\u003c/code\u003e\u003c/a\u003e Mark test_rloo[fsdp2] as xfail for transformers 5.4.0 (\u003ca href=\"https://redirect.github.com/huggingface/trl/issues/5387\"\u003e#5387\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/c264266a3a60daded55dcae6a44b1bfc806442a4\"\u003e\u003ccode\u003ec264266\u003c/code\u003e\u003c/a\u003e Remove deprecated \u003ccode\u003eTRACKIO_SPACE_ID\u003c/code\u003e env var from all scripts (\u003ca href=\"https://redirect.github.com/huggingface/trl/issues/5365\"\u003e#5365\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/trl/compare/v0.23.1...v1.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `data-designer-engine` from 0.5.4 to 0.5.5\n\nUpdates `pandas` from 2.3.3 to 3.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pandas-dev/pandas/releases\"\u003epandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epandas 3.0.2\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 3.0.2.\nThis is a patch release in the 3.0.x series and includes some regression fixes and bug fixes. We recommend that all users of the 3.0.x series upgrade to this version.\u003c/p\u003e\n\u003cp\u003eSee the \u003ca href=\"https://pandas.pydata.org/docs/dev/whatsnew/v3.0.2.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\u003c/p\u003e\n\u003cp\u003ePandas 3.0 supports Python 3.11 and higher.\nThe release can be installed from PyPI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython -m pip install --upgrade pandas==3.0.*\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr from conda-forge\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge pandas=3.0\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePlease report any issues with the release on the \u003ca href=\"https://github.com/pandas-dev/pandas/issues\"\u003epandas issue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to all the contributors who made this release possible.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/ab90747e3dae0e69b1bdbf083820b8075689b34b\"\u003e\u003ccode\u003eab90747\u003c/code\u003e\u003c/a\u003e RLS: 3.0.2 (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64934\"\u003e#64934\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6f270137a27f8de4bd1afd7d71220e0760429750\"\u003e\u003ccode\u003e6f27013\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64931\"\u003e#64931\u003c/a\u003e on branch 3.0.x (DOC/BLD: temporary disable upload of docs...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/48ddc60d6efe8d942dbe1495dea725a9d7db15ef\"\u003e\u003ccode\u003e48ddc60\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64664\"\u003e#64664\u003c/a\u003e on branch 3.0.x (BUG: DataFrame.sum() crashes on empty Dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/8774488df19d0859ddc05a24210783b66da27ef7\"\u003e\u003ccode\u003e8774488\u003c/code\u003e\u003c/a\u003e [backport 3.0.x] PERF: fix slow python loop in validation for ArrowStringArra...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/33af6cc04ed6331c23a49655c4c7bb8f90351da3\"\u003e\u003ccode\u003e33af6cc\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64133\"\u003e#64133\u003c/a\u003e on branch 3.0.x (BUG: str.find returns byte offset instead...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/4ef49d815aae99b6ba5627ab0a54ba0819336652\"\u003e\u003ccode\u003e4ef49d8\u003c/code\u003e\u003c/a\u003e [backport 3.0.x] BUG: fix convert_dtypes dropping values from sliced mixed-dt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/0668f3451120e5552cdc8cf5d85f6d1238ce4e12\"\u003e\u003ccode\u003e0668f34\u003c/code\u003e\u003c/a\u003e [backport 3.0.x] BUG: Fix HDFStore.put with StringDtype columns and compressi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/23f2f442ea1af6deddfefef2a4a1e4cb44328c3d\"\u003e\u003ccode\u003e23f2f44\u003c/code\u003e\u003c/a\u003e [backport 3.0.x] BUG: Suppress unnecessary RuntimeWarning in to_datetime with...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/83ba804de35ec98798d31474d044cff7666bebd6\"\u003e\u003ccode\u003e83ba804\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64886\"\u003e#64886\u003c/a\u003e: BUG: Compute Variance of Complex Numbers Correctly (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64892\"\u003e#64892\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/bb5ca1a7a96130fa0e8e2a3987c051e4473f7792\"\u003e\u003ccode\u003ebb5ca1a\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64386\"\u003e#64386\u003c/a\u003e on branch 3.0.x (BUG: fix sort_index AssertionError with R...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.0.0...v3.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` to 9.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.0.2\u003c/h2\u003e\n\u003ch1\u003epytest 9.0.2 (2025-12-06)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13896\"\u003e#13896\u003c/a\u003e: The terminal progress feature added in pytest 9.0.0 has been disabled by default, except on Windows, due to compatibility issues with some terminal emulators.\u003c/p\u003e\n\u003cp\u003eYou may enable it again by passing \u003ccode\u003e-p terminalprogress\u003c/code\u003e. We may enable it by default again once compatibility improves in the future.\u003c/p\u003e\n\u003cp\u003eAdditionally, when the environment variable \u003ccode\u003eTERM\u003c/code\u003e is \u003ccode\u003edumb\u003c/code\u003e, the escape codes are no longer emitted, even if the plugin is enabled.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13904\"\u003e#13904\u003c/a\u003e: Fixed the TOML type of the \u003ccode\u003etmp_path_retention_count\u003c/code\u003e settings in the API reference from number to string.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13946\"\u003e#13946\u003c/a\u003e: The private \u003ccode\u003econfig.inicfg\u003c/code\u003e attribute was changed in a breaking manner in pytest 9.0.0.\nDue to its usage in the ecosystem, it is now restored to working order using a compatibility shim.\nIt will be deprecated in pytest 9.1 and removed in pytest 10.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13965\"\u003e#13965\u003c/a\u003e: Fixed quadratic-time behavior when handling \u003ccode\u003eunittest\u003c/code\u003e subtests in Python 3.10.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/4492\"\u003e#4492\u003c/a\u003e: The API Reference now contains cross-reference-able documentation of \u003ccode\u003epytest's command-line flags \u0026lt;command-line-flags\u0026gt;\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/pytest-dev/pytest/commit/3d10b5148e03eb82b3ee29181dbdc73cf82699e2\"\u003e\u003ccode\u003e3d10b51\u003c/code\u003e\u003c/a\u003e Prepare release version 9.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/188750b725add8c3400eee6fbb6b80559c296d69\"\u003e\u003ccode\u003e188750b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14030\"\u003e#14030\u003c/a\u003e from pytest-dev/patchback/backports/9.0.x/1e4b01d1f...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7d7bef90cb9a6db8ac1d3dd5b9ae0eb9abd6c58\"\u003e\u003ccode\u003eb7d7bef\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14014\"\u003e#14014\u003c/a\u003e from bluetech/compat-note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bd08e85ac76614ff5ca9ae338aee8d8b06c8fae0\"\u003e\u003ccode\u003ebd08e85\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14013\"\u003e#14013\u003c/a\u003e from pytest-dev/patchback/backports/9.0.x/922b60377...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bc783862991241c442c9f9c068e51737ec15ea10\"\u003e\u003ccode\u003ebc78386\u003c/code\u003e\u003c/a\u003e Add CLI options reference documentation (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13930\"\u003e#13930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/5a4e398ce89bc23d2cf3fd98c042fdffb6fa8afa\"\u003e\u003ccode\u003e5a4e398\u003c/code\u003e\u003c/a\u003e Fix docs typo (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14005\"\u003e#14005\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14008\"\u003e#14008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/d7ae6df394398168bf9d926f803c26849c8f07ee\"\u003e\u003ccode\u003ed7ae6df\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14006\"\u003e#14006\u003c/a\u003e from pytest-dev/maintenance/update-plugin-list-tmpl...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/556f6a22e12d13d1ffeceaf64424eb95d5e0fb87\"\u003e\u003ccode\u003e556f6a2\u003c/code\u003e\u003c/a\u003e pre-commit: fix rst-lint after new release (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13999\"\u003e#13999\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14001\"\u003e#14001\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c60fbe63a26f64a42738e3f3527a8f79024fdf50\"\u003e\u003ccode\u003ec60fbe6\u003c/code\u003e\u003c/a\u003e Fix quadratic-time behavior when handling \u003ccode\u003eunittest\u003c/code\u003e subtests in Python 3.10 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/73d9b011183d9a1c4a7007c1119d97a6e627788e\"\u003e\u003ccode\u003e73d9b01\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13995\"\u003e#13995\u003c/a\u003e from nicoddemus/patchback/backports/9.0.x/1b5200c0f...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/1.0.0b3...9.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-rerunfailures` from 15.1 to 16.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/blob/master/CHANGES.rst\"\u003epytest-rerunfailures's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e16.1 (2025-10-10)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eDrop support for Python 3.9.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eChanged \u0026quot;localhost\u0026quot; to \u0026quot;127.0.0.1\u0026quot; to avoid bad hostname resolution.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003e--force-reruns\u003c/code\u003e to override rerun count globally.\nFixes \u003ccode\u003e[#306](https://github.com/pytest-dev/pytest-rerunfailures/issues/306) \u0026lt;https://github.com/pytest-dev/pytest-rerunfailures/issues/306\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e16.0.1 (2025-09-02)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eReverted the ability to access error attributes because of an incompatibility\nwith \u003ccode\u003epytest-xdist \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/843\u0026gt;\u003c/code\u003e\u003cem\u003e.\nFixes \u003ccode\u003e[#302](https://github.com/pytest-dev/pytest-rerunfailures/issues/302) \u0026lt;https://github.com/pytest-dev/pytest-rerunfailures/issues/302\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#303](https://github.com/pytest-dev/pytest-rerunfailures/issues/303) \u0026lt;https://github.com/pytest-dev/pytest-rerunfailures/issues/303\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e16.0 (2025-08-29)\u003c/h2\u003e\n\u003cp\u003eBreaking changes\n++++++++++++++++\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for pytest \u0026lt; 8.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFeatures\n++++++++\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for pytest 8.4.x.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for upcoming Python 3.14.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAllow \u003ccode\u003e@pytest.mark.flaky(condition)\u003c/code\u003e to accept a callable or a string\nto be evaluated. The evaluated string has access to the exception instance\nvia the \u003ccode\u003eerror\u003c/code\u003e object.\n(\u003ccode\u003e[#230](https://github.com/pytest-dev/pytest-rerunfailures/issues/230) \u0026lt;https://github.com/pytest-dev/pytest-rerunfailures/issues/230\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/b01509200f8f782e5666011932886758a50a32c1\"\u003e\u003ccode\u003eb015092\u003c/code\u003e\u003c/a\u003e Preparing release 16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/c1666dd7e53e98228c6fe18f83d23bc3c6b71aa7\"\u003e\u003ccode\u003ec1666dd\u003c/code\u003e\u003c/a\u003e Prepare release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/8d04ad96399ccf16575e3395968e957552f98b98\"\u003e\u003ccode\u003e8d04ad9\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eNotImplementedError\u003c/code\u003e crash when using xdist schedulers without `mark_tes...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/cb8ede70437ef33a14e4fe2ed612f5f96883d6b2\"\u003e\u003ccode\u003ecb8ede7\u003c/code\u003e\u003c/a\u003e Add a \u003ccode\u003e--force-reruns\u003c/code\u003e to override rerun count globally (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-rerunfailures/issues/307\"\u003e#307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/5e011325322460d3340a5b60ddf7bd2f434ff6d0\"\u003e\u003ccode\u003e5e01132\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5 to 6 in the actions group (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-rerunfailures/issues/310\"\u003e#310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/88e002332ed92dad8d912f31cbd6d82bb8d6c4dd\"\u003e\u003ccode\u003e88e0023\u003c/code\u003e\u003c/a\u003e Drop support for Python 3.9. (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-rerunfailures/issues/308\"\u003e#308\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/df47974727f53b902df4545fc67b0e5862f17c2f\"\u003e\u003ccode\u003edf47974\u003c/code\u003e\u003c/a\u003e Change 'localhost' to '127.0.0.1' (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-rerunfailures/issues/305\"\u003e#305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/f149c7dcc7878b2d92b24f860e6e0ff88c7e3f1e\"\u003e\u003ccode\u003ef149c7d\u003c/code\u003e\u003c/a\u003e Back to development: 16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/f97618f95c630af28bbecacc83fc8715146bfa57\"\u003e\u003ccode\u003ef97618f\u003c/code\u003e\u003c/a\u003e Preparing release 16.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/c60d17dee372d5ad935d6da35c6e13ba2d34018d\"\u003e\u003ccode\u003ec60d17d\u003c/code\u003e\u003c/a\u003e Prepare release.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/compare/15.1...16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `scikit-learn` from 1.7.1 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/scikit-learn/scikit-learn/releases\"\u003escikit-learn's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 1.8.0\u003c/h2\u003e\n\u003cp\u003eWe're happy to announce the 1.8.0 release.\u003c/p\u003e\n\u003cp\u003eYou can read the release highlights under \u003ca href=\"https://scikit-learn.org/stable/auto_examples/release_highlights/plot_release_highlights_1_8_0.html\"\u003ehttps://scikit-learn.org/stable/auto_examples/release_highlights/plot_release_highlights_1_8_0.html\u003c/a\u003e and the long version of the change log under \u003ca href=\"https://scikit-learn.org/stable/whats_new/v1.8.html\"\u003ehttps://scikit-learn.org/stable/whats_new/v1.8.html\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis version supports Python versions 3.11 to 3.14 and features support of free-threaded CPython.\u003c/p\u003e\n\u003cp\u003eYou can upgrade with pip as usual:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epip install -U scikit-learn\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eThe conda-forge builds can be installed using:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge scikit-learn\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eScikit-learn 1.7.2\u003c/h2\u003e\n\u003cp\u003eWe're happy to announce the 1.7.2 release.\u003c/p\u003e\n\u003cp\u003eThis release contains a few bug fixes and is the first version supporting Python 3.14.\u003c/p\u003e\n\u003cp\u003eYou can see the changelog here: \u003ca href=\"https://scikit-learn.org/stable/whats_new/v1.7.html#version-1-7-2\"\u003ehttps://scikit-learn.org/stable/whats_new/v1.7.html#version-1-7-2\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eYou can upgrade with pip as usual:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epip install -U scikit-learn\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eThe conda-forge builds can be installed using:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge scikit-learn\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eThanks to everyone who contributed to this release !\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/scikit-learn/scikit-learn/commit/646da0f072a8afef6a980aa427a710311e67eb9d\"\u003e\u003ccode\u003e646da0f\u003c/code\u003e\u003c/a\u003e [cd build]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/4f4f2831de348859efc5d8298cbf37e212a1efac\"\u003e\u003ccode\u003e4f4f283\u003c/code\u003e\u003c/a\u003e Generate changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/967dcde6dae92a6f9eafa804b5d93e8fdfd08f26\"\u003e\u003ccode\u003e967dcde\u003c/code\u003e\u003c/a\u003e Set version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/cb1424bf0d548d6fa9fdef2f91bb00636f484f10\"\u003e\u003ccode\u003ecb1424b\u003c/code\u003e\u003c/a\u003e DOC Release highlights for 1.8 (\u003ca href=\"https://redirect.github.com/scikit-learn/scikit-learn/issues/32809\"\u003e#32809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/5645b27b985486d6b75bb75e4929faa4da574173\"\u003e\u003ccode\u003e5645b27\u003c/code\u003e\u003c/a\u003e :lock: :robot: CI Update lock files for main CI build(s) :lock: :robot: (\u003ca href=\"https://redirect.github.com/scikit-learn/scikit-learn/issues/32859\"\u003e#32859\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/6b9fb1189957962cd0e4988d137af312ad09008f\"\u003e\u003ccode\u003e6b9fb11\u003c/code\u003e\u003c/a\u003e :lock: :robot: CI Update lock files for free-threaded CI build(s) :lock: :rob...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/a0f6d88d05d52594785455b570ed142c912568e7\"\u003e\u003ccode\u003ea0f6d88\u003c/code\u003e\u003c/a\u003e :lock: :robot: CI Update lock files for array-api CI build(s) :lock: :robot: ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/c1de8fc595fce930c5ce1792faeab8d80a4fecc2\"\u003e\u003ccode\u003ec1de8fc\u003c/code\u003e\u003c/a\u003e FIX Make \u003ccode\u003eget_namespace\u003c/code\u003e handle pandas dataframe input (\u003ca href=\"https://redirect.github.com/scikit-learn/scikit-learn/issues/32838\"\u003e#32838\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/764249a255ba4110685a772836f06477c40cf8a3\"\u003e\u003ccode\u003e764249a\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003e_safe_indexing\u003c/code\u003e with non integer arrays on array API inputs (\u003ca href=\"https://redirect.github.com/scikit-learn/scikit-learn/issues/32840\"\u003e#32840\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/eca5e0ab2a16844c57fff675c2d017af2d8a570b\"\u003e\u003ccode\u003eeca5e0a\u003c/code\u003e\u003c/a\u003e FIX Add new default max_samples=None in Bagging estimators (\u003ca href=\"https://redirect.github.com/scikit-learn/scikit-learn/issues/32825\"\u003e#32825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/scikit-learn/scikit-learn/compare/1.7.1...1.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `datasets` from 4.3.0 ...\n\n_Description has been truncated_","html_url":"https://github.com/unslothai/unsloth-staging-1/pull/21","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/unslothai%2Funsloth-staging-1/issues/21","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/21/packages"},{"uuid":"4185949671","node_id":"PR_kwDOOTmIKM7PN8uv","number":49,"state":"open","title":"Bump setuptools-scm from 9.2.2 to 10.0.5","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-04-01T10:46:32.000Z","updated_at":"2026-04-01T10:49:38.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"setuptools-scm","old_version":"9.2.2","new_version":"10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Bumps [setuptools-scm](https://github.com/pypa/setuptools-scm) from 9.2.2 to 10.0.5.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAnchor \u003ccode\u003eget_version\u003c/code\u003e in \u003ccode\u003esetup.py\u003c/code\u003e with \u003ccode\u003erelative_to\u003c/code\u003e and \u003ccode\u003efallback_root\u003c/code\u003e so SCM fallbacks (e.g. \u003ccode\u003ePKG-INFO\u003c/code\u003e) do not resolve against the wrong directory when the build cwd is the workspace or repo root. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1302\"\u003e#1302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnter \u003ccode\u003eGlobalOverrides\u003c/code\u003e for \u003ccode\u003eSETUPTOOLS_SCM\u003c/code\u003e when using \u003ccode\u003esetuptools_scm.get_version\u003c/code\u003e / \u003ccode\u003e_get_version\u003c/code\u003e, avoiding implicit context warnings for direct API callers. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1314\"\u003e#1314\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade pre-commit hooks (Ruff, mypy, codespell), align locked Ruff with hooks, and add Ruff per-file configuration for setuptools_scm re-export modules. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1311\"\u003e#1311\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove monorepo-only \u003ccode\u003e../vcs-versioning/src\u003c/code\u003e from \u003ccode\u003ebuild-system.backend-path\u003c/code\u003e so sdists install under PEP 517 (paths must stay inside the source tree). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1306\"\u003e#1306\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003egriffecli\u003c/code\u003e to test dependencies so the API stability check keeps working after the Griffe CLI was split into a separate package. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1310\"\u003e#1310\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix version file not generated for editable installs. Version files are now written to the source tree by default during inference (restoring pre-10.x behavior), and also registered as \u003ccode\u003ebuild_py\u003c/code\u003e outputs so strict editable installs include them in the persistent auxiliary directory. Set \u003ccode\u003eSETUPTOOLS_SCM_WRITE_TO_SOURCE=0\u003c/code\u003e to disable source-tree writing (e.g., for read-only source directories). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1298\"\u003e#1298\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.1\u003c/h2\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSimplify release tag creation to use a single \u003ccode\u003ecreateRelease\u003c/code\u003e API call instead of separate \u003ccode\u003ecreateTag\u003c/code\u003e/\u003ccode\u003ecreateRef\u003c/code\u003e/\u003ccode\u003ecreateRelease\u003c/code\u003e calls, avoiding dangling tag objects on partial failures. (\u003ca href=\"https://github.com/pypa/setuptools-scm/issues/release-pipeline\"\u003e#release-pipeline\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.0\u003c/h2\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 and 3.9 support. Minimum Python version is now 3.10. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esetuptools-scm now depends on vcs-versioning for core version inference logic. This enables other build backends to use the same version inference without setuptools dependency. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eVersion files (\u003ccode\u003ewrite_to\u003c/code\u003e and \u003ccode\u003eversion_file\u003c/code\u003e) are now written to the build directory\nduring \u003ccode\u003ebuild_py\u003c/code\u003e instead of the source tree during version inference.\nThis enables installing packages from read-only source directories (e.g., Bazel builds).\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/v9.2.2...setuptools-scm-v10.0.5\"\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=setuptools-scm\u0026package-manager=pip\u0026previous-version=9.2.2\u0026new-version=10.0.5)](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/ssec-jhu/fim/pull/49","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ssec-jhu%2Ffim/issues/49","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/49/packages"},{"uuid":"4174470796","node_id":"PR_kwDOD385987Oxisk","number":3054,"state":"closed","title":"Bump the pip-deps group across 1 directory with 13 updates","user":"dependabot[bot]","labels":["major","bumpless"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-03-30T22:34:19.000Z","author_association":null,"state_reason":null,"created_at":"2026-03-30T22:32:23.000Z","updated_at":"2026-03-30T22:34:21.000Z","time_to_close":116,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"pip-deps","update_count":13,"packages":[{"name":"boto3","old_version":"1.42.46","new_version":"1.42.79","repository_url":"https://github.com/boto/boto3"},{"name":"asf-search","old_version":"11.0.3","new_version":"12.0.6","repository_url":"https://github.com/asfadmin/Discovery-asf_search"},{"name":"flask","old_version":"3.1.2","new_version":"3.1.3","repository_url":"https://github.com/pallets/flask"},{"name":"openapi-core","old_version":"0.22.0","new_version":"0.23.0","repository_url":"https://github.com/python-openapi/openapi-core"},{"name":"pyjwt","old_version":"2.12.0","new_version":"2.12.1","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"requests","old_version":"2.33.0","new_version":"2.33.1","repository_url":"https://github.com/psf/requests"},{"name":"moto","old_version":"5.1.21","new_version":"5.1.22","repository_url":"https://github.com/getmoto/moto"},{"name":"responses","old_version":"0.25.8","new_version":"0.26.0","repository_url":"https://github.com/getsentry/responses"},{"name":"ruff","old_version":"0.15.0","new_version":"0.15.8","repository_url":"https://github.com/astral-sh/ruff"},{"name":"setuptools","old_version":"82.0.0","new_version":"82.0.1","repository_url":"https://github.com/pypa/setuptools"},{"name":"setuptools-scm","old_version":"9.2.2","new_version":"10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"},{"name":"openapi-spec-validator","old_version":"0.7.2","new_version":"0.8.4","repository_url":"https://github.com/python-openapi/openapi-spec-validator"},{"name":"cfn-lint","old_version":"1.44.0","new_version":"1.47.1","repository_url":"https://github.com/aws-cloudformation/cfn-lint"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-deps group with 13 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [boto3](https://github.com/boto/boto3) | `1.42.46` | `1.42.79` |\n| [asf-search](https://github.com/asfadmin/Discovery-asf_search) | `11.0.3` | `12.0.6` |\n| [flask](https://github.com/pallets/flask) | `3.1.2` | `3.1.3` |\n| [openapi-core](https://github.com/python-openapi/openapi-core) | `0.22.0` | `0.23.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.12.0` | `2.12.1` |\n| [requests](https://github.com/psf/requests) | `2.33.0` | `2.33.1` |\n| [moto](https://github.com/getmoto/moto) | `5.1.21` | `5.1.22` |\n| [responses](https://github.com/getsentry/responses) | `0.25.8` | `0.26.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.0` | `0.15.8` |\n| [setuptools](https://github.com/pypa/setuptools) | `82.0.0` | `82.0.1` |\n| [setuptools-scm](https://github.com/pypa/setuptools-scm) | `9.2.2` | `10.0.5` |\n| [openapi-spec-validator](https://github.com/python-openapi/openapi-spec-validator) | `0.7.2` | `0.8.4` |\n| [cfn-lint](https://github.com/aws-cloudformation/cfn-lint) | `1.44.0` | `1.47.1` |\n\n\nUpdates `boto3` from 1.42.46 to 1.42.79\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/79b815be1d502ab09b61fa24f1f989688a34eab8\"\u003e\u003ccode\u003e79b815b\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.79'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b11c6f7427b3920c8a8e1e0c3d1da7bbcf350b6a\"\u003e\u003ccode\u003eb11c6f7\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.79\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/98fabce7eb69aefa313721c11293a7c1eef51bc6\"\u003e\u003ccode\u003e98fabce\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b5acf8b4da83625fe3a4bbc37f44d3563a90bedb\"\u003e\u003ccode\u003eb5acf8b\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.78'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/6b3713da80c9f7ca1477741de612c020e9403128\"\u003e\u003ccode\u003e6b3713d\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.78' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/1da17a5f5f168ca19917cb3b5c1389b1918c1a6e\"\u003e\u003ccode\u003e1da17a5\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.78\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/e298b6480047c39f047a9805ce5a69654eda2c2b\"\u003e\u003ccode\u003ee298b64\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/48369eaf9203ac46d0621f2a6506cbfa369c3cff\"\u003e\u003ccode\u003e48369ea\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.77'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/8c30411a442a21b8bccc9eb2fde60ab76751ef35\"\u003e\u003ccode\u003e8c30411\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.77' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/4398c8e0aee88fe1c5aacb415683e75ccde1b3a3\"\u003e\u003ccode\u003e4398c8e\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.77\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.42.46...1.42.79\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asf-search` from 11.0.3 to 12.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/releases\"\u003easf-search's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev12.0.6\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.5...v12.0.6\"\u003ev12.0.6\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e module added as top level module\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_nisar_orbit_ephemeras()\u003c/code\u003e method returns dictionary with latest \u003ccode\u003eNISAR\u003c/code\u003e \u003ccode\u003ePOE\u003c/code\u003e, \u003ccode\u003eMOE\u003c/code\u003e, \u003ccode\u003eNOE\u003c/code\u003e, and \u003ccode\u003eFOE\u003c/code\u003e orbit ephemeras\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix track based searches when \u003ccode\u003eprocessingLevel\u003c/code\u003e specified on \u003ccode\u003eNISAR\u003c/code\u003e dataset searches\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.5\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.4...v12.0.5\"\u003ev12.0.5\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDIST-ALERT-S1 product type to OPERA dataset\n\u003cul\u003e\n\u003cli\u003eTileID searchable attribute\u003c/li\u003e\n\u003cli\u003eproductVersion attribute\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix edge-case with \u003ccode\u003eplatform\u003c/code\u003e \u0026amp; \u003ccode\u003eprocessingLevel\u003c/code\u003e concept-id aliasing\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.3...v12.0.4\"\u003ev12.0.4\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003eNISAR\u003c/code\u003e dataset/platform concept-ids\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.2...v12.0.3\"\u003ev12.0.3\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eariaVersion\u003c/code\u003e as a searchable attribute\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eorbitType\u003c/code\u003e to \u003ccode\u003eNISARProduct\u003c/code\u003e properties dictionary\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.1...v12.0.2\"\u003ev12.0.2\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eNISAR\u003c/code\u003e product type constants for ancillary/aux products, now useable with \u003ccode\u003esearch()\u003c/code\u003e methods. New constants:\n\u003ccode\u003eDCOP\u003c/code\u003e,\n\u003ccode\u003eOROST\u003c/code\u003e,\n\u003ccode\u003eSTUF\u003c/code\u003e,\n\u003ccode\u003eTEC\u003c/code\u003e,\n\u003ccode\u003eLRCLK_UTC\u003c/code\u003e,\n\u003ccode\u003eFOE\u003c/code\u003e,\n\u003ccode\u003eMOE\u003c/code\u003e,\n\u003ccode\u003eNOE\u003c/code\u003e,\n\u003ccode\u003ePOE\u003c/code\u003e,\n\u003ccode\u003eTSR_STATIC\u003c/code\u003e,\n\u003ccode\u003ePMI_STATIC\u003c/code\u003e,\n\u003ccode\u003eCORNER_REFL\u003c/code\u003e,\n\u003ccode\u003eLSAR_INT_CAL\u003c/code\u003e,\n\u003ccode\u003eLSAR_EXT_CAL\u003c/code\u003e,\n\u003ccode\u003eFT_WAVEFORM\u003c/code\u003e,\n\u003ccode\u003eFT_PARAM\u003c/code\u003e,\n\u003ccode\u003eANTPAT\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/blob/master/CHANGELOG.md\"\u003easf-search's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.5...v12.0.6\"\u003ev12.0.6\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e module added as top level module\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_nisar_orbit_ephemeras()\u003c/code\u003e method returns dictionary with latest \u003ccode\u003eNISAR\u003c/code\u003e \u003ccode\u003ePOE\u003c/code\u003e, \u003ccode\u003eMOE\u003c/code\u003e, \u003ccode\u003eNOE\u003c/code\u003e, and \u003ccode\u003eFOE\u003c/code\u003e orbit ephemeras\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix track based searches when \u003ccode\u003eprocessingLevel\u003c/code\u003e specified on \u003ccode\u003eNISAR\u003c/code\u003e dataset searches\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.4...v12.0.5\"\u003ev12.0.5\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDIST-ALERT-S1 product type to OPERA dataset\n\u003cul\u003e\n\u003cli\u003eTileID searchable attribute\u003c/li\u003e\n\u003cli\u003eproductVersion attribute\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix edge-case with \u003ccode\u003eplatform\u003c/code\u003e \u0026amp; \u003ccode\u003eprocessingLevel\u003c/code\u003e concept-id aliasing\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.3...v12.0.4\"\u003ev12.0.4\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003eNISAR\u003c/code\u003e dataset/platform concept-ids\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.2...v12.0.3\"\u003ev12.0.3\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eariaVersion\u003c/code\u003e as a searchable attribute\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eorbitType\u003c/code\u003e to \u003ccode\u003eNISARProduct\u003c/code\u003e properties dictionary\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.1...v12.0.2\"\u003ev12.0.2\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eNISAR\u003c/code\u003e product type constants for ancillary/aux products, now useable with \u003ccode\u003esearch()\u003c/code\u003e methods. New constants:\n\u003ccode\u003eDCOP\u003c/code\u003e,\n\u003ccode\u003eOROST\u003c/code\u003e,\n\u003ccode\u003eSTUF\u003c/code\u003e,\n\u003ccode\u003eTEC\u003c/code\u003e,\n\u003ccode\u003eLRCLK_UTC\u003c/code\u003e,\n\u003ccode\u003eFOE\u003c/code\u003e,\n\u003ccode\u003eMOE\u003c/code\u003e,\n\u003ccode\u003eNOE\u003c/code\u003e,\n\u003ccode\u003ePOE\u003c/code\u003e,\n\u003ccode\u003eTSR_STATIC\u003c/code\u003e,\n\u003ccode\u003ePMI_STATIC\u003c/code\u003e,\n\u003ccode\u003eCORNER_REFL\u003c/code\u003e,\n\u003ccode\u003eLSAR_INT_CAL\u003c/code\u003e,\n\u003ccode\u003eLSAR_EXT_CAL\u003c/code\u003e,\n\u003ccode\u003eFT_WAVEFORM\u003c/code\u003e,\n\u003ccode\u003eFT_PARAM\u003c/code\u003e,\n\u003ccode\u003eANTPAT\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/asfadmin/Discovery-asf_search/commit/0f8226f7d7f36fcca5bb28d111636d6e7abbbfc8\"\u003e\u003ccode\u003e0f8226f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/440\"\u003e#440\u003c/a\u003e from asfadmin/feat-nisar-oe-helper\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/47e6593b8ee5530077022f43a0600e7c421350db\"\u003e\u003ccode\u003e47e6593\u003c/code\u003e\u003c/a\u003e feat: adds utils module with get_nisar_orbit_ephemeras() method.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/66fadbb5bc968acec0f095b565dccc244879c79e\"\u003e\u003ccode\u003e66fadbb\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/439\"\u003e#439\u003c/a\u003e from asfadmin/bug-nisar-track-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/95cc06762259f72db17381748091aa54eb658c72\"\u003e\u003ccode\u003e95cc067\u003c/code\u003e\u003c/a\u003e chore: update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/1f601edbe40ce14756c3c98cb853e35e8e5761c1\"\u003e\u003ccode\u003e1f601ed\u003c/code\u003e\u003c/a\u003e bug: fix regression with frame search\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/bb7dfaaae1dc35449a6e7369f3e7726d2969fb03\"\u003e\u003ccode\u003ebb7dfaa\u003c/code\u003e\u003c/a\u003e chore: add todo comment for nsiar frame bug\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/6ec9957bbff797283f820fd3f90dcab6cd1b0335\"\u003e\u003ccode\u003e6ec9957\u003c/code\u003e\u003c/a\u003e fix: fix track not working when only specificying nisar dataset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/3efaa2862ac61c9bd1fcbfcea6bca5d472f90656\"\u003e\u003ccode\u003e3efaa28\u003c/code\u003e\u003c/a\u003e test: update authenticated NISAR test case\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/3e3d5777440aaff9303a247dbfa8c7f3b5c04078\"\u003e\u003ccode\u003e3e3d577\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/437\"\u003e#437\u003c/a\u003e from asfadmin/feat-opera-dist\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/9e0f3e86acfd67a0483f3e01e3de2909ac64f5b5\"\u003e\u003ccode\u003e9e0f3e8\u003c/code\u003e\u003c/a\u003e fix: add tileID to search.py\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v11.0.3...v12.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flask` from 3.1.2 to 3.1.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/flask/releases\"\u003eflask's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.1.3\u003c/h2\u003e\n\u003cp\u003eThis is the Flask 3.1.3 security fix release, which fixes a security issue but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.\u003c/p\u003e\n\u003cp\u003ePyPI: \u003ca href=\"https://pypi.org/project/Flask/3.1.3/\"\u003ehttps://pypi.org/project/Flask/3.1.3/\u003c/a\u003e\nChanges: \u003ca href=\"https://flask.palletsprojects.com/page/changes/#version-3-1-3\"\u003ehttps://flask.palletsprojects.com/page/changes/#version-3-1-3\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe session is marked as accessed for operations that only access the keys but not the values, such as \u003ccode\u003ein\u003c/code\u003e and \u003ccode\u003elen\u003c/code\u003e. \u003ca href=\"https://github.com/pallets/flask/security/advisories/GHSA-68rp-wp8r-4726\"\u003eGHSA-68rp-wp8r-4726\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/flask/blob/main/CHANGES.rst\"\u003eflask's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.1.3\u003c/h2\u003e\n\u003cp\u003eReleased 2026-02-18\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe session is marked as accessed for operations that only access the keys\nbut not the values, such as \u003ccode\u003ein\u003c/code\u003e and \u003ccode\u003elen\u003c/code\u003e. :ghsa:\u003ccode\u003e68rp-wp8r-4726\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/22d924701a6ae2e4cd01e9a15bbaf3946094af65\"\u003e\u003ccode\u003e22d9247\u003c/code\u003e\u003c/a\u003e release version 3.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/089cb86dd22bff589a4eafb7ab8e42dc357623b4\"\u003e\u003ccode\u003e089cb86\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/c17f379390731543eea33a570a47bd4ef76a54fa\"\u003e\u003ccode\u003ec17f379\u003c/code\u003e\u003c/a\u003e request context tracks session access\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/27be9338405382445a7cb01151e084559b98d602\"\u003e\u003ccode\u003e27be933\u003c/code\u003e\u003c/a\u003e start version 3.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/4e652d3f68b90d50aa2301d3b7e68c3fafd9251d\"\u003e\u003ccode\u003e4e652d3\u003c/code\u003e\u003c/a\u003e Abort if the instance folder cannot be created (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5903\"\u003e#5903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/3d03098a97ddc6a908aa4a50c2ef7381f8297d0a\"\u003e\u003ccode\u003e3d03098\u003c/code\u003e\u003c/a\u003e Abort if the instance folder cannot be created\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/407eb76b27884848383a37c7274654f0271e4bc4\"\u003e\u003ccode\u003e407eb76\u003c/code\u003e\u003c/a\u003e document using gevent for async (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/ac5664d2281533eacafd64f5cc7d5edcdaccab60\"\u003e\u003ccode\u003eac5664d\u003c/code\u003e\u003c/a\u003e document using gevent for async\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/4f79d5b59a56bc4356a97f2e81a35f98cb18d7b3\"\u003e\u003ccode\u003e4f79d5b\u003c/code\u003e\u003c/a\u003e Increase required flit_core version to 3.11 (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5865\"\u003e#5865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/fe3b215d3ade4db68262dae1a3cdc464a1fc524f\"\u003e\u003ccode\u003efe3b215\u003c/code\u003e\u003c/a\u003e Increase required flit_core version to 3.11\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets/flask/compare/3.1.2...3.1.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `openapi-core` from 0.22.0 to 0.23.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python-openapi/openapi-core/releases\"\u003eopenapi-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.23.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd OpenAPI 3.2 support and move V3 aliases to V32 \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1121\"\u003e#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd opt-in strict mode for omitted additionalProperties \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1124\"\u003e#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd explicit Falcon WSGI/ASGI middleware with dual-mode compatibility \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1122\"\u003e#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd structured details for validation errors \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1129\"\u003e#1129\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDialect-aware schema validators factory \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1135\"\u003e#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport parameter casting in composite schemas \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1136\"\u003e#1136\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken contributing guidelines link \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1098\"\u003e#1098\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix swapped operation/path order in request-parameters flows \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1120\"\u003e#1120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix deprecation warnings for omitted params and headers \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1125\"\u003e#1125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInclude root cause in request body validation errors \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1128\"\u003e#1128\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eUpgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDjango 6 support \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1103\"\u003e#1103\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade jsonschema-path 0.4 openapi-schema-validator 0.7 and openapi-spec-validator 0.8 \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1105\"\u003e#1105\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBackward incompatibilities\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.9 support dropped \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1091\"\u003e#1091\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eV3 aliases point to V32 \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1121\"\u003e#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove deprecated Spec \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1002\"\u003e#1002\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.23.0b1\u003c/h2\u003e\n\u003ch2\u003eUpgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade jsonschema-path 0.4.0b8 and openapi-spec-validator 0.8.0b3 \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1002\"\u003e#1002\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken contributing guidelines link \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1098\"\u003e#1098\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBackward incompatibilities\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.9 support dropped \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1091\"\u003e#1091\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/520650b97d9fa02f15edeee4cc3f13a91980de68\"\u003e\u003ccode\u003e520650b\u003c/code\u003e\u003c/a\u003e Version 0.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/beec2f2a5ef5cffe1a020095d5e24e79f4c809ad\"\u003e\u003ccode\u003ebeec2f2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1138\"\u003e#1138\u003c/a\u003e from python-openapi/dependabot/pip/openapi-spec-vali...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/b6be01025df31aa93cf19c8e9aa6c833aca254b5\"\u003e\u003ccode\u003eb6be010\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1137\"\u003e#1137\u003c/a\u003e from python-openapi/dependabot/pip/markdown-3.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/408242af08ff378b7f32bde7cf5a3aaf1c9b7295\"\u003e\u003ccode\u003e408242a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1139\"\u003e#1139\u003c/a\u003e from python-openapi/dependabot/pip/mkdocs-material-9...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/9bcbf2fd11e6d759ae28b735b066aaa4f611ba41\"\u003e\u003ccode\u003e9bcbf2f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1140\"\u003e#1140\u003c/a\u003e from python-openapi/dependabot/pip/pytest-9.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/2cfefe40310e0a636bd54a2bae65e35582dc55b2\"\u003e\u003ccode\u003e2cfefe4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1141\"\u003e#1141\u003c/a\u003e from python-openapi/dependabot/pip/tornado-6.5.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/ca92806f3fc5e6976aac6b504c7e480b1937f59b\"\u003e\u003ccode\u003eca92806\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1136\"\u003e#1136\u003c/a\u003e from python-openapi/fix/composite-schema-casting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/4a57f278f902634e4dd8913c1f94ff7ed771cca9\"\u003e\u003ccode\u003e4a57f27\u003c/code\u003e\u003c/a\u003e Bump tornado from 6.5.4 to 6.5.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/81ff1c6e139aa61c911be6adabd1c8144143284d\"\u003e\u003ccode\u003e81ff1c6\u003c/code\u003e\u003c/a\u003e Bump pytest from 8.4.2 to 9.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/480a3622bdfbc85d899873fed0a991b1ff9c73cf\"\u003e\u003ccode\u003e480a362\u003c/code\u003e\u003c/a\u003e Bump mkdocs-material from 9.7.3 to 9.7.4\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python-openapi/openapi-core/compare/0.22.0...0.23.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyjwt` from 2.12.0 to 2.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jpadilla/pyjwt/releases\"\u003epyjwt's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.12.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd typing_extensions dependency for Python \u0026lt; 3.11 by \u003ca href=\"https://github.com/jpadilla\"\u003e\u003ccode\u003e@​jpadilla\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jpadilla/pyjwt/pull/1151\"\u003ejpadilla/pyjwt#1151\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1\"\u003ehttps://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jpadilla/pyjwt/blob/master/CHANGELOG.rst\"\u003epyjwt's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003ev2.12.1 \u0026lt;https://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1\u0026gt;\u003c/code\u003e__\u003c/h2\u003e\n\u003cp\u003eFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Add missing ``typing_extensions`` dependency for Python \u0026lt; 3.11 in `[#1150](https://github.com/jpadilla/pyjwt/issues/1150) \u0026lt;https://github.com/jpadilla/pyjwt/issues/1150\u0026gt;`__\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jpadilla/pyjwt/commit/a4e1a3d1218b01c5806420b8f16d9308ac4adc30\"\u003e\u003ccode\u003ea4e1a3d\u003c/code\u003e\u003c/a\u003e Add typing_extensions dependency for Python \u0026lt; 3.11 (\u003ca href=\"https://redirect.github.com/jpadilla/pyjwt/issues/1151\"\u003e#1151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.33.0 to 2.33.1\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.33.1\u003c/h2\u003e\n\u003ch2\u003e2.33.1 (2026-03-30)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed test cleanup for CVE-2026-25645 to avoid leaving unnecessary\nfiles in the tmp directory. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed Content-Type header parsing for malformed values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved error consistency for malformed header values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\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/ferdnyc\"\u003e\u003ccode\u003e@​ferdnyc\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7277\"\u003epsf/requests#7277\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#2331-2026-03-30\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2331-2026-03-30\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/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.33.1 (2026-03-30)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed test cleanup for CVE-2026-25645 to avoid leaving unnecessary\nfiles in the tmp directory. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed Content-Type header parsing for malformed values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved error consistency for malformed header values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\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/psf/requests/commit/111d2b77790bf49943c0dfa09b365371c24aec7e\"\u003e\u003ccode\u003e111d2b7\u003c/code\u003e\u003c/a\u003e v2.33.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/f0198e6dfc431a2293dc16e1b1e8fcddc910a7f3\"\u003e\u003ccode\u003ef0198e6\u003c/code\u003e\u003c/a\u003e Fix malformed value parsing for Content-Type (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/bc7dd0fc4d56e808bcdd85ac2d797b3107c89259\"\u003e\u003ccode\u003ebc7dd0f\u003c/code\u003e\u003c/a\u003e Fix cosmetic header validity parsing regex (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4443b1a847b190010c2972a658924b98b5db6360\"\u003e\u003ccode\u003e4443b1a\u003c/code\u003e\u003c/a\u003e Fix unintended test extra (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7306\"\u003e#7306\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/389eea58dfb2f2ee096421a812e3af29c0298951\"\u003e\u003ccode\u003e389eea5\u003c/code\u003e\u003c/a\u003e Cleanup extracted file after extract_zipped_path test (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7407309c8a8a73aa2f4337184025d440bbedab7a\"\u003e\u003ccode\u003e7407309\u003c/code\u003e\u003c/a\u003e Packaging: DRY out extras definition (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7277\"\u003e#7277\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/psf/requests/compare/v2.33.0...v2.33.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `moto` from 5.1.21 to 5.1.22\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getmoto/moto/blob/master/CHANGELOG.md\"\u003emoto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.1.22\u003c/h2\u003e\n\u003cp\u003eDocker Digest for 5.1.22: \u003cem\u003esha256:1e3802c95726373544967b428201c548f0247c15b00db2d96a5ba0a77d8643b8\u003c/em\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew Methods:\n    * APIGateway:\n        * delete_model()\n\u003cpre\u003e\u003ccode\u003e* Athena:\n    * tag_resource()\n    * untag_resource()\n\n* Pipes:\n    * list_tags_for_resource()\n\n* OSIS:\n    * delete_resource_policy()\n    * get_resource_policy()\n    * put_resource_policy()\n\n* RDS:\n    * copy_db_cluster_parameter_group()\n\n* STS:\n    * get_access_key_info()\n\n* Transfer:\n    * list_servers()\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eMiscellaneous:\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::CloudWatch::Dashboard resources\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::KMS::Alias resources\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::SSM::Document resources\u003cbr /\u003e\n* EC2: create_fleet() now supports the parameters DryRun and LaunchTemplateConfigs.Overrides\u003cbr /\u003e\n* EC2: describe_network_interfaces() now supports the 'attachment.attachment-id'-filter\u003cbr /\u003e\n* EC2: Instances created from a LaunchTemplate now have the 'aws:ec2launchtemplate:id' and 'aws:ec2launchtemplate:version' tags\u003cbr /\u003e\n* RDS: create_db_cluster_parameter_group() now validates the provided group name/description/familiy\u003cbr /\u003e\n* RDS: delete_db_cluster_parameter_group() now validates that the provided group exists\u003cbr /\u003e\n* S3: delete_object() now supports IfMatch\u003cbr /\u003e\n* SecretsManager: create-secret() now throw ResourceExistsException for duplicate requests with different token (broken since 5.1.11)\u003cbr /\u003e\n* SQS: send_message() now returns the SequenceNumber-attribute\u003cbr /\u003e\n* VPCLattice: list_access_log_subscriptions() now also supports arns as resourceIdentifiers\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\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/getmoto/moto/commit/28d5ca88d9df9ce3e94e2e8b1f1c584646339e61\"\u003e\u003ccode\u003e28d5ca8\u003c/code\u003e\u003c/a\u003e Pre-Release: Up Version Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/f58dc186374dcf3cd1282f4a5998fedfa2b658a9\"\u003e\u003ccode\u003ef58dc18\u003c/code\u003e\u003c/a\u003e Prep release 5.1.22 (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/84cbb40725122bf252b766a0f601358bedcad6d1\"\u003e\u003ccode\u003e84cbb40\u003c/code\u003e\u003c/a\u003e chore: update SSM default parameters (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9828\"\u003e#9828\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/2f32dc1e3d25998340e1e59fc1145b3f1afc4b55\"\u003e\u003ccode\u003e2f32dc1\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9827\"\u003e#9827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/2a1c7ca7259747d1792dfa055b8433d313af581e\"\u003e\u003ccode\u003e2a1c7ca\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Offerings (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9826\"\u003e#9826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/e063c5a0e91c8afb49e2ccde47ff07c9448db09c\"\u003e\u003ccode\u003ee063c5a\u003c/code\u003e\u003c/a\u003e chore: update EMR Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/681b47aab458d90a8deb4ddbe86ef26695526218\"\u003e\u003ccode\u003e681b47a\u003c/code\u003e\u003c/a\u003e API Gateway: implement DeleteModel operation (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9823\"\u003e#9823\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/d652e4ad38ab382e32ab61cf2b319d033cfb6f4a\"\u003e\u003ccode\u003ed652e4a\u003c/code\u003e\u003c/a\u003e STS: implement GetAccessKeyInfo operation (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/40a65202b922fd78c4f4724f34f03cdc1172377d\"\u003e\u003ccode\u003e40a6520\u003c/code\u003e\u003c/a\u003e Implement Athena \u003ccode\u003eTagResource\u003c/code\u003e and \u003ccode\u003eUntagResource\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9796\"\u003e#9796\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/dc425e8b3d56b7ad84bf9d2820ae89e72d10a4a9\"\u003e\u003ccode\u003edc425e8\u003c/code\u003e\u003c/a\u003e Modernize Java tests (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9817\"\u003e#9817\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getmoto/moto/compare/5.1.21...5.1.22\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `responses` from 0.25.8 to 0.26.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/responses/releases\"\u003eresponses's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.26.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWhen using \u003ccode\u003eassert_all_requests_are_fired=True\u003c/code\u003e, assertions about\nunfired requests are now raised even when an exception occurs in the context manager or\ndecorated function. Previously, these assertions were suppressed when exceptions occurred.\nThis new behavior provides valuable debugging context about which mocked requests were\nor weren't called.\u003c/li\u003e\n\u003cli\u003eConsider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/responses/blob/master/CHANGES\"\u003eresponses's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.26.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWhen using \u003ccode\u003eassert_all_requests_are_fired=True\u003c/code\u003e, assertions about\nunfired requests are now raised even when an exception occurs in the context manager or\ndecorated function. Previously, these assertions were suppressed when exceptions occurred.\nThis new behavior provides valuable debugging context about which mocked requests were\nor weren't called.\u003c/li\u003e\n\u003cli\u003eConsider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/94913d0580377591350e69732df72f946d77b8c5\"\u003e\u003ccode\u003e94913d0\u003c/code\u003e\u003c/a\u003e release: 0.26.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/051b79e7fc9f5209fd351ee20288640a8fcd2265\"\u003e\u003ccode\u003e051b79e\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eassert_all_requests_are_fired\u003c/code\u003e always assert on exception (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/782\"\u003e#782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/0905cb8bd56b78f4d735d6db28ee4f12386ba4e8\"\u003e\u003ccode\u003e0905cb8\u003c/code\u003e\u003c/a\u003e Fix query_param_matcher not matching empty query parameter values (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/787\"\u003e#787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/e0c6faab419f902d6b646a902b7049196d64f68c\"\u003e\u003ccode\u003ee0c6faa\u003c/code\u003e\u003c/a\u003e ci(release): Switch from action-prepare-release to Craft (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/785\"\u003e#785\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/1be3a737b70a34d7f6a68a6f385c88af1f3e2df8\"\u003e\u003ccode\u003e1be3a73\u003c/code\u003e\u003c/a\u003e fix: Consider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/784\"\u003e#784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/c6730fbc87bf397c7fc798ec7573e6089ba877b6\"\u003e\u003ccode\u003ec6730fb\u003c/code\u003e\u003c/a\u003e Merge branch 'release/0.25.8'\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/getsentry/responses/compare/0.25.8...0.26.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.15.0 to 0.15.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.8\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-26.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003eunnecessary-if\u003c/code\u003e (\u003ccode\u003eRUF050\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24114\"\u003e#24114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003euseless-finally\u003c/code\u003e (\u003ccode\u003eRUF072\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24165\"\u003e#24165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003ef-string-percent-format\u003c/code\u003e (\u003ccode\u003eRUF073\u003c/code\u003e): warn when using \u003ccode\u003e%\u003c/code\u003e operator on an f-string (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24162\"\u003e#24162\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Recognize \u003ccode\u003efrozendict\u003c/code\u003e as a builtin for Python 3.15+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24100\"\u003e#24100\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] Use fully-qualified \u003ccode\u003eanyio.lowlevel\u003c/code\u003e import in autofix (\u003ccode\u003eASYNC115\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24166\"\u003e#24166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Check tuple arguments for partial paths in \u003ccode\u003eS607\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24080\"\u003e#24080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Skip \u003ccode\u003eundefined-name\u003c/code\u003e (\u003ccode\u003eF821\u003c/code\u003e) for conditionally deleted variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24088\"\u003e#24088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eE501\u003c/code\u003e/\u003ccode\u003eW505\u003c/code\u003e/formatter: Exclude nested pragma comments from line width calculation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24071\"\u003e#24071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e%foo?\u003c/code\u003e parsing in IPython assignment expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24152\"\u003e#24152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eanalyze graph\u003c/code\u003e: resolve string imports that reference attributes, not just modules (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24058\"\u003e#24058\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eeradicate\u003c/code\u003e] ignore \u003ccode\u003ety: ignore\u003c/code\u003e comments in \u003ccode\u003eERA001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24192\"\u003e#24192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Treat \u003ccode\u003esys.executable\u003c/code\u003e as trusted input in \u003ccode\u003eS603\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24106\"\u003e#24106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Recognize \u003ccode\u003eSelf\u003c/code\u003e annotation and \u003ccode\u003eself\u003c/code\u003e assignment in \u003ccode\u003eSLF001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24144\"\u003e#24144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] \u003ccode\u003eF507\u003c/code\u003e: Fix false negative for non-tuple RHS in \u003ccode\u003e%\u003c/code\u003e-formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24142\"\u003e#24142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Parenthesize generator arguments in \u003ccode\u003eFURB142\u003c/code\u003e fixer (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24200\"\u003e#24200\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up diagnostic rendering (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24146\"\u003e#24146\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWarn when Markdown files are skipped due to preview being disabled (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24150\"\u003e#24150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eClarify \u003ccode\u003eextend-ignore\u003c/code\u003e and \u003ccode\u003eextend-select\u003c/code\u003e settings documentation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24064\"\u003e#24064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMention AI policy in PR template (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24198\"\u003e#24198\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse trusted publishing for NPM packages (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24171\"\u003e#24171\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/bitloi\"\u003e\u003ccode\u003e@​bitloi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Sim-hu\"\u003e\u003ccode\u003e@​Sim-hu\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.15.8\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-26.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003eunnecessary-if\u003c/code\u003e (\u003ccode\u003eRUF050\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24114\"\u003e#24114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003euseless-finally\u003c/code\u003e (\u003ccode\u003eRUF072\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24165\"\u003e#24165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003ef-string-percent-format\u003c/code\u003e (\u003ccode\u003eRUF073\u003c/code\u003e): warn when using \u003ccode\u003e%\u003c/code\u003e operator on an f-string (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24162\"\u003e#24162\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Recognize \u003ccode\u003efrozendict\u003c/code\u003e as a builtin for Python 3.15+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24100\"\u003e#24100\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] Use fully-qualified \u003ccode\u003eanyio.lowlevel\u003c/code\u003e import in autofix (\u003ccode\u003eASYNC115\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24166\"\u003e#24166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Check tuple arguments for partial paths in \u003ccode\u003eS607\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24080\"\u003e#24080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Skip \u003ccode\u003eundefined-name\u003c/code\u003e (\u003ccode\u003eF821\u003c/code\u003e) for conditionally deleted variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24088\"\u003e#24088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eE501\u003c/code\u003e/\u003ccode\u003eW505\u003c/code\u003e/formatter: Exclude nested pragma comments from line width calculation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24071\"\u003e#24071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e%foo?\u003c/code\u003e parsing in IPython assignment expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24152\"\u003e#24152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eanalyze graph\u003c/code\u003e: resolve string imports that reference attributes, not just modules (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24058\"\u003e#24058\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eeradicate\u003c/code\u003e] ignore \u003ccode\u003ety: ignore\u003c/code\u003e comments in \u003ccode\u003eERA001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24192\"\u003e#24192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Treat \u003ccode\u003esys.executable\u003c/code\u003e as trusted input in \u003ccode\u003eS603\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24106\"\u003e#24106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Recognize \u003ccode\u003eSelf\u003c/code\u003e annotation and \u003ccode\u003eself\u003c/code\u003e assignment in \u003ccode\u003eSLF001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24144\"\u003e#24144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] \u003ccode\u003eF507\u003c/code\u003e: Fix false negative for non-tuple RHS in \u003ccode\u003e%\u003c/code\u003e-formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24142\"\u003e#24142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Parenthesize generator arguments in \u003ccode\u003eFURB142\u003c/code\u003e fixer (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24200\"\u003e#24200\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up diagnostic rendering (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24146\"\u003e#24146\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWarn when Markdown files are skipped due to preview being disabled (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24150\"\u003e#24150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eClarify \u003ccode\u003eextend-ignore\u003c/code\u003e and \u003ccode\u003eextend-select\u003c/code\u003e settings documentation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24064\"\u003e#24064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMention AI policy in PR template (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24198\"\u003e#24198\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse trusted publishing for NPM packages (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24171\"\u003e#24171\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/bitloi\"\u003e\u003ccode\u003e@​bitloi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Sim-hu\"\u003e\u003ccode\u003e@​Sim-hu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\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/c2a8815842f9dc5d24ec19385eae0f1a7188b0d9\"\u003e\u003ccode\u003ec2a8815\u003c/code\u003e\u003c/a\u003e Release 0.15.8 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24217\"\u003e#24217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d444d52e2b9cc8bc9a078c2bd4ff6ff993290209\"\u003e\u003ccode\u003ed444d52\u003c/code\u003e\u003c/a\u003e [ty] Infer lambda expressions with \u003ccode\u003eCallable\u003c/code\u003e type context (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/22633\"\u003e#22633\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/9622285ed0081fc688149f6efca87f127d9b18dd\"\u003e\u003ccode\u003e9622285\u003c/code\u003e\u003c/a\u003e [ty] Autocomplete arguments if in arguments node (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24167\"\u003e#24167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d81266252aaf0820346d55edbed79c4f25ba13d2\"\u003e\u003ccode\u003ed812662\u003c/code\u003e\u003c/a\u003e Use the \u003ccode\u003erelease\u003c/code\u003e environment in \u003ccode\u003epublish-docs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24214\"\u003e#24214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/eda2355832f7a9c58aef6febd3e061dc9c87509a\"\u003e\u003ccode\u003eeda2355\u003c/code\u003e\u003c/a\u003e [ty] Show \u003ccode\u003eFinal\u003c/code\u003e source in final assignment diagnostic (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24194\"\u003e#24194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/929eb5238c82bfadad4549ff526f02efc0163dd0\"\u003e\u003ccode\u003e929eb52\u003c/code\u003e\u003c/a\u003e [ty] Enforce Final attribute assignment rules for annotated and augmented wri...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/34998be22ec3a77d398bbd55234ef8740f768329\"\u003e\u003ccode\u003e34998be\u003c/code\u003e\u003c/a\u003e [ty] Fix typo in comment (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24211\"\u003e#24211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/560aca0b2828ee2ff1b4bcc5c5ef1ef4ced229d2\"\u003e\u003ccode\u003e560aca0\u003c/code\u003e\u003c/a\u003e [ty] Minor simplifications to some benchmark code (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24209\"\u003e#24209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/683bae512d03d3727a7bcdbc5a0170dafa049583\"\u003e\u003ccode\u003e683bae5\u003c/code\u003e\u003c/a\u003e [ty] Track non-terminal-call constraints in global scope (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23245\"\u003e#23245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/4704c2a4ff3dde2fd29324346720e9516b4fe387\"\u003e\u003ccode\u003e4704c2a\u003c/code\u003e\u003c/a\u003e [ty] Remove unnecessary intermediate collection in `StaticClassLiteral::field...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.15.0...0.15.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools` from 82.0.0 to 82.0.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools/blob/main/NEWS.rst\"\u003esetuptools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ev82.0.1\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the loading of \u003ccode\u003elauncher manifest.xml\u003c/code\u003e file. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5047\"\u003e#5047\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplaced deprecated \u003ccode\u003ejson.__version__\u003c/code\u003e with fixture in tests. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5186\"\u003e#5186\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd advice about how to improve predictability when installing sdists. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5168\"\u003e#5168\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4941\"\u003e#4941\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\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/pypa/setuptools/commit/5a13876673a41e3cd21d4d6e587f53d0fb4fd8e5\"\u003e\u003ccode\u003e5a13876\u003c/code\u003e\u003c/a\u003e Bump version: 82.0.0 → 82.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/51ab8f183f1c4112675d8d6ec6b004406d518ee8\"\u003e\u003ccode\u003e51ab8f1\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5194\"\u003e#5194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/f9c37b20bb0ed11203f676f9683452a4c3ace6f6\"\u003e\u003ccode\u003ef9c37b2\u003c/code\u003e\u003c/a\u003e Docs/CI: Fix intersphinx references (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5195\"\u003e#5195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/8173db2a4fc0f6cb28926b3dba59116b79f435c8\"\u003e\u003ccode\u003e8173db2\u003c/code\u003e\u003c/a\u003e Docs: Fix intersphinx references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/09bafbc74923f2a3591b5b098be75d6af6ca5141\"\u003e\u003ccode\u003e09bafbc\u003c/code\u003e\u003c/a\u003e Fix past tense on newsfragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/461ea56c8e629819a23920f44d9298d4f041abde\"\u003e\u003ccode\u003e461ea56\u003c/code\u003e\u003c/a\u003e Add news fragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/c4ffe535b58235ff9f9ebe90d24a2cffb57e70ae\"\u003e\u003ccode\u003ec4ffe53\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/749258b1a96c7accc05ea7d842fb19fc378866fe\"\u003e\u003ccode\u003e749258b\u003c/code\u003e\u003c/a\u003e Cleanup \u003ccode\u003epkg_resources\u003c/code\u003e dependencies and configuration (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/2019c16701667db1010c62ec11c6ef78c2e58206\"\u003e\u003ccode\u003e2019c16\u003c/code\u003e\u003c/a\u003e Parse \u003ccode\u003eext-module.define-macros\u003c/code\u003e from \u003ccode\u003epyproject.toml\u003c/code\u003e as list of tuples (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/b809c86a37d97fcce290d5f51d4c293ab40bc685\"\u003e\u003ccode\u003eb809c86\u003c/code\u003e\u003c/a\u003e Sync setuptools schema with validate-pyproject (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools/compare/v82.0.0...v82.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools-scm` from 9.2.2 to 10.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAnchor \u003ccode\u003eget_version\u003c/code\u003e in \u003ccode\u003esetup.py\u003c/code\u003e with \u003ccode\u003erelative_to\u003c/code\u003e and \u003ccode\u003efallback_root\u003c/code\u003e so SCM fallbacks (e.g. \u003ccode\u003ePKG-INFO\u003c/code\u003e) do not resolve against the wrong directory when the build cwd is the workspace or repo root. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1302\"\u003e#1302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnter \u003ccode\u003eGlobalOverrides\u003c/code\u003e for \u003ccode\u003eSETUPTOOLS_SCM\u003c/code\u003e when using \u003ccode\u003esetuptools_scm.get_version\u003c/code\u003e / \u003ccode\u003e_get_version\u003c/code\u003e, avoiding implicit context warnings for direct API callers. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1314\"\u003e#1314\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade pre-commit hooks (Ruff, mypy, codespell), align locked Ruff with hooks, and add Ruff per-file configuration for setuptools_scm re-export modules. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1311\"\u003e#1311\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove monorepo-only \u003ccode\u003e../vcs-versioning/src\u003c/code\u003e from \u003ccode\u003ebuild-system.backend-path\u003c/code\u003e so sdists install under PEP 517 (paths must stay inside the source tree). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1306\"\u003e#1306\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003egriffecli\u003c/code\u003e to test dependencies so the API stability check keeps working after the Griffe CLI was split into a separate package. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1310\"\u003e#1310\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix version file not generated for editable installs. Version files are now written to the source tree by default during inference (restoring pre-10.x behavior), and also registered as \u003ccode\u003ebuild_py\u003c/code\u003e outputs so strict editable installs include them in the persistent auxiliary directory. Set \u003ccode\u003eSETUPTOOLS_SCM_WRITE_TO_SOURCE=0\u003c/code\u003e to disable source-tree writing (e.g., for read-only source directories). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1298\"\u003e#1298\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.1\u003c/h2\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSimplify release tag creation to use a single \u003ccode\u003ecreateRelease\u003c/code\u003e API call instead of separate \u003ccode\u003ecreateTag\u003c/code\u003e/\u003ccode\u003ecreateRef\u003c/code\u003e/\u003ccode\u003ecreateRelease\u003c/code\u003e calls, avoiding dangling tag objects on partial failures. (\u003ca href=\"https://github.com/pypa/setuptools-scm/issues/release-pipeline\"\u003e#release-pipeline\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.0\u003c/h2\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 and 3.9 support. Minimum Python version is now 3.10. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esetuptools-scm now depends on vcs-versioning for core version inference logic. This enables other build backends to use the same version inference without setuptools dependency. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eVersion files (\u003ccode\u003ewrite_to\u003c/code\u003e and \u003ccode\u003eversion_file\u003c/code\u003e) are now written to the build directory\nduring \u003ccode\u003ebuild_py\u003c/code\u003e instead of the source tree during version inference.\nThis enables installing packages from read-only source directories (e.g., Bazel builds).\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/v9.2.2...setuptools-scm-v10.0.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `openapi-spec-validator` from 0.7.2 to 0.8.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/releases\"\u003eopenapi-spec-validator's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.8.4\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eJsonschema-rs backend \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/478\"\u003e#478\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.3\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUse resolved cache feature of jsonschema-path \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/479\"\u003e#479\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.2\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eOpenAPI 3.2 support \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/472\"\u003e#472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd OAS 3.1 jsonSchemaDialect-aware schema meta-validation \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/471\"\u003e#471\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.1\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI version option \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/466\"\u003e#466\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSplit CLI error controls into validation and subschema modes \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/469\"\u003e#469\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix malformed schema traversal to report validation errors instead of internal exceptions \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/467\"\u003e#467\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eValidate declared path parameters against path template \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/470\"\u003e#470\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDeprecations\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecates \u003ccode\u003e--error\u003c/code\u003e/\u003ccode\u003e--errors\u003c/code\u003e CLI options \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/469\"\u003e#469\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.0\u003c/h2\u003e\n\u003ch2\u003eUpgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eJsonschema-path 0.4 and openapi-schema-validator 0.7 upgrades \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/459\"\u003e#459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePython 3.13 and 3.14 support \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/392\"\u003e#392\u003c/a\u003e \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/457\"\u003e#457\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate openapi-schema-validator version constraint \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/439\"\u003e#439\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBackward incompatibilities\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 and 3.9 drop \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/392\"\u003e#392\u003c/a\u003e \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/456\"\u003e#456\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.0b3\u003c/h2\u003e\n\u003ch2\u003eUpgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eJsonschema-path 0.4.0b8 upgrade \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/455\"\u003e#455\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/python-openapi/openapi-spec-validator/commit/cca400fbe29ebaea5c3b3e7db04548db260690ea\"\u003e\u003ccode\u003ecca400f\u003c/code\u003e\u003c/a\u003e Version 0.8.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/33585eab47df9c3d6bd18479463da15fb0007f36\"\u003e\u003ccode\u003e33585ea\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/478\"\u003e#478\u003c/a\u003e from python-openapi/poc/rust-backend\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/a10dfe6ce166865eb36c75b2a473d470cc5bb0e1\"\u003e\u003ccode\u003ea10dfe6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/480\"\u003e#480\u003c/a\u003e from python-openapi/copilot/sub-pr-478\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/da9c9cbce67e12764db36886a850eb5a9017dc51\"\u003e\u003ccode\u003eda9c9cb\u003c/code\u003e\u003c/a\u003e Address review feedback: fix docstring, trailing whitespace, f-string, instal...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/629f4e2bdfe60ce54c51f8e8cdce54f6f83f1da7\"\u003e\u003ccode\u003e629f4e2\u003c/code\u003e\u003c/a\u003e Initial plan\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/df9ba9b77384f1102e98033219feddb64b4e85fa\"\u003e\u003ccode\u003edf9ba9b\u003c/code\u003e\u003c/a\u003e Rust backend\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/a093f9c4783792da2b181c03e718844b57cdb19c\"\u003e\u003ccode\u003ea093f9c\u003c/code\u003e\u003c/a\u003e Version 0.8.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/0d757b58adc86d3b939b048aa4263ddea6462fd3\"\u003e\u003ccode\u003e0d757b5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/479\"\u003e#479\u003c/a\u003e from python-openapi/feature/upgrade-jsonschema-path-0...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/0bbd76166fcd1833dcbe63cf335a3da26fdc9015\"\u003e\u003ccode\u003e0bbd761\u003c/code\u003e\u003c/a\u003e Expose resolved cache\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/023da9563279a37bcedb5ffb6208f663e46a53cc\"\u003e\u003ccode\u003e023da95\u003c/code\u003e\u003c/a\u003e Upgrade jsonschema-path 0.4.3\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/compare/0.7.2...0.8.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cfn-lint` from 1.44.0 to 1.47.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/releases\"\u003ecfn-lint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v1.47.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ca href=\"https://github.com/aws-cloudformation/cfn-python-lint/blob/main/docs/rules.md#E3677\"\u003eE3063\u003c/a\u003e false positive when Code is a string (aws-cli pattern) by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4399\"\u003eaws-cloudformation/cfn-lint#4399\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCap resolve_value permutations to prevent exponential blowup by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4394\"\u003eaws-cloudformation/cfn-lint#4394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: maintenance guardduty policy by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4400\"\u003eaws-cloudformation/cfn-lint#4400\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eEngineVersion\u003c/code\u003e of \u003ccode\u003e8.0.0\u003c/code\u003e to DocDB Cluster by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4401\"\u003eaws-cloudformation/cfn-lint#4401\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport multi-attribute composite keys in DynamoDB GSI KeySchema by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4402\"\u003eaws-cloudformation/cfn-lint#4402\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow JSONata string expressions for Arguments in Step Functions by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4403\"\u003eaws-cloudformation/cfn-lint#4403\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-24\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4404\"\u003eaws-cloudformation/cfn-lint#4404\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/compare/v1.47.0...v1.47.1\"\u003ehttps://github.com/aws-cloudformation/cfn-lint/compare/v1.47.0...v1.47.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease v1.47.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove Python 3.9 support (EOL October 2025) by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4383\"\u003eaws-cloudformation/cfn-lint#4383\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add region filtering to --update-specs by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4382\"\u003eaws-cloudformation/cfn-lint#4382\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd unknown validation state for intrinsic functions in composite validators by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4384\"\u003eaws-cloudformation/cfn-lint#4384\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-10\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4381\"\u003eaws-cloudformation/cfn-lint#4381\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix/skip resolve unconstrained schema by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4388\"\u003eaws-cloudformation/cfn-lint#4388\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump setuptools from 82.0.0 to 82.0.1 in /requirements 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/aws-cloudformation/cfn-lint/pull/4385\"\u003eaws-cloudformation/cfn-lint#4385\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-13\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4386\"\u003eaws-cloudformation/cfn-lint#4386\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/compare/v1.46.0...v1.47.0\"\u003ehttps://github.com/aws-cloudformation/cfn-lint/compare/v1.46.0...v1.47.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease v1.46.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd rule \u003ca href=\"https://github.com/aws-cloudformation/cfn-python-lint/blob/main/docs/rules.md#E3063\"\u003eE3063\u003c/a\u003e to validate GuardDuty Detector property exclusivity by \u003ca href=\"https://github.com/JuanHPassos\"\u003e\u003ccode\u003e@​JuanHPassos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4364\"\u003eaws-cloudformation/cfn-lint#4364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-02\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4375\"\u003eaws-cloudformation/cfn-lint#4375\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/JuanHPassos\"\u003e\u003ccode\u003e@​JuanHPassos\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4364\"\u003eaws-cloudformation/cfn-lint#4364\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/compare/v1.45.0...v1.46.0\"\u003ehttps://github.com/aws-cloudformation/cfn-lint/compare/v1.45.0...v1.46.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease v1.45.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): bump setuptools from \u003ccode\u003e80.10.2\u003c/code\u003e to \u003ccode\u003e82.0.0\u003c/code\u003e in /requirements 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/aws-cloudformation/cfn-lint/pull/4366\"\u003eaws-cloudformation/cfn-lint#4366\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd rule \u003ca href=\"https://github.com/aws-cloudformation/cfn-python-lint/blob/main/docs/rules.md#E3685\"\u003eE3685\u003c/a\u003e to validate container image functions cannot use \u003ccode\u003eHandler\u003c/code\u003e, \u003ccode\u003eRuntime\u003c/code\u003e, or \u003ccode\u003eLayers\u003c/code\u003e by \u003ca href=\"https://github.com/chrisqm-dev\"\u003e\u003ccode\u003e@​chrisqm-dev\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4372\"\u003eaws-cloudformation/cfn-lint#4372\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd rule \u003ca href=\"https://github.com/aws-cloudformation/cfn-python-lint/blob/main/docs/rules.md#E3696\"\u003eE3696\u003c/a\u003e to validate \u003ccode\u003eLogLevel\u003c/code\u003e is not supported when \u003ccode\u003eLogFormat\u003c/code\u003e is set to \u003ccode\u003eText\u003c/code\u003e by \u003ca href=\"https://github.com/chrisqm-dev\"\u003e\u003ccode\u003e@​chrisqm-dev\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4372\"\u003eaws-cloudformation/cfn-lint#4372\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump pyinstaller from \u003ccode\u003e6.18.0\u003c/code\u003e to \u003ccode\u003e6.19.0\u003c/code\u003e in /requirements by \u003ca href=\"https://github.com/dependabot\"\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/ASFHyP3/hyp3/pull/3054","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ASFHyP3%2Fhyp3/issues/3054","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/3054/packages"},{"uuid":"4174018823","node_id":"PR_kwDOD385987OwSfx","number":3052,"state":"closed","title":"Bump the pip-deps group across 1 directory with 14 updates","user":"dependabot[bot]","labels":["major","bumpless"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-03-30T22:31:26.000Z","author_association":null,"state_reason":null,"created_at":"2026-03-30T20:53:29.000Z","updated_at":"2026-03-30T22:31:28.000Z","time_to_close":5877,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"pip-deps","update_count":14,"packages":[{"name":"boto3","old_version":"1.42.46","new_version":"1.42.79","repository_url":"https://github.com/boto/boto3"},{"name":"asf-search","old_version":"11.0.3","new_version":"12.0.6","repository_url":"https://github.com/asfadmin/Discovery-asf_search"},{"name":"flask","old_version":"3.1.2","new_version":"3.1.3","repository_url":"https://github.com/pallets/flask"},{"name":"openapi-core","old_version":"0.22.0","new_version":"0.23.0","repository_url":"https://github.com/python-openapi/openapi-core"},{"name":"pyjwt","old_version":"2.12.0","new_version":"2.12.1","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"requests","old_version":"2.32.5","new_version":"2.33.1","repository_url":"https://github.com/psf/requests"},{"name":"cryptography","old_version":"46.0.5","new_version":"46.0.6","repository_url":"https://github.com/pyca/cryptography"},{"name":"moto","old_version":"5.1.21","new_version":"5.1.22","repository_url":"https://github.com/getmoto/moto"},{"name":"responses","old_version":"0.25.8","new_version":"0.26.0","repository_url":"https://github.com/getsentry/responses"},{"name":"ruff","old_version":"0.15.0","new_version":"0.15.8","repository_url":"https://github.com/astral-sh/ruff"},{"name":"setuptools","old_version":"82.0.0","new_version":"82.0.1","repository_url":"https://github.com/pypa/setuptools"},{"name":"setuptools-scm","old_version":"9.2.2","new_version":"10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"},{"name":"openapi-spec-validator","old_version":"0.7.2","new_version":"0.8.4","repository_url":"https://github.com/python-openapi/openapi-spec-validator"},{"name":"cfn-lint","old_version":"1.44.0","new_version":"1.47.1","repository_url":"https://github.com/aws-cloudformation/cfn-lint"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-deps group with 14 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [boto3](https://github.com/boto/boto3) | `1.42.46` | `1.42.79` |\n| [asf-search](https://github.com/asfadmin/Discovery-asf_search) | `11.0.3` | `12.0.6` |\n| [flask](https://github.com/pallets/flask) | `3.1.2` | `3.1.3` |\n| [openapi-core](https://github.com/python-openapi/openapi-core) | `0.22.0` | `0.23.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.12.0` | `2.12.1` |\n| [requests](https://github.com/psf/requests) | `2.32.5` | `2.33.1` |\n| [cryptography](https://github.com/pyca/cryptography) | `46.0.5` | `46.0.6` |\n| [moto](https://github.com/getmoto/moto) | `5.1.21` | `5.1.22` |\n| [responses](https://github.com/getsentry/responses) | `0.25.8` | `0.26.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.0` | `0.15.8` |\n| [setuptools](https://github.com/pypa/setuptools) | `82.0.0` | `82.0.1` |\n| [setuptools-scm](https://github.com/pypa/setuptools-scm) | `9.2.2` | `10.0.5` |\n| [openapi-spec-validator](https://github.com/python-openapi/openapi-spec-validator) | `0.7.2` | `0.8.4` |\n| [cfn-lint](https://github.com/aws-cloudformation/cfn-lint) | `1.44.0` | `1.47.1` |\n\n\nUpdates `boto3` from 1.42.46 to 1.42.79\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/79b815be1d502ab09b61fa24f1f989688a34eab8\"\u003e\u003ccode\u003e79b815b\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.79'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b11c6f7427b3920c8a8e1e0c3d1da7bbcf350b6a\"\u003e\u003ccode\u003eb11c6f7\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.79\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/98fabce7eb69aefa313721c11293a7c1eef51bc6\"\u003e\u003ccode\u003e98fabce\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b5acf8b4da83625fe3a4bbc37f44d3563a90bedb\"\u003e\u003ccode\u003eb5acf8b\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.78'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/6b3713da80c9f7ca1477741de612c020e9403128\"\u003e\u003ccode\u003e6b3713d\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.78' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/1da17a5f5f168ca19917cb3b5c1389b1918c1a6e\"\u003e\u003ccode\u003e1da17a5\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.78\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/e298b6480047c39f047a9805ce5a69654eda2c2b\"\u003e\u003ccode\u003ee298b64\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/48369eaf9203ac46d0621f2a6506cbfa369c3cff\"\u003e\u003ccode\u003e48369ea\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.77'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/8c30411a442a21b8bccc9eb2fde60ab76751ef35\"\u003e\u003ccode\u003e8c30411\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.77' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/4398c8e0aee88fe1c5aacb415683e75ccde1b3a3\"\u003e\u003ccode\u003e4398c8e\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.77\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.42.46...1.42.79\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asf-search` from 11.0.3 to 12.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/releases\"\u003easf-search's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev12.0.6\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.5...v12.0.6\"\u003ev12.0.6\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e module added as top level module\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_nisar_orbit_ephemeras()\u003c/code\u003e method returns dictionary with latest \u003ccode\u003eNISAR\u003c/code\u003e \u003ccode\u003ePOE\u003c/code\u003e, \u003ccode\u003eMOE\u003c/code\u003e, \u003ccode\u003eNOE\u003c/code\u003e, and \u003ccode\u003eFOE\u003c/code\u003e orbit ephemeras\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix track based searches when \u003ccode\u003eprocessingLevel\u003c/code\u003e specified on \u003ccode\u003eNISAR\u003c/code\u003e dataset searches\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.5\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.4...v12.0.5\"\u003ev12.0.5\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDIST-ALERT-S1 product type to OPERA dataset\n\u003cul\u003e\n\u003cli\u003eTileID searchable attribute\u003c/li\u003e\n\u003cli\u003eproductVersion attribute\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix edge-case with \u003ccode\u003eplatform\u003c/code\u003e \u0026amp; \u003ccode\u003eprocessingLevel\u003c/code\u003e concept-id aliasing\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.3...v12.0.4\"\u003ev12.0.4\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003eNISAR\u003c/code\u003e dataset/platform concept-ids\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.2...v12.0.3\"\u003ev12.0.3\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eariaVersion\u003c/code\u003e as a searchable attribute\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eorbitType\u003c/code\u003e to \u003ccode\u003eNISARProduct\u003c/code\u003e properties dictionary\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.1...v12.0.2\"\u003ev12.0.2\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eNISAR\u003c/code\u003e product type constants for ancillary/aux products, now useable with \u003ccode\u003esearch()\u003c/code\u003e methods. New constants:\n\u003ccode\u003eDCOP\u003c/code\u003e,\n\u003ccode\u003eOROST\u003c/code\u003e,\n\u003ccode\u003eSTUF\u003c/code\u003e,\n\u003ccode\u003eTEC\u003c/code\u003e,\n\u003ccode\u003eLRCLK_UTC\u003c/code\u003e,\n\u003ccode\u003eFOE\u003c/code\u003e,\n\u003ccode\u003eMOE\u003c/code\u003e,\n\u003ccode\u003eNOE\u003c/code\u003e,\n\u003ccode\u003ePOE\u003c/code\u003e,\n\u003ccode\u003eTSR_STATIC\u003c/code\u003e,\n\u003ccode\u003ePMI_STATIC\u003c/code\u003e,\n\u003ccode\u003eCORNER_REFL\u003c/code\u003e,\n\u003ccode\u003eLSAR_INT_CAL\u003c/code\u003e,\n\u003ccode\u003eLSAR_EXT_CAL\u003c/code\u003e,\n\u003ccode\u003eFT_WAVEFORM\u003c/code\u003e,\n\u003ccode\u003eFT_PARAM\u003c/code\u003e,\n\u003ccode\u003eANTPAT\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/blob/master/CHANGELOG.md\"\u003easf-search's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.5...v12.0.6\"\u003ev12.0.6\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e module added as top level module\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_nisar_orbit_ephemeras()\u003c/code\u003e method returns dictionary with latest \u003ccode\u003eNISAR\u003c/code\u003e \u003ccode\u003ePOE\u003c/code\u003e, \u003ccode\u003eMOE\u003c/code\u003e, \u003ccode\u003eNOE\u003c/code\u003e, and \u003ccode\u003eFOE\u003c/code\u003e orbit ephemeras\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix track based searches when \u003ccode\u003eprocessingLevel\u003c/code\u003e specified on \u003ccode\u003eNISAR\u003c/code\u003e dataset searches\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.4...v12.0.5\"\u003ev12.0.5\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDIST-ALERT-S1 product type to OPERA dataset\n\u003cul\u003e\n\u003cli\u003eTileID searchable attribute\u003c/li\u003e\n\u003cli\u003eproductVersion attribute\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix edge-case with \u003ccode\u003eplatform\u003c/code\u003e \u0026amp; \u003ccode\u003eprocessingLevel\u003c/code\u003e concept-id aliasing\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.3...v12.0.4\"\u003ev12.0.4\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003eNISAR\u003c/code\u003e dataset/platform concept-ids\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.2...v12.0.3\"\u003ev12.0.3\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eariaVersion\u003c/code\u003e as a searchable attribute\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eorbitType\u003c/code\u003e to \u003ccode\u003eNISARProduct\u003c/code\u003e properties dictionary\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.1...v12.0.2\"\u003ev12.0.2\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eNISAR\u003c/code\u003e product type constants for ancillary/aux products, now useable with \u003ccode\u003esearch()\u003c/code\u003e methods. New constants:\n\u003ccode\u003eDCOP\u003c/code\u003e,\n\u003ccode\u003eOROST\u003c/code\u003e,\n\u003ccode\u003eSTUF\u003c/code\u003e,\n\u003ccode\u003eTEC\u003c/code\u003e,\n\u003ccode\u003eLRCLK_UTC\u003c/code\u003e,\n\u003ccode\u003eFOE\u003c/code\u003e,\n\u003ccode\u003eMOE\u003c/code\u003e,\n\u003ccode\u003eNOE\u003c/code\u003e,\n\u003ccode\u003ePOE\u003c/code\u003e,\n\u003ccode\u003eTSR_STATIC\u003c/code\u003e,\n\u003ccode\u003ePMI_STATIC\u003c/code\u003e,\n\u003ccode\u003eCORNER_REFL\u003c/code\u003e,\n\u003ccode\u003eLSAR_INT_CAL\u003c/code\u003e,\n\u003ccode\u003eLSAR_EXT_CAL\u003c/code\u003e,\n\u003ccode\u003eFT_WAVEFORM\u003c/code\u003e,\n\u003ccode\u003eFT_PARAM\u003c/code\u003e,\n\u003ccode\u003eANTPAT\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/asfadmin/Discovery-asf_search/commit/0f8226f7d7f36fcca5bb28d111636d6e7abbbfc8\"\u003e\u003ccode\u003e0f8226f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/440\"\u003e#440\u003c/a\u003e from asfadmin/feat-nisar-oe-helper\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/47e6593b8ee5530077022f43a0600e7c421350db\"\u003e\u003ccode\u003e47e6593\u003c/code\u003e\u003c/a\u003e feat: adds utils module with get_nisar_orbit_ephemeras() method.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/66fadbb5bc968acec0f095b565dccc244879c79e\"\u003e\u003ccode\u003e66fadbb\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/439\"\u003e#439\u003c/a\u003e from asfadmin/bug-nisar-track-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/95cc06762259f72db17381748091aa54eb658c72\"\u003e\u003ccode\u003e95cc067\u003c/code\u003e\u003c/a\u003e chore: update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/1f601edbe40ce14756c3c98cb853e35e8e5761c1\"\u003e\u003ccode\u003e1f601ed\u003c/code\u003e\u003c/a\u003e bug: fix regression with frame search\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/bb7dfaaae1dc35449a6e7369f3e7726d2969fb03\"\u003e\u003ccode\u003ebb7dfaa\u003c/code\u003e\u003c/a\u003e chore: add todo comment for nsiar frame bug\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/6ec9957bbff797283f820fd3f90dcab6cd1b0335\"\u003e\u003ccode\u003e6ec9957\u003c/code\u003e\u003c/a\u003e fix: fix track not working when only specificying nisar dataset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/3efaa2862ac61c9bd1fcbfcea6bca5d472f90656\"\u003e\u003ccode\u003e3efaa28\u003c/code\u003e\u003c/a\u003e test: update authenticated NISAR test case\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/3e3d5777440aaff9303a247dbfa8c7f3b5c04078\"\u003e\u003ccode\u003e3e3d577\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/437\"\u003e#437\u003c/a\u003e from asfadmin/feat-opera-dist\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/9e0f3e86acfd67a0483f3e01e3de2909ac64f5b5\"\u003e\u003ccode\u003e9e0f3e8\u003c/code\u003e\u003c/a\u003e fix: add tileID to search.py\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v11.0.3...v12.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flask` from 3.1.2 to 3.1.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/flask/releases\"\u003eflask's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.1.3\u003c/h2\u003e\n\u003cp\u003eThis is the Flask 3.1.3 security fix release, which fixes a security issue but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.\u003c/p\u003e\n\u003cp\u003ePyPI: \u003ca href=\"https://pypi.org/project/Flask/3.1.3/\"\u003ehttps://pypi.org/project/Flask/3.1.3/\u003c/a\u003e\nChanges: \u003ca href=\"https://flask.palletsprojects.com/page/changes/#version-3-1-3\"\u003ehttps://flask.palletsprojects.com/page/changes/#version-3-1-3\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe session is marked as accessed for operations that only access the keys but not the values, such as \u003ccode\u003ein\u003c/code\u003e and \u003ccode\u003elen\u003c/code\u003e. \u003ca href=\"https://github.com/pallets/flask/security/advisories/GHSA-68rp-wp8r-4726\"\u003eGHSA-68rp-wp8r-4726\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/flask/blob/main/CHANGES.rst\"\u003eflask's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.1.3\u003c/h2\u003e\n\u003cp\u003eReleased 2026-02-18\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe session is marked as accessed for operations that only access the keys\nbut not the values, such as \u003ccode\u003ein\u003c/code\u003e and \u003ccode\u003elen\u003c/code\u003e. :ghsa:\u003ccode\u003e68rp-wp8r-4726\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/22d924701a6ae2e4cd01e9a15bbaf3946094af65\"\u003e\u003ccode\u003e22d9247\u003c/code\u003e\u003c/a\u003e release version 3.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/089cb86dd22bff589a4eafb7ab8e42dc357623b4\"\u003e\u003ccode\u003e089cb86\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/c17f379390731543eea33a570a47bd4ef76a54fa\"\u003e\u003ccode\u003ec17f379\u003c/code\u003e\u003c/a\u003e request context tracks session access\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/27be9338405382445a7cb01151e084559b98d602\"\u003e\u003ccode\u003e27be933\u003c/code\u003e\u003c/a\u003e start version 3.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/4e652d3f68b90d50aa2301d3b7e68c3fafd9251d\"\u003e\u003ccode\u003e4e652d3\u003c/code\u003e\u003c/a\u003e Abort if the instance folder cannot be created (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5903\"\u003e#5903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/3d03098a97ddc6a908aa4a50c2ef7381f8297d0a\"\u003e\u003ccode\u003e3d03098\u003c/code\u003e\u003c/a\u003e Abort if the instance folder cannot be created\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/407eb76b27884848383a37c7274654f0271e4bc4\"\u003e\u003ccode\u003e407eb76\u003c/code\u003e\u003c/a\u003e document using gevent for async (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/ac5664d2281533eacafd64f5cc7d5edcdaccab60\"\u003e\u003ccode\u003eac5664d\u003c/code\u003e\u003c/a\u003e document using gevent for async\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/4f79d5b59a56bc4356a97f2e81a35f98cb18d7b3\"\u003e\u003ccode\u003e4f79d5b\u003c/code\u003e\u003c/a\u003e Increase required flit_core version to 3.11 (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5865\"\u003e#5865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/fe3b215d3ade4db68262dae1a3cdc464a1fc524f\"\u003e\u003ccode\u003efe3b215\u003c/code\u003e\u003c/a\u003e Increase required flit_core version to 3.11\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets/flask/compare/3.1.2...3.1.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `openapi-core` from 0.22.0 to 0.23.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python-openapi/openapi-core/releases\"\u003eopenapi-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.23.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd OpenAPI 3.2 support and move V3 aliases to V32 \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1121\"\u003e#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd opt-in strict mode for omitted additionalProperties \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1124\"\u003e#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd explicit Falcon WSGI/ASGI middleware with dual-mode compatibility \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1122\"\u003e#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd structured details for validation errors \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1129\"\u003e#1129\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDialect-aware schema validators factory \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1135\"\u003e#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport parameter casting in composite schemas \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1136\"\u003e#1136\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken contributing guidelines link \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1098\"\u003e#1098\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix swapped operation/path order in request-parameters flows \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1120\"\u003e#1120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix deprecation warnings for omitted params and headers \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1125\"\u003e#1125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInclude root cause in request body validation errors \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1128\"\u003e#1128\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eUpgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDjango 6 support \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1103\"\u003e#1103\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade jsonschema-path 0.4 openapi-schema-validator 0.7 and openapi-spec-validator 0.8 \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1105\"\u003e#1105\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBackward incompatibilities\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.9 support dropped \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1091\"\u003e#1091\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eV3 aliases point to V32 \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1121\"\u003e#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove deprecated Spec \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1002\"\u003e#1002\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.23.0b1\u003c/h2\u003e\n\u003ch2\u003eUpgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade jsonschema-path 0.4.0b8 and openapi-spec-validator 0.8.0b3 \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1002\"\u003e#1002\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken contributing guidelines link \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1098\"\u003e#1098\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBackward incompatibilities\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.9 support dropped \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1091\"\u003e#1091\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/520650b97d9fa02f15edeee4cc3f13a91980de68\"\u003e\u003ccode\u003e520650b\u003c/code\u003e\u003c/a\u003e Version 0.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/beec2f2a5ef5cffe1a020095d5e24e79f4c809ad\"\u003e\u003ccode\u003ebeec2f2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1138\"\u003e#1138\u003c/a\u003e from python-openapi/dependabot/pip/openapi-spec-vali...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/b6be01025df31aa93cf19c8e9aa6c833aca254b5\"\u003e\u003ccode\u003eb6be010\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1137\"\u003e#1137\u003c/a\u003e from python-openapi/dependabot/pip/markdown-3.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/408242af08ff378b7f32bde7cf5a3aaf1c9b7295\"\u003e\u003ccode\u003e408242a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1139\"\u003e#1139\u003c/a\u003e from python-openapi/dependabot/pip/mkdocs-material-9...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/9bcbf2fd11e6d759ae28b735b066aaa4f611ba41\"\u003e\u003ccode\u003e9bcbf2f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1140\"\u003e#1140\u003c/a\u003e from python-openapi/dependabot/pip/pytest-9.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/2cfefe40310e0a636bd54a2bae65e35582dc55b2\"\u003e\u003ccode\u003e2cfefe4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1141\"\u003e#1141\u003c/a\u003e from python-openapi/dependabot/pip/tornado-6.5.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/ca92806f3fc5e6976aac6b504c7e480b1937f59b\"\u003e\u003ccode\u003eca92806\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1136\"\u003e#1136\u003c/a\u003e from python-openapi/fix/composite-schema-casting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/4a57f278f902634e4dd8913c1f94ff7ed771cca9\"\u003e\u003ccode\u003e4a57f27\u003c/code\u003e\u003c/a\u003e Bump tornado from 6.5.4 to 6.5.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/81ff1c6e139aa61c911be6adabd1c8144143284d\"\u003e\u003ccode\u003e81ff1c6\u003c/code\u003e\u003c/a\u003e Bump pytest from 8.4.2 to 9.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/480a3622bdfbc85d899873fed0a991b1ff9c73cf\"\u003e\u003ccode\u003e480a362\u003c/code\u003e\u003c/a\u003e Bump mkdocs-material from 9.7.3 to 9.7.4\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python-openapi/openapi-core/compare/0.22.0...0.23.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyjwt` from 2.12.0 to 2.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jpadilla/pyjwt/releases\"\u003epyjwt's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.12.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd typing_extensions dependency for Python \u0026lt; 3.11 by \u003ca href=\"https://github.com/jpadilla\"\u003e\u003ccode\u003e@​jpadilla\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jpadilla/pyjwt/pull/1151\"\u003ejpadilla/pyjwt#1151\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1\"\u003ehttps://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jpadilla/pyjwt/blob/master/CHANGELOG.rst\"\u003epyjwt's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003ev2.12.1 \u0026lt;https://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1\u0026gt;\u003c/code\u003e__\u003c/h2\u003e\n\u003cp\u003eFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Add missing ``typing_extensions`` dependency for Python \u0026lt; 3.11 in `[#1150](https://github.com/jpadilla/pyjwt/issues/1150) \u0026lt;https://github.com/jpadilla/pyjwt/issues/1150\u0026gt;`__\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jpadilla/pyjwt/commit/a4e1a3d1218b01c5806420b8f16d9308ac4adc30\"\u003e\u003ccode\u003ea4e1a3d\u003c/code\u003e\u003c/a\u003e Add typing_extensions dependency for Python \u0026lt; 3.11 (\u003ca href=\"https://redirect.github.com/jpadilla/pyjwt/issues/1151\"\u003e#1151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.32.5 to 2.33.1\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.33.1\u003c/h2\u003e\n\u003ch2\u003e2.33.1 (2026-03-30)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed test cleanup for CVE-2026-25645 to avoid leaving unnecessary\nfiles in the tmp directory. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed Content-Type header parsing for malformed values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved error consistency for malformed header values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\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/ferdnyc\"\u003e\u003ccode\u003e@​ferdnyc\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7277\"\u003epsf/requests#7277\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#2331-2026-03-30\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2331-2026-03-30\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.33.0\u003c/h2\u003e\n\u003ch2\u003e2.33.0 (2026-03-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e📣 Requests is adding inline types. If you have a typed code base that uses Requests, please take a look at \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003e#7271\u003c/a\u003e. Give it a try, and report any gaps or feedback you may have in the issue. 📣\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2026-25645 \u003ccode\u003erequests.utils.extract_zipped_paths\u003c/code\u003e now extracts contents to a non-deterministic location to prevent malicious file replacement. This does not affect default usage of Requests, only applications calling the utility function directly.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated to a PEP 517 build system using setuptools. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7012\"\u003e#7012\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\u003eFixed an issue where an empty netrc entry could cause malformed authentication to be applied to Requests on Python 3.11+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7205\"\u003e#7205\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for Python 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7196\"\u003e#7196\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDocumentation\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eVarious typo fixes and doc improvements.\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/M0d3v1\"\u003e\u003ccode\u003e@​M0d3v1\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/6865\"\u003epsf/requests#6865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aminvakil\"\u003e\u003ccode\u003e@​aminvakil\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7220\"\u003epsf/requests#7220\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/E8Price\"\u003e\u003ccode\u003e@​E8Price\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/6960\"\u003epsf/requests#6960\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitre88\"\u003e\u003ccode\u003e@​mitre88\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7244\"\u003epsf/requests#7244\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/magsen\"\u003e\u003ccode\u003e@​magsen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/6553\"\u003epsf/requests#6553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rohan5commit\"\u003e\u003ccode\u003e@​Rohan5commit\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7227\"\u003epsf/requests#7227\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#2330-2026-03-25\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2330-2026-03-25\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/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.33.1 (2026-03-30)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed test cleanup for CVE-2026-25645 to avoid leaving unnecessary\nfiles in the tmp directory. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed Content-Type header parsing for malformed values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved error consistency for malformed header values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.33.0 (2026-03-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e📣 Requests is adding inline types. If you have a typed code base that\nuses Requests, please take a look at \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003e#7271\u003c/a\u003e. Give it a try, and report\nany gaps or feedback you may have in the issue. 📣\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2026-25645 \u003ccode\u003erequests.utils.extract_zipped_paths\u003c/code\u003e now extracts\ncontents to a non-deterministic location to prevent malicious file\nreplacement. This does not affect default usage of Requests, only\napplications calling the utility function directly.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated to a PEP 517 build system using setuptools. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7012\"\u003e#7012\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\u003eFixed an issue where an empty netrc entry could cause\nmalformed authentication to be applied to Requests on\nPython 3.11+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7205\"\u003e#7205\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for Python 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7196\"\u003e#7196\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDocumentation\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eVarious typo fixes and doc improvements.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/111d2b77790bf49943c0dfa09b365371c24aec7e\"\u003e\u003ccode\u003e111d2b7\u003c/code\u003e\u003c/a\u003e v2.33.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/f0198e6dfc431a2293dc16e1b1e8fcddc910a7f3\"\u003e\u003ccode\u003ef0198e6\u003c/code\u003e\u003c/a\u003e Fix malformed value parsing for Content-Type (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/bc7dd0fc4d56e808bcdd85ac2d797b3107c89259\"\u003e\u003ccode\u003ebc7dd0f\u003c/code\u003e\u003c/a\u003e Fix cosmetic header validity parsing regex (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4443b1a847b190010c2972a658924b98b5db6360\"\u003e\u003ccode\u003e4443b1a\u003c/code\u003e\u003c/a\u003e Fix unintended test extra (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7306\"\u003e#7306\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/389eea58dfb2f2ee096421a812e3af29c0298951\"\u003e\u003ccode\u003e389eea5\u003c/code\u003e\u003c/a\u003e Cleanup extracted file after extract_zipped_path test (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7407309c8a8a73aa2f4337184025d440bbedab7a\"\u003e\u003ccode\u003e7407309\u003c/code\u003e\u003c/a\u003e Packaging: DRY out extras definition (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7277\"\u003e#7277\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/bc04dfd6dad4cb02cd92f5daa81eb562d280a761\"\u003e\u003ccode\u003ebc04dfd\u003c/code\u003e\u003c/a\u003e v2.33.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/66d21cb07bd6255b1280291c4fafb71803cdb3b7\"\u003e\u003ccode\u003e66d21cb\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/8b9bc8fc0f63be84602387913c4b689f19efd028\"\u003e\u003ccode\u003e8b9bc8f\u003c/code\u003e\u003c/a\u003e Move badges to top of README (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7293\"\u003e#7293\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e331a288f369973f5de0ec8901c94cae4fa87286\"\u003e\u003ccode\u003ee331a28\u003c/code\u003e\u003c/a\u003e Remove unused extraction call (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7292\"\u003e#7292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.5...v2.33.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cryptography` from 46.0.5 to 46.0.6\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst\"\u003ecryptography's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e46.0.6 - 2026-03-25\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* **SECURITY ISSUE**: Fixed a bug where name constraints were not applied\n  to peer names during verification when the leaf certificate contains a\n  wildcard DNS SAN. Ordinary X.509 topologies are not affected by this bug,\n  including those used by the Web PKI. Credit to **Oleh Konko (1seal)** for\n  reporting the issue. **CVE-2026-34073**\n\u003cp\u003e.. _v46-0-5:\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\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/pyca/cryptography/commit/91d728897bdad30cd5c79a2b23e207f1f050d587\"\u003e\u003ccode\u003e91d7288\u003c/code\u003e\u003c/a\u003e Cherry-pick \u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/14542\"\u003e#14542\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/14543\"\u003e#14543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/pyca/cryptography/compare/46.0.5...46.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `moto` from 5.1.21 to 5.1.22\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getmoto/moto/blob/master/CHANGELOG.md\"\u003emoto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.1.22\u003c/h2\u003e\n\u003cp\u003eDocker Digest for 5.1.22: \u003cem\u003esha256:1e3802c95726373544967b428201c548f0247c15b00db2d96a5ba0a77d8643b8\u003c/em\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew Methods:\n    * APIGateway:\n        * delete_model()\n\u003cpre\u003e\u003ccode\u003e* Athena:\n    * tag_resource()\n    * untag_resource()\n\n* Pipes:\n    * list_tags_for_resource()\n\n* OSIS:\n    * delete_resource_policy()\n    * get_resource_policy()\n    * put_resource_policy()\n\n* RDS:\n    * copy_db_cluster_parameter_group()\n\n* STS:\n    * get_access_key_info()\n\n* Transfer:\n    * list_servers()\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eMiscellaneous:\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::CloudWatch::Dashboard resources\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::KMS::Alias resources\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::SSM::Document resources\u003cbr /\u003e\n* EC2: create_fleet() now supports the parameters DryRun and LaunchTemplateConfigs.Overrides\u003cbr /\u003e\n* EC2: describe_network_interfaces() now supports the 'attachment.attachment-id'-filter\u003cbr /\u003e\n* EC2: Instances created from a LaunchTemplate now have the 'aws:ec2launchtemplate:id' and 'aws:ec2launchtemplate:version' tags\u003cbr /\u003e\n* RDS: create_db_cluster_parameter_group() now validates the provided group name/description/familiy\u003cbr /\u003e\n* RDS: delete_db_cluster_parameter_group() now validates that the provided group exists\u003cbr /\u003e\n* S3: delete_object() now supports IfMatch\u003cbr /\u003e\n* SecretsManager: create-secret() now throw ResourceExistsException for duplicate requests with different token (broken since 5.1.11)\u003cbr /\u003e\n* SQS: send_message() now returns the SequenceNumber-attribute\u003cbr /\u003e\n* VPCLattice: list_access_log_subscriptions() now also supports arns as resourceIdentifiers\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\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/getmoto/moto/commit/28d5ca88d9df9ce3e94e2e8b1f1c584646339e61\"\u003e\u003ccode\u003e28d5ca8\u003c/code\u003e\u003c/a\u003e Pre-Release: Up Version Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/f58dc186374dcf3cd1282f4a5998fedfa2b658a9\"\u003e\u003ccode\u003ef58dc18\u003c/code\u003e\u003c/a\u003e Prep release 5.1.22 (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/84cbb40725122bf252b766a0f601358bedcad6d1\"\u003e\u003ccode\u003e84cbb40\u003c/code\u003e\u003c/a\u003e chore: update SSM default parameters (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9828\"\u003e#9828\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/2f32dc1e3d25998340e1e59fc1145b3f1afc4b55\"\u003e\u003ccode\u003e2f32dc1\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9827\"\u003e#9827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/2a1c7ca7259747d1792dfa055b8433d313af581e\"\u003e\u003ccode\u003e2a1c7ca\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Offerings (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9826\"\u003e#9826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/e063c5a0e91c8afb49e2ccde47ff07c9448db09c\"\u003e\u003ccode\u003ee063c5a\u003c/code\u003e\u003c/a\u003e chore: update EMR Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/681b47aab458d90a8deb4ddbe86ef26695526218\"\u003e\u003ccode\u003e681b47a\u003c/code\u003e\u003c/a\u003e API Gateway: implement DeleteModel operation (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9823\"\u003e#9823\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/d652e4ad38ab382e32ab61cf2b319d033cfb6f4a\"\u003e\u003ccode\u003ed652e4a\u003c/code\u003e\u003c/a\u003e STS: implement GetAccessKeyInfo operation (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/40a65202b922fd78c4f4724f34f03cdc1172377d\"\u003e\u003ccode\u003e40a6520\u003c/code\u003e\u003c/a\u003e Implement Athena \u003ccode\u003eTagResource\u003c/code\u003e and \u003ccode\u003eUntagResource\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9796\"\u003e#9796\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/dc425e8b3d56b7ad84bf9d2820ae89e72d10a4a9\"\u003e\u003ccode\u003edc425e8\u003c/code\u003e\u003c/a\u003e Modernize Java tests (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9817\"\u003e#9817\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getmoto/moto/compare/5.1.21...5.1.22\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `responses` from 0.25.8 to 0.26.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/responses/releases\"\u003eresponses's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.26.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWhen using \u003ccode\u003eassert_all_requests_are_fired=True\u003c/code\u003e, assertions about\nunfired requests are now raised even when an exception occurs in the context manager or\ndecorated function. Previously, these assertions were suppressed when exceptions occurred.\nThis new behavior provides valuable debugging context about which mocked requests were\nor weren't called.\u003c/li\u003e\n\u003cli\u003eConsider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/responses/blob/master/CHANGES\"\u003eresponses's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.26.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWhen using \u003ccode\u003eassert_all_requests_are_fired=True\u003c/code\u003e, assertions about\nunfired requests are now raised even when an exception occurs in the context manager or\ndecorated function. Previously, these assertions were suppressed when exceptions occurred.\nThis new behavior provides valuable debugging context about which mocked requests were\nor weren't called.\u003c/li\u003e\n\u003cli\u003eConsider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/94913d0580377591350e69732df72f946d77b8c5\"\u003e\u003ccode\u003e94913d0\u003c/code\u003e\u003c/a\u003e release: 0.26.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/051b79e7fc9f5209fd351ee20288640a8fcd2265\"\u003e\u003ccode\u003e051b79e\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eassert_all_requests_are_fired\u003c/code\u003e always assert on exception (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/782\"\u003e#782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/0905cb8bd56b78f4d735d6db28ee4f12386ba4e8\"\u003e\u003ccode\u003e0905cb8\u003c/code\u003e\u003c/a\u003e Fix query_param_matcher not matching empty query parameter values (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/787\"\u003e#787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/e0c6faab419f902d6b646a902b7049196d64f68c\"\u003e\u003ccode\u003ee0c6faa\u003c/code\u003e\u003c/a\u003e ci(release): Switch from action-prepare-release to Craft (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/785\"\u003e#785\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/1be3a737b70a34d7f6a68a6f385c88af1f3e2df8\"\u003e\u003ccode\u003e1be3a73\u003c/code\u003e\u003c/a\u003e fix: Consider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/784\"\u003e#784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/c6730fbc87bf397c7fc798ec7573e6089ba877b6\"\u003e\u003ccode\u003ec6730fb\u003c/code\u003e\u003c/a\u003e Merge branch 'release/0.25.8'\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/getsentry/responses/compare/0.25.8...0.26.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.15.0 to 0.15.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.8\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-26.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003eunnecessary-if\u003c/code\u003e (\u003ccode\u003eRUF050\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24114\"\u003e#24114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003euseless-finally\u003c/code\u003e (\u003ccode\u003eRUF072\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24165\"\u003e#24165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003ef-string-percent-format\u003c/code\u003e (\u003ccode\u003eRUF073\u003c/code\u003e): warn when using \u003ccode\u003e%\u003c/code\u003e operator on an f-string (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24162\"\u003e#24162\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Recognize \u003ccode\u003efrozendict\u003c/code\u003e as a builtin for Python 3.15+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24100\"\u003e#24100\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] Use fully-qualified \u003ccode\u003eanyio.lowlevel\u003c/code\u003e import in autofix (\u003ccode\u003eASYNC115\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24166\"\u003e#24166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Check tuple arguments for partial paths in \u003ccode\u003eS607\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24080\"\u003e#24080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Skip \u003ccode\u003eundefined-name\u003c/code\u003e (\u003ccode\u003eF821\u003c/code\u003e) for conditionally deleted variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24088\"\u003e#24088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eE501\u003c/code\u003e/\u003ccode\u003eW505\u003c/code\u003e/formatter: Exclude nested pragma comments from line width calculation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24071\"\u003e#24071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e%foo?\u003c/code\u003e parsing in IPython assignment expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24152\"\u003e#24152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eanalyze graph\u003c/code\u003e: resolve string imports that reference attributes, not just modules (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24058\"\u003e#24058\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eeradicate\u003c/code\u003e] ignore \u003ccode\u003ety: ignore\u003c/code\u003e comments in \u003ccode\u003eERA001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24192\"\u003e#24192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Treat \u003ccode\u003esys.executable\u003c/code\u003e as trusted input in \u003ccode\u003eS603\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24106\"\u003e#24106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Recognize \u003ccode\u003eSelf\u003c/code\u003e annotation and \u003ccode\u003eself\u003c/code\u003e assignment in \u003ccode\u003eSLF001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24144\"\u003e#24144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] \u003ccode\u003eF507\u003c/code\u003e: Fix false negative for non-tuple RHS in \u003ccode\u003e%\u003c/code\u003e-formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24142\"\u003e#24142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Parenthesize generator arguments in \u003ccode\u003eFURB142\u003c/code\u003e fixer (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24200\"\u003e#24200\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up diagnostic rendering (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24146\"\u003e#24146\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWarn when Markdown files are skipped due to preview being disabled (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24150\"\u003e#24150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eClarify \u003ccode\u003eextend-ignore\u003c/code\u003e and \u003ccode\u003eextend-select\u003c/code\u003e settings documentation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24064\"\u003e#24064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMention AI policy in PR template (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24198\"\u003e#24198\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse trusted publishing for NPM packages (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24171\"\u003e#24171\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/bitloi\"\u003e\u003ccode\u003e@​bitloi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Sim-hu\"\u003e\u003ccode\u003e@​Sim-hu\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.15.8\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-26.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003eunnecessary-if\u003c/code\u003e (\u003ccode\u003eRUF050\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24114\"\u003e#24114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003euseless-finally\u003c/code\u003e (\u003ccode\u003eRUF072\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24165\"\u003e#24165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003ef-string-percent-format\u003c/code\u003e (\u003ccode\u003eRUF073\u003c/code\u003e): warn when using \u003ccode\u003e%\u003c/code\u003e operator on an f-string (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24162\"\u003e#24162\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Recognize \u003ccode\u003efrozendict\u003c/code\u003e as a builtin for Python 3.15+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24100\"\u003e#24100\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] Use fully-qualified \u003ccode\u003eanyio.lowlevel\u003c/code\u003e import in autofix (\u003ccode\u003eASYNC115\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24166\"\u003e#24166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Check tuple arguments for partial paths in \u003ccode\u003eS607\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24080\"\u003e#24080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Skip \u003ccode\u003eundefined-name\u003c/code\u003e (\u003ccode\u003eF821\u003c/code\u003e) for conditionally deleted variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24088\"\u003e#24088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eE501\u003c/code\u003e/\u003ccode\u003eW505\u003c/code\u003e/formatter: Exclude nested pragma comments from line width calculation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24071\"\u003e#24071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e%foo?\u003c/code\u003e parsing in IPython assignment expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24152\"\u003e#24152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eanalyze graph\u003c/code\u003e: resolve string imports that reference attributes, not just modules (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24058\"\u003e#24058\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eeradicate\u003c/code\u003e] ignore \u003ccode\u003ety: ignore\u003c/code\u003e comments in \u003ccode\u003eERA001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24192\"\u003e#24192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Treat \u003ccode\u003esys.executable\u003c/code\u003e as trusted input in \u003ccode\u003eS603\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24106\"\u003e#24106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Recognize \u003ccode\u003eSelf\u003c/code\u003e annotation and \u003ccode\u003eself\u003c/code\u003e assignment in \u003ccode\u003eSLF001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24144\"\u003e#24144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] \u003ccode\u003eF507\u003c/code\u003e: Fix false negative for non-tuple RHS in \u003ccode\u003e%\u003c/code\u003e-formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24142\"\u003e#24142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Parenthesize generator arguments in \u003ccode\u003eFURB142\u003c/code\u003e fixer (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24200\"\u003e#24200\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up diagnostic rendering (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24146\"\u003e#24146\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWarn when Markdown files are skipped due to preview being disabled (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24150\"\u003e#24150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eClarify \u003ccode\u003eextend-ignore\u003c/code\u003e and \u003ccode\u003eextend-select\u003c/code\u003e settings documentation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24064\"\u003e#24064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMention AI policy in PR template (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24198\"\u003e#24198\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse trusted publishing for NPM packages (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24171\"\u003e#24171\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/bitloi\"\u003e\u003ccode\u003e@​bitloi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Sim-hu\"\u003e\u003ccode\u003e@​Sim-hu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\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/c2a8815842f9dc5d24ec19385eae0f1a7188b0d9\"\u003e\u003ccode\u003ec2a8815\u003c/code\u003e\u003c/a\u003e Release 0.15.8 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24217\"\u003e#24217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d444d52e2b9cc8bc9a078c2bd4ff6ff993290209\"\u003e\u003ccode\u003ed444d52\u003c/code\u003e\u003c/a\u003e [ty] Infer lambda expressions with \u003ccode\u003eCallable\u003c/code\u003e type context (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/22633\"\u003e#22633\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/9622285ed0081fc688149f6efca87f127d9b18dd\"\u003e\u003ccode\u003e9622285\u003c/code\u003e\u003c/a\u003e [ty] Autocomplete arguments if in arguments node (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24167\"\u003e#24167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d81266252aaf0820346d55edbed79c4f25ba13d2\"\u003e\u003ccode\u003ed812662\u003c/code\u003e\u003c/a\u003e Use the \u003ccode\u003erelease\u003c/code\u003e environment in \u003ccode\u003epublish-docs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24214\"\u003e#24214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/eda2355832f7a9c58aef6febd3e061dc9c87509a\"\u003e\u003ccode\u003eeda2355\u003c/code\u003e\u003c/a\u003e [ty] Show \u003ccode\u003eFinal\u003c/code\u003e source in final assignment diagnostic (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24194\"\u003e#24194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/929eb5238c82bfadad4549ff526f02efc0163dd0\"\u003e\u003ccode\u003e929eb52\u003c/code\u003e\u003c/a\u003e [ty] Enforce Final attribute assignment rules for annotated and augmented wri...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/34998be22ec3a77d398bbd55234ef8740f768329\"\u003e\u003ccode\u003e34998be\u003c/code\u003e\u003c/a\u003e [ty] Fix typo in comment (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24211\"\u003e#24211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/560aca0b2828ee2ff1b4bcc5c5ef1ef4ced229d2\"\u003e\u003ccode\u003e560aca0\u003c/code\u003e\u003c/a\u003e [ty] Minor simplifications to some benchmark code (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24209\"\u003e#24209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/683bae512d03d3727a7bcdbc5a0170dafa049583\"\u003e\u003ccode\u003e683bae5\u003c/code\u003e\u003c/a\u003e [ty] Track non-terminal-call constraints in global scope (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23245\"\u003e#23245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/4704c2a4ff3dde2fd29324346720e9516b4fe387\"\u003e\u003ccode\u003e4704c2a\u003c/code\u003e\u003c/a\u003e [ty] Remove unnecessary intermediate collection in `StaticClassLiteral::field...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.15.0...0.15.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools` from 82.0.0 to 82.0.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools/blob/main/NEWS.rst\"\u003esetuptools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ev82.0.1\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the loading of \u003ccode\u003elauncher manifest.xml\u003c/code\u003e file. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5047\"\u003e#5047\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplaced deprecated \u003ccode\u003ejson.__version__\u003c/code\u003e with fixture in tests. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5186\"\u003e#5186\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd advice about how to improve predictability when installing sdists. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5168\"\u003e#5168\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4941\"\u003e#4941\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\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/pypa/setuptools/commit/5a13876673a41e3cd21d4d6e587f53d0fb4fd8e5\"\u003e\u003ccode\u003e5a13876\u003c/code\u003e\u003c/a\u003e Bump version: 82.0.0 → 82.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/51ab8f183f1c4112675d8d6ec6b004406d518ee8\"\u003e\u003ccode\u003e51ab8f1\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5194\"\u003e#5194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/f9c37b20bb0ed11203f676f9683452a4c3ace6f6\"\u003e\u003ccode\u003ef9c37b2\u003c/code\u003e\u003c/a\u003e Docs/CI: Fix intersphinx references (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5195\"\u003e#5195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/8173db2a4fc0f6cb28926b3dba59116b79f435c8\"\u003e\u003ccode\u003e8173db2\u003c/code\u003e\u003c/a\u003e Docs: Fix intersphinx references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/09bafbc74923f2a3591b5b098be75d6af6ca5141\"\u003e\u003ccode\u003e09bafbc\u003c/code\u003e\u003c/a\u003e Fix past tense on newsfragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/461ea56c8e629819a23920f44d9298d4f041abde\"\u003e\u003ccode\u003e461ea56\u003c/code\u003e\u003c/a\u003e Add news fragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/c4ffe535b58235ff9f9ebe90d24a2cffb57e70ae\"\u003e\u003ccode\u003ec4ffe53\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/749258b1a96c7accc05ea7d842fb19fc378866fe\"\u003e\u003ccode\u003e749258b\u003c/code\u003e\u003c/a\u003e Cleanup \u003ccode\u003epkg_resources\u003c/code\u003e dependencies and configuration (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/2019c16701667db1010c62ec11c6ef78c2e58206\"\u003e\u003ccode\u003e2019c16\u003c/code\u003e\u003c/a\u003e Parse \u003ccode\u003eext-module.define-macros\u003c/code\u003e from \u003ccode\u003epyproject.toml\u003c/code\u003e as list of tuples (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/b809c86a37d97fcce290d5f51d4c293ab40bc685\"\u003e\u003ccode\u003eb809c86\u003c/code\u003e\u003c/a\u003e Sync setuptools schema with validate-pyproject (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools/compare/v82.0.0...v82.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools-scm` from 9.2.2 to 10.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAnchor \u003ccode\u003eget_version\u003c/code\u003e in \u003ccode\u003esetup.py\u003c/code\u003e with \u003ccode\u003erelative_to\u003c/code\u003e and \u003ccode\u003efallback_root\u003c/code\u003e so SCM fallbacks (e.g. \u003ccode\u003ePKG-INFO\u003c/code\u003e) do not resolve against the wrong directory when the build cwd is the workspace or repo root. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1302\"\u003e#1302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnter \u003ccode\u003eGlobalOverrides\u003c/code\u003e for \u003ccode\u003eSETUPTOOLS_SCM\u003c/code\u003e when using \u003ccode\u003esetuptools_scm.get_version\u003c/code\u003e / \u003ccode\u003e_get_version\u003c/code\u003e, avoiding implicit context warnings for direct API callers. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1314\"\u003e#1314\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade pre-commit hooks (Ruff, mypy, codespell), align locked Ruff with hooks, and add Ruff per-file configuration for setuptools_scm re-export modules. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1311\"\u003e#1311\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove monorepo-only \u003ccode\u003e../vcs-versioning/src\u003c/code\u003e from \u003ccode\u003ebuild-system.backend-path\u003c/code\u003e so sdists install under PEP 517 (paths must stay inside the source tree). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1306\"\u003e#1306\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003egriffecli\u003c/code\u003e to test dependencies so the API stability check keeps working after the Griffe CLI was split into a separate package. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1310\"\u003e#1310\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix version file not generated for editable installs. Version files are now written to the source tree by default during inference (restoring pre-10.x behavior), and also registered as \u003ccode\u003ebuild_py\u003c/code\u003e outputs so strict editable installs include them in the persistent auxiliary directory. Set \u003ccode\u003eSETUPTOOLS_SCM_WRITE_TO_SOURCE=0\u003c/code\u003e to disable source-tree writing (e.g., for read-only source directories). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1298\"\u003e#1298\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.1\u003c/h2\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSimplify release tag creation to use a single \u003ccode\u003ecreateRelease\u003c/code\u003e API call instead of separate \u003ccode\u003ecreateTag\u003c/code\u003e/\u003ccode\u003ecreateRef\u003c/code\u003e/\u003ccode\u003ecreateRelease\u003c/code\u003e calls, avoiding dangling tag objects on partial failures. (\u003ca href=\"https://github.com/pypa/setuptools-scm/issues/release-pipeline\"\u003e#release-pipeline\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.0\u003c/h2\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 and 3.9 support. Minimum Python version is now 3.10. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esetuptools-scm now depends on vcs-versioning for core version inference logic. This enables other build backends to use the same version inference without setuptools dependency. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eVersion files (\u003ccode\u003ewrite_to\u003c/code\u003e and \u003ccode\u003eversion_file\u003c/code\u003e) are now written to the build directory\nduring \u003ccode\u003ebuild_py\u003c/code\u003e instead of the source tree during version inference.\nThis enables installing packages from read-only source directories (e.g., Bazel builds).\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/v9.2.2...setuptools-scm-v10.0.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `openapi-spec-validator` from 0.7.2 to 0.8.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/releases\"\u003eopenapi-spec-validator's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.8.4\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eJsonschema-rs backend \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/478\"\u003e#478\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.3\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUse resolved cache feature of jsonschema-path \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/479\"\u003e#479\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.2\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eOpenAPI 3.2 support \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/472\"\u003e#472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd OAS 3.1 jsonSchemaDialect-aware schema meta-validation \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/471\"\u003e#471\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.1\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI version option \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/466\"\u003e#466\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSplit CLI error controls into validation and subschema modes \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/469\"\u003e#469\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix malformed schema traversal to report validation errors instead of internal exceptions \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/467\"\u003e#467\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eValidate declared path parameters against path template \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/470\"\u003e#470\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDeprecations\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecates \u003ccode\u003e--error\u003c/code\u003e/\u003ccode\u003e--errors\u003c/code\u003e CLI options \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/469\"\u003e#469\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.0\u003c/h2\u003e\n\u003ch2\u003eUpgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eJsonschema-path 0.4 and openapi-schema-validator 0.7 upgrades \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/459\"\u003e#459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePython 3.13 and 3.14 support \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/392\"\u003e#392\u003c/a\u003e \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/457\"\u003e#457\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate openapi-schema-validator version constraint \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/439\"\u003e#439\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBackward incompatibilities\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 and 3.9 drop \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/392\"\u003e#392\u003c/a\u003e \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/456\"\u003e#456\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.0b3\u003c/h2\u003e\n\u003ch2\u003eUpgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eJsonschema-path 0.4.0b8 upgrade \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/455\"\u003e#455\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/python-openapi/openapi-spec-validator/commit/cca400fbe29ebaea5c3b3e7db04548db260690ea\"\u003e\u003ccode\u003ecca400f\u003c/code\u003e\u003c/a\u003e Version 0.8.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/33585eab47df9c3d6bd18479463da15fb0007f36\"\u003e\u003ccode\u003e33585ea\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/478\"\u003e#478\u003c/a\u003e from python-openapi/poc/rust-backend\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/a10dfe6ce166865eb36c75b2a473d470cc5bb0e1\"\u003e\u003ccode\u003ea10dfe6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/480\"\u003e#480\u003c/a\u003e from python-openapi/copilot/sub-pr-478\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/da9c9cbce67e12764db36886a850eb5a9017dc51\"\u003e\u003ccode\u003eda9c9cb\u003c/code\u003e\u003c/a\u003e Address review feedback: fix docstring, trailing whitespace, f-string, instal...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/629f4e2bdfe60ce54c51f8e8cdce54f6f83f1da7\"\u003e\u003ccode\u003e629f4e2\u003c/code\u003e\u003c/a\u003e Initial plan\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/df9ba9b77384f1102e98033219feddb64b4e85fa\"\u003e\u003ccode\u003edf9ba9b\u003c/code\u003e\u003c/a\u003e Rust backend\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/a093f9c4783792da2b181c03e718844b57cdb19c\"\u003e\u003ccode\u003ea093f9c\u003c/code\u003e\u003c/a\u003e Version 0.8.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/0d757b58adc86d3b939b048aa4263ddea6462fd3\"\u003e\u003ccode\u003e0d757b5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/479\"\u003e#479\u003c/a\u003e from python-openapi/feature/upgrade-jsonschema-path-0...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/0bbd76166fcd1833dcbe63cf335a3da26fdc9015\"\u003e\u003ccode\u003e0bbd761\u003c/code\u003e\u003c/a\u003e Expose resolved cache\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/023da9563279a37bcedb5ffb6208f663e46a53cc\"\u003e\u003ccode\u003e023da95\u003c/code\u003e\u003c/a\u003e Upgrade jsonschema-path 0.4.3\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/compare/0.7.2...0.8.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cfn-lint` from 1.44.0 to 1.47.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/releases\"\u003ecfn-lint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v1.47.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ca href=\"https://github.com/aws-cloudformation/cfn-python-lint/blob/main/docs/rules.md#E3677\"\u003eE3063\u003c/a\u003e false positive when Code is a string (aws-cli pattern) by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4399\"\u003eaws-cloudformation/cfn-lint#4399\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCap resolve_value permutations to prevent exponential blowup by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca ...\n\n_Description has been truncated_","html_url":"https://github.com/ASFHyP3/hyp3/pull/3052","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ASFHyP3%2Fhyp3/issues/3052","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/3052/packages"},{"uuid":"4173494499","node_id":"PR_kwDOLZhmmc7Ouwbr","number":352,"state":"closed","title":"Bump the pip-deps group across 1 directory with 10 updates","user":"dependabot[bot]","labels":["bumpless","major"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-03-31T22:43:17.000Z","author_association":null,"state_reason":null,"created_at":"2026-03-30T19:28:17.000Z","updated_at":"2026-03-31T22:43:18.000Z","time_to_close":98100,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"pip-deps","update_count":10,"packages":[{"name":"setuptools-scm","old_version":"9.2.2","new_version":"10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"},{"name":"geopandas","old_version":"1.1.2","new_version":"1.1.3","repository_url":"https://github.com/geopandas/geopandas"},{"name":"requests","old_version":"2.32.5","new_version":"2.33.1","repository_url":"https://github.com/psf/requests"},{"name":"numpy","old_version":"2.4.2","new_version":"2.4.4","repository_url":"https://github.com/numpy/numpy"},{"name":"boto3","old_version":"1.42.61","new_version":"1.42.78","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.42.61","new_version":"1.42.78","repository_url":"https://github.com/boto/botocore"},{"name":"asf-search","old_version":"12.0.2","new_version":"12.0.6","repository_url":"https://github.com/asfadmin/Discovery-asf_search"},{"name":"cfn-lint","old_version":"1.46.0","new_version":"1.47.1","repository_url":"https://github.com/aws-cloudformation/cfn-lint"},{"name":"ruff","old_version":"0.15.4","new_version":"0.15.8","repository_url":"https://github.com/astral-sh/ruff"},{"name":"moto","old_version":"5.1.21","new_version":"5.1.22","repository_url":"https://github.com/getmoto/moto"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-deps group with 10 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [setuptools-scm](https://github.com/pypa/setuptools-scm) | `9.2.2` | `10.0.5` |\n| [geopandas](https://github.com/geopandas/geopandas) | `1.1.2` | `1.1.3` |\n| [requests](https://github.com/psf/requests) | `2.32.5` | `2.33.1` |\n| [numpy](https://github.com/numpy/numpy) | `2.4.2` | `2.4.4` |\n| [boto3](https://github.com/boto/boto3) | `1.42.61` | `1.42.78` |\n| [botocore](https://github.com/boto/botocore) | `1.42.61` | `1.42.78` |\n| [asf-search](https://github.com/asfadmin/Discovery-asf_search) | `12.0.2` | `12.0.6` |\n| [cfn-lint](https://github.com/aws-cloudformation/cfn-lint) | `1.46.0` | `1.47.1` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.4` | `0.15.8` |\n| [moto](https://github.com/getmoto/moto) | `5.1.21` | `5.1.22` |\n\n\nUpdates `setuptools-scm` from 9.2.2 to 10.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAnchor \u003ccode\u003eget_version\u003c/code\u003e in \u003ccode\u003esetup.py\u003c/code\u003e with \u003ccode\u003erelative_to\u003c/code\u003e and \u003ccode\u003efallback_root\u003c/code\u003e so SCM fallbacks (e.g. \u003ccode\u003ePKG-INFO\u003c/code\u003e) do not resolve against the wrong directory when the build cwd is the workspace or repo root. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1302\"\u003e#1302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnter \u003ccode\u003eGlobalOverrides\u003c/code\u003e for \u003ccode\u003eSETUPTOOLS_SCM\u003c/code\u003e when using \u003ccode\u003esetuptools_scm.get_version\u003c/code\u003e / \u003ccode\u003e_get_version\u003c/code\u003e, avoiding implicit context warnings for direct API callers. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1314\"\u003e#1314\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade pre-commit hooks (Ruff, mypy, codespell), align locked Ruff with hooks, and add Ruff per-file configuration for setuptools_scm re-export modules. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1311\"\u003e#1311\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove monorepo-only \u003ccode\u003e../vcs-versioning/src\u003c/code\u003e from \u003ccode\u003ebuild-system.backend-path\u003c/code\u003e so sdists install under PEP 517 (paths must stay inside the source tree). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1306\"\u003e#1306\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003egriffecli\u003c/code\u003e to test dependencies so the API stability check keeps working after the Griffe CLI was split into a separate package. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1310\"\u003e#1310\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix version file not generated for editable installs. Version files are now written to the source tree by default during inference (restoring pre-10.x behavior), and also registered as \u003ccode\u003ebuild_py\u003c/code\u003e outputs so strict editable installs include them in the persistent auxiliary directory. Set \u003ccode\u003eSETUPTOOLS_SCM_WRITE_TO_SOURCE=0\u003c/code\u003e to disable source-tree writing (e.g., for read-only source directories). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1298\"\u003e#1298\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.1\u003c/h2\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSimplify release tag creation to use a single \u003ccode\u003ecreateRelease\u003c/code\u003e API call instead of separate \u003ccode\u003ecreateTag\u003c/code\u003e/\u003ccode\u003ecreateRef\u003c/code\u003e/\u003ccode\u003ecreateRelease\u003c/code\u003e calls, avoiding dangling tag objects on partial failures. (\u003ca href=\"https://github.com/pypa/setuptools-scm/issues/release-pipeline\"\u003e#release-pipeline\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.0\u003c/h2\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 and 3.9 support. Minimum Python version is now 3.10. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esetuptools-scm now depends on vcs-versioning for core version inference logic. This enables other build backends to use the same version inference without setuptools dependency. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eVersion files (\u003ccode\u003ewrite_to\u003c/code\u003e and \u003ccode\u003eversion_file\u003c/code\u003e) are now written to the build directory\nduring \u003ccode\u003ebuild_py\u003c/code\u003e instead of the source tree during version inference.\nThis enables installing packages from read-only source directories (e.g., Bazel builds).\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/v9.2.2...setuptools-scm-v10.0.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geopandas` from 1.1.2 to 1.1.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geopandas/geopandas/releases\"\u003egeopandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.1.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eThis release addresses a handful of small compatibility issues with pandas 3.0 and backports some bugfixes.\u003c/p\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImproved compatibility with pandas 3.0 Copy-on-Write feature, making use of deferred copies where possible (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3298\"\u003e#3298\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3711\"\u003e#3711\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eGeoSeries.sample_points\u003c/code\u003e not accepting list-like \u003ccode\u003esize\u003c/code\u003e when generating points using\n\u003ccode\u003epointpaterns\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3710\"\u003e#3710\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efrom_wkt/wkb\u003c/code\u003e to correctly handle missing values with pandas 3 (where the new \u003ccode\u003estr\u003c/code\u003e dtype is used) (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3714\"\u003e#3714\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eto_postgis\u003c/code\u003e to correctly handle missing values with pandas 3 (where the new \u003ccode\u003estr\u003c/code\u003e dtype is used) (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3722\"\u003e#3722\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUsing \u003ccode\u003eloc\u003c/code\u003e to assign column values to a new row index now correctly preserves the column CRS and geometry dtype\non pandas 3.1, due to an upstream bug fix (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3741\"\u003e#3741\u003c/a\u003e, Pandas \u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/62523\"\u003e#62523\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRandom states in \u003ccode\u003epointpats\u003c/code\u003e methods of \u003ccode\u003esample_points\u003c/code\u003e can now be fixed with \u003ccode\u003erng\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3737\"\u003e#3737\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geopandas/geopandas/compare/v1.1.2...v1.1.3\"\u003ehttps://github.com/geopandas/geopandas/compare/v1.1.2...v1.1.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/geopandas/geopandas/blob/main/CHANGELOG.md\"\u003egeopandas's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.1.3 (March 10, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release addresses a handful of small compatibility issues with pandas 3.0 and backports some bugfixes.\u003c/p\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImproved compatibility with pandas 3.0 Copy-on-Write feature, making use of deferred copies where possible (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3298\"\u003e#3298\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3711\"\u003e#3711\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eGeoSeries.sample_points\u003c/code\u003e not accepting list-like \u003ccode\u003esize\u003c/code\u003e when generating points using\n\u003ccode\u003epointpaterns\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3710\"\u003e#3710\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efrom_wkt/wkb\u003c/code\u003e to correctly handle missing values with pandas 3 (where the new \u003ccode\u003estr\u003c/code\u003e dtype is used) (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3714\"\u003e#3714\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eto_postgis\u003c/code\u003e to correctly handle missing values with pandas 3 (where the new \u003ccode\u003estr\u003c/code\u003e dtype is used) (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3722\"\u003e#3722\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUsing \u003ccode\u003eloc\u003c/code\u003e to assign column values to a new row index now correctly preserves the column CRS and geometry dtype\non pandas 3.1, due to an upstream bug fix (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3741\"\u003e#3741\u003c/a\u003e, Pandas \u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/62523\"\u003e#62523\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRandom states in \u003ccode\u003epointpats\u003c/code\u003e methods of \u003ccode\u003esample_points`` can now be fixed with \u003c/code\u003erng` (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3737\"\u003e#3737\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/geopandas/geopandas/commit/f5fe3ff5f0e473603cd0e81673d9f1f300f4975d\"\u003e\u003ccode\u003ef5fe3ff\u003c/code\u003e\u003c/a\u003e RLS: v1.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/c1046702f4444659cb9cf3d8cb389ecd45c35e3c\"\u003e\u003ccode\u003ec104670\u003c/code\u003e\u003c/a\u003e pointpats \u0026lt;2.5.3 test compat\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/af36b140f911641e9a7909e3be76e766d7383c22\"\u003e\u003ccode\u003eaf36b14\u003c/code\u003e\u003c/a\u003e ENH: add \u003ccode\u003epointpats\u003c/code\u003e as an optional dependency \u0026amp; pass in \u003ccode\u003erng\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3737\"\u003e#3737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/d9ed84a9d4e33524498eac197d11ece3ba67637e\"\u003e\u003ccode\u003ed9ed84a\u003c/code\u003e\u003c/a\u003e COMPAT: fix failing test for loc concatenation crs preservation with pandas 3...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/1b1ddc23796bbe06589f2262d548219d0b065daf\"\u003e\u003ccode\u003e1b1ddc2\u003c/code\u003e\u003c/a\u003e MAINT: use trusted publishing for releasing to PyPI (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3734\"\u003e#3734\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/8d0c05dbd588031f9c10913b3302b2d347dc9e8e\"\u003e\u003ccode\u003e8d0c05d\u003c/code\u003e\u003c/a\u003e changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/a424f1750945bcc9a6c6122c7aca8b0829202201\"\u003e\u003ccode\u003ea424f17\u003c/code\u003e\u003c/a\u003e Avoid returning deep copies with pandas 3.0 (with Copy-on-Write) (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3298\"\u003e#3298\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/03fa43e9029ced09314b915277309e7fee7097ba\"\u003e\u003ccode\u003e03fa43e\u003c/code\u003e\u003c/a\u003e MAINT: cleanup release warning for project.license table (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3603\"\u003e#3603\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/29fdb3057195aa4cb7adbd771425e3a47ad52b66\"\u003e\u003ccode\u003e29fdb30\u003c/code\u003e\u003c/a\u003e CI: remove usage of PANDAS_FUTURE_INFER_STRINGS=0 (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3715\"\u003e#3715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/9070e1346fc070ee077cb7027f6fa7737391402e\"\u003e\u003ccode\u003e9070e13\u003c/code\u003e\u003c/a\u003e missing changelog entries\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/geopandas/geopandas/compare/v1.1.2...v1.1.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.5 to 2.33.1\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.33.1\u003c/h2\u003e\n\u003ch2\u003e2.33.1 (2026-03-30)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed test cleanup for CVE-2026-25645 to avoid leaving unnecessary\nfiles in the tmp directory. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed Content-Type header parsing for malformed values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved error consistency for malformed header values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\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/ferdnyc\"\u003e\u003ccode\u003e@​ferdnyc\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7277\"\u003epsf/requests#7277\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#2331-2026-03-30\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2331-2026-03-30\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.33.0\u003c/h2\u003e\n\u003ch2\u003e2.33.0 (2026-03-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e📣 Requests is adding inline types. If you have a typed code base that uses Requests, please take a look at \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003e#7271\u003c/a\u003e. Give it a try, and report any gaps or feedback you may have in the issue. 📣\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2026-25645 \u003ccode\u003erequests.utils.extract_zipped_paths\u003c/code\u003e now extracts contents to a non-deterministic location to prevent malicious file replacement. This does not affect default usage of Requests, only applications calling the utility function directly.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated to a PEP 517 build system using setuptools. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7012\"\u003e#7012\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\u003eFixed an issue where an empty netrc entry could cause malformed authentication to be applied to Requests on Python 3.11+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7205\"\u003e#7205\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for Python 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7196\"\u003e#7196\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDocumentation\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eVarious typo fixes and doc improvements.\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/M0d3v1\"\u003e\u003ccode\u003e@​M0d3v1\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/6865\"\u003epsf/requests#6865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aminvakil\"\u003e\u003ccode\u003e@​aminvakil\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7220\"\u003epsf/requests#7220\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/E8Price\"\u003e\u003ccode\u003e@​E8Price\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/6960\"\u003epsf/requests#6960\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitre88\"\u003e\u003ccode\u003e@​mitre88\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7244\"\u003epsf/requests#7244\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/magsen\"\u003e\u003ccode\u003e@​magsen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/6553\"\u003epsf/requests#6553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rohan5commit\"\u003e\u003ccode\u003e@​Rohan5commit\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7227\"\u003epsf/requests#7227\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#2330-2026-03-25\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2330-2026-03-25\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/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.33.1 (2026-03-30)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed test cleanup for CVE-2026-25645 to avoid leaving unnecessary\nfiles in the tmp directory. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed Content-Type header parsing for malformed values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved error consistency for malformed header values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.33.0 (2026-03-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e📣 Requests is adding inline types. If you have a typed code base that\nuses Requests, please take a look at \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003e#7271\u003c/a\u003e. Give it a try, and report\nany gaps or feedback you may have in the issue. 📣\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2026-25645 \u003ccode\u003erequests.utils.extract_zipped_paths\u003c/code\u003e now extracts\ncontents to a non-deterministic location to prevent malicious file\nreplacement. This does not affect default usage of Requests, only\napplications calling the utility function directly.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated to a PEP 517 build system using setuptools. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7012\"\u003e#7012\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\u003eFixed an issue where an empty netrc entry could cause\nmalformed authentication to be applied to Requests on\nPython 3.11+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7205\"\u003e#7205\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for Python 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7196\"\u003e#7196\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDocumentation\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eVarious typo fixes and doc improvements.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/111d2b77790bf49943c0dfa09b365371c24aec7e\"\u003e\u003ccode\u003e111d2b7\u003c/code\u003e\u003c/a\u003e v2.33.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/f0198e6dfc431a2293dc16e1b1e8fcddc910a7f3\"\u003e\u003ccode\u003ef0198e6\u003c/code\u003e\u003c/a\u003e Fix malformed value parsing for Content-Type (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/bc7dd0fc4d56e808bcdd85ac2d797b3107c89259\"\u003e\u003ccode\u003ebc7dd0f\u003c/code\u003e\u003c/a\u003e Fix cosmetic header validity parsing regex (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4443b1a847b190010c2972a658924b98b5db6360\"\u003e\u003ccode\u003e4443b1a\u003c/code\u003e\u003c/a\u003e Fix unintended test extra (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7306\"\u003e#7306\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/389eea58dfb2f2ee096421a812e3af29c0298951\"\u003e\u003ccode\u003e389eea5\u003c/code\u003e\u003c/a\u003e Cleanup extracted file after extract_zipped_path test (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7407309c8a8a73aa2f4337184025d440bbedab7a\"\u003e\u003ccode\u003e7407309\u003c/code\u003e\u003c/a\u003e Packaging: DRY out extras definition (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7277\"\u003e#7277\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/bc04dfd6dad4cb02cd92f5daa81eb562d280a761\"\u003e\u003ccode\u003ebc04dfd\u003c/code\u003e\u003c/a\u003e v2.33.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/66d21cb07bd6255b1280291c4fafb71803cdb3b7\"\u003e\u003ccode\u003e66d21cb\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/8b9bc8fc0f63be84602387913c4b689f19efd028\"\u003e\u003ccode\u003e8b9bc8f\u003c/code\u003e\u003c/a\u003e Move badges to top of README (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7293\"\u003e#7293\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e331a288f369973f5de0ec8901c94cae4fa87286\"\u003e\u003ccode\u003ee331a28\u003c/code\u003e\u003c/a\u003e Remove unused extraction call (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7292\"\u003e#7292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.5...v2.33.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `numpy` from 2.4.2 to 2.4.4\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\u003e2.4.4 (Mar 29, 2026)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.4.4 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.4.4 is a patch release that fixes bugs discovered after the 2.4.3\nrelease. It should finally close issue \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30816\"\u003e#30816\u003c/a\u003e, the OpenBLAS threading problem\non ARM.\u003c/p\u003e\n\u003cp\u003eThis release supports Python versions 3.11-3.14\u003c/p\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eA total of 8 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\u003eCharles Harris\u003c/li\u003e\n\u003cli\u003eDaniel Haag +\u003c/li\u003e\n\u003cli\u003eDenis Prokopenko +\u003c/li\u003e\n\u003cli\u003eHarshith J +\u003c/li\u003e\n\u003cli\u003eKoki Watanabe\u003c/li\u003e\n\u003cli\u003eMarten van Kerkwijk\u003c/li\u003e\n\u003cli\u003eMatti Picus\u003c/li\u003e\n\u003cli\u003eNathan Goldbaum\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ePull requests merged\u003c/h2\u003e\n\u003cp\u003eA total of 7 pull requests were merged for this release.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30978\"\u003e#30978\u003c/a\u003e: MAINT: Prepare 2.4.x for further development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31049\"\u003e#31049\u003c/a\u003e: BUG: Add test to reproduce problem described in \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30816\"\u003e#30816\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30818\"\u003e#30818\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31052\"\u003e#31052\u003c/a\u003e: BUG: fix FNV-1a 64-bit selection by using NPY_SIZEOF_UINTP (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31035\"\u003e#31035\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31053\"\u003e#31053\u003c/a\u003e: BUG: avoid warning on ufunc with where=True and no output\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31058\"\u003e#31058\u003c/a\u003e: DOC: document caveats of ndarray.resize on 3.14 and newer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31079\"\u003e#31079\u003c/a\u003e: TST: fix POWER VSX feature mapping (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30801\"\u003e#30801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31084\"\u003e#31084\u003c/a\u003e: MAINT: numpy.i: Replace deprecated \u003ccode\u003esprintf\u003c/code\u003e with \u003ccode\u003esnprintf\u003c/code\u003e...\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.4.3 (Mar 9, 2026)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.4.3 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.4.3 is a patch release that fixes bugs discovered after the\n2.4.2 release. The most user visible fix may be a threading fix for\nOpenBLAS on ARM, closing issue \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30816\"\u003e#30816\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis release supports Python versions 3.11-3.14\u003c/p\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eA total of 11 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\u003eAntareep Sarkar +\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/be93fe2960dbf49b4647f5783c66d967fb2c65b5\"\u003e\u003ccode\u003ebe93fe2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31090\"\u003e#31090\u003c/a\u003e from charris/prepare-2.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/f5245dc7ea5c6279c59cb0d5de81113229841290\"\u003e\u003ccode\u003ef5245dc\u003c/code\u003e\u003c/a\u003e REL: Prepare for the NumPy 2.4.4 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/02e838ba270a5ca3dd8afc5a31c090cd34a56615\"\u003e\u003ccode\u003e02e838b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31084\"\u003e#31084\u003c/a\u003e from charris/backport-31056\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/fa74b2d05f8f7604bf6635d5280c3216c8ec667f\"\u003e\u003ccode\u003efa74b2d\u003c/code\u003e\u003c/a\u003e MAINT: numpy.i: Replace deprecated \u003ccode\u003esprintf\u003c/code\u003e with \u003ccode\u003esnprintf\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31056\"\u003e#31056\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/533a6db96dfa2556a61102a58c35fd64eaf3fa2b\"\u003e\u003ccode\u003e533a6db\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31079\"\u003e#31079\u003c/a\u003e from charris/backport-20801\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/9e496cbd0a281195bd779ae1833f2a8f4a1d46a7\"\u003e\u003ccode\u003e9e496cb\u003c/code\u003e\u003c/a\u003e TST: fix POWER VSX feature mapping (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30801\"\u003e#30801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/8052c4b69ef18e582709af946f93f9e58b848f39\"\u003e\u003ccode\u003e8052c4b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31058\"\u003e#31058\u003c/a\u003e from charris/backport-31021\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/7f13b5ad2b69fd6ea6aa3af7036b2dcf98e96486\"\u003e\u003ccode\u003e7f13b5a\u003c/code\u003e\u003c/a\u003e MAINT: Skip test on PyPy.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/4c5fdd66c8f379a1e2b3f40fa62bd0b87769d1c7\"\u003e\u003ccode\u003e4c5fdd6\u003c/code\u003e\u003c/a\u003e MAINT: Remove unused import of tracemalloc.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/a3ca5ed354b26e0fd6e35bf29765a24271ed7c3a\"\u003e\u003ccode\u003ea3ca5ed\u003c/code\u003e\u003c/a\u003e Update numpy/_core/src/multiarray/shape.c\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/numpy/numpy/compare/v2.4.2...v2.4.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.42.61 to 1.42.78\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b5acf8b4da83625fe3a4bbc37f44d3563a90bedb\"\u003e\u003ccode\u003eb5acf8b\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.78'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/1da17a5f5f168ca19917cb3b5c1389b1918c1a6e\"\u003e\u003ccode\u003e1da17a5\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.78\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/e298b6480047c39f047a9805ce5a69654eda2c2b\"\u003e\u003ccode\u003ee298b64\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/48369eaf9203ac46d0621f2a6506cbfa369c3cff\"\u003e\u003ccode\u003e48369ea\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.77'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/8c30411a442a21b8bccc9eb2fde60ab76751ef35\"\u003e\u003ccode\u003e8c30411\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.77' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/4398c8e0aee88fe1c5aacb415683e75ccde1b3a3\"\u003e\u003ccode\u003e4398c8e\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.77\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/7c449e2e3bfea638a8cf9892ba8096ec1ff4d565\"\u003e\u003ccode\u003e7c449e2\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/ee6c3e4e4ccc20774293d6b4022a17abe495a28f\"\u003e\u003ccode\u003eee6c3e4\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.76'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/a5ad9c3e75cf3ace6b3368c60c9b325d33ca2975\"\u003e\u003ccode\u003ea5ad9c3\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.76' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/1abf6403e3a0a63520ca4b3db62428061ef17cf2\"\u003e\u003ccode\u003e1abf640\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.76\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.42.61...1.42.78\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `botocore` from 1.42.61 to 1.42.78\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/08282cde6cf5488e3b424166280fdb6e68b01c35\"\u003e\u003ccode\u003e08282cd\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.78'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/059d997154533c9d417daebe977cdf2df46b94ef\"\u003e\u003ccode\u003e059d997\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.78\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/9e1c51150b220d32bff523011a69619be1b94d7c\"\u003e\u003ccode\u003e9e1c511\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/a42e6cf913b10093f670945aaf4c6096c729bdeb\"\u003e\u003ccode\u003ea42e6cf\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.77'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/ea561b33ce319983952f5b5e4d56d51785a933e8\"\u003e\u003ccode\u003eea561b3\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.77' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/7906a347486cf8213b27fbf0ffd7620ae181efec\"\u003e\u003ccode\u003e7906a34\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.77\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/7f9c3cd08ae7e1780d56b9402aa9738e6af881e4\"\u003e\u003ccode\u003e7f9c3cd\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/1db4cef12c3f2e2aad98468af231dc0bcbf95353\"\u003e\u003ccode\u003e1db4cef\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/eded7cee23beeb96b4bb2ab47c0ab97c6312e87f\"\u003e\u003ccode\u003eeded7ce\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.76'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/85f623c331079298dd89aafd75ad33626d2a15b5\"\u003e\u003ccode\u003e85f623c\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.76' into develop\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/botocore/compare/1.42.61...1.42.78\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asf-search` from 12.0.2 to 12.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/releases\"\u003easf-search's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev12.0.6\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.5...v12.0.6\"\u003ev12.0.6\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e module added as top level module\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_nisar_orbit_ephemeras()\u003c/code\u003e method returns dictionary with latest \u003ccode\u003eNISAR\u003c/code\u003e \u003ccode\u003ePOE\u003c/code\u003e, \u003ccode\u003eMOE\u003c/code\u003e, \u003ccode\u003eNOE\u003c/code\u003e, and \u003ccode\u003eFOE\u003c/code\u003e orbit ephemeras\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix track based searches when \u003ccode\u003eprocessingLevel\u003c/code\u003e specified on \u003ccode\u003eNISAR\u003c/code\u003e dataset searches\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.5\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.4...v12.0.5\"\u003ev12.0.5\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDIST-ALERT-S1 product type to OPERA dataset\n\u003cul\u003e\n\u003cli\u003eTileID searchable attribute\u003c/li\u003e\n\u003cli\u003eproductVersion attribute\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix edge-case with \u003ccode\u003eplatform\u003c/code\u003e \u0026amp; \u003ccode\u003eprocessingLevel\u003c/code\u003e concept-id aliasing\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.3...v12.0.4\"\u003ev12.0.4\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003eNISAR\u003c/code\u003e dataset/platform concept-ids\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.2...v12.0.3\"\u003ev12.0.3\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eariaVersion\u003c/code\u003e as a searchable attribute\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eorbitType\u003c/code\u003e to \u003ccode\u003eNISARProduct\u003c/code\u003e properties dictionary\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/asfadmin/Discovery-asf_search/blob/master/CHANGELOG.md\"\u003easf-search's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.5...v12.0.6\"\u003ev12.0.6\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e module added as top level module\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_nisar_orbit_ephemeras()\u003c/code\u003e method returns dictionary with latest \u003ccode\u003eNISAR\u003c/code\u003e \u003ccode\u003ePOE\u003c/code\u003e, \u003ccode\u003eMOE\u003c/code\u003e, \u003ccode\u003eNOE\u003c/code\u003e, and \u003ccode\u003eFOE\u003c/code\u003e orbit ephemeras\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix track based searches when \u003ccode\u003eprocessingLevel\u003c/code\u003e specified on \u003ccode\u003eNISAR\u003c/code\u003e dataset searches\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.4...v12.0.5\"\u003ev12.0.5\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDIST-ALERT-S1 product type to OPERA dataset\n\u003cul\u003e\n\u003cli\u003eTileID searchable attribute\u003c/li\u003e\n\u003cli\u003eproductVersion attribute\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix edge-case with \u003ccode\u003eplatform\u003c/code\u003e \u0026amp; \u003ccode\u003eprocessingLevel\u003c/code\u003e concept-id aliasing\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.3...v12.0.4\"\u003ev12.0.4\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003eNISAR\u003c/code\u003e dataset/platform concept-ids\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.2...v12.0.3\"\u003ev12.0.3\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eariaVersion\u003c/code\u003e as a searchable attribute\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eorbitType\u003c/code\u003e to \u003ccode\u003eNISARProduct\u003c/code\u003e properties dictionary\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/0f8226f7d7f36fcca5bb28d111636d6e7abbbfc8\"\u003e\u003ccode\u003e0f8226f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/440\"\u003e#440\u003c/a\u003e from asfadmin/feat-nisar-oe-helper\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/47e6593b8ee5530077022f43a0600e7c421350db\"\u003e\u003ccode\u003e47e6593\u003c/code\u003e\u003c/a\u003e feat: adds utils module with get_nisar_orbit_ephemeras() method.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/66fadbb5bc968acec0f095b565dccc244879c79e\"\u003e\u003ccode\u003e66fadbb\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/439\"\u003e#439\u003c/a\u003e from asfadmin/bug-nisar-track-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/95cc06762259f72db17381748091aa54eb658c72\"\u003e\u003ccode\u003e95cc067\u003c/code\u003e\u003c/a\u003e chore: update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/1f601edbe40ce14756c3c98cb853e35e8e5761c1\"\u003e\u003ccode\u003e1f601ed\u003c/code\u003e\u003c/a\u003e bug: fix regression with frame search\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/bb7dfaaae1dc35449a6e7369f3e7726d2969fb03\"\u003e\u003ccode\u003ebb7dfaa\u003c/code\u003e\u003c/a\u003e chore: add todo comment for nsiar frame bug\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/6ec9957bbff797283f820fd3f90dcab6cd1b0335\"\u003e\u003ccode\u003e6ec9957\u003c/code\u003e\u003c/a\u003e fix: fix track not working when only specificying nisar dataset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/3efaa2862ac61c9bd1fcbfcea6bca5d472f90656\"\u003e\u003ccode\u003e3efaa28\u003c/code\u003e\u003c/a\u003e test: update authenticated NISAR test case\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/3e3d5777440aaff9303a247dbfa8c7f3b5c04078\"\u003e\u003ccode\u003e3e3d577\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/437\"\u003e#437\u003c/a\u003e from asfadmin/feat-opera-dist\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/9e0f3e86acfd67a0483f3e01e3de2909ac64f5b5\"\u003e\u003ccode\u003e9e0f3e8\u003c/code\u003e\u003c/a\u003e fix: add tileID to search.py\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.2...v12.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cfn-lint` from 1.46.0 to 1.47.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/releases\"\u003ecfn-lint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v1.47.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ca href=\"https://github.com/aws-cloudformation/cfn-python-lint/blob/main/docs/rules.md#E3677\"\u003eE3063\u003c/a\u003e false positive when Code is a string (aws-cli pattern) by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4399\"\u003eaws-cloudformation/cfn-lint#4399\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCap resolve_value permutations to prevent exponential blowup by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4394\"\u003eaws-cloudformation/cfn-lint#4394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: maintenance guardduty policy by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4400\"\u003eaws-cloudformation/cfn-lint#4400\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eEngineVersion\u003c/code\u003e of \u003ccode\u003e8.0.0\u003c/code\u003e to DocDB Cluster by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4401\"\u003eaws-cloudformation/cfn-lint#4401\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport multi-attribute composite keys in DynamoDB GSI KeySchema by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4402\"\u003eaws-cloudformation/cfn-lint#4402\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow JSONata string expressions for Arguments in Step Functions by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4403\"\u003eaws-cloudformation/cfn-lint#4403\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-24\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4404\"\u003eaws-cloudformation/cfn-lint#4404\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/compare/v1.47.0...v1.47.1\"\u003ehttps://github.com/aws-cloudformation/cfn-lint/compare/v1.47.0...v1.47.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease v1.47.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove Python 3.9 support (EOL October 2025) by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4383\"\u003eaws-cloudformation/cfn-lint#4383\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add region filtering to --update-specs by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4382\"\u003eaws-cloudformation/cfn-lint#4382\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd unknown validation state for intrinsic functions in composite validators by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4384\"\u003eaws-cloudformation/cfn-lint#4384\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-10\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4381\"\u003eaws-cloudformation/cfn-lint#4381\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix/skip resolve unconstrained schema by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4388\"\u003eaws-cloudformation/cfn-lint#4388\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump setuptools from 82.0.0 to 82.0.1 in /requirements 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/aws-cloudformation/cfn-lint/pull/4385\"\u003eaws-cloudformation/cfn-lint#4385\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-13\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4386\"\u003eaws-cloudformation/cfn-lint#4386\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/compare/v1.46.0...v1.47.0\"\u003ehttps://github.com/aws-cloudformation/cfn-lint/compare/v1.46.0...v1.47.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/aws-cloudformation/cfn-lint/blob/main/CHANGELOG.md\"\u003ecfn-lint's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.47.1\u003c/h3\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ca href=\"https://github.com/aws-cloudformation/cfn-python-lint/blob/main/docs/rules.md#E3677\"\u003eE3063\u003c/a\u003e false positive when Code is a string (aws-cli pattern) by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4399\"\u003eaws-cloudformation/cfn-lint#4399\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCap resolve_value permutations to prevent exponential blowup by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4394\"\u003eaws-cloudformation/cfn-lint#4394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: maintenance guardduty policy by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4400\"\u003eaws-cloudformation/cfn-lint#4400\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eEngineVersion\u003c/code\u003e of \u003ccode\u003e8.0.0\u003c/code\u003e to DocDB Cluster by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4401\"\u003eaws-cloudformation/cfn-lint#4401\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport multi-attribute composite keys in DynamoDB GSI KeySchema by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4402\"\u003eaws-cloudformation/cfn-lint#4402\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow JSONata string expressions for Arguments in Step Functions by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4403\"\u003eaws-cloudformation/cfn-lint#4403\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-24\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4404\"\u003eaws-cloudformation/cfn-lint#4404\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/compare/v1.47.0...v1.47.1\"\u003ehttps://github.com/aws-cloudformation/cfn-lint/compare/v1.47.0...v1.47.1\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003ev1.47.0\u003c/h3\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove Python 3.9 support (EOL October 2025) by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4383\"\u003eaws-cloudformation/cfn-lint#4383\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add region filtering to --update-specs by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4382\"\u003eaws-cloudformation/cfn-lint#4382\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd unknown validation state for intrinsic functions in composite validators by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4384\"\u003eaws-cloudformation/cfn-lint#4384\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-10\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4381\"\u003eaws-cloudformation/cfn-lint#4381\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix/skip resolve unconstrained schema by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4388\"\u003eaws-cloudformation/cfn-lint#4388\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump setuptools from 82.0.0 to 82.0.1 in /requirements 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/aws-cloudformation/cfn-lint/pull/4385\"\u003eaws-cloudformation/cfn-lint#4385\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-13\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4386\"\u003eaws-cloudformation/cfn-lint#4386\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/compare/v1.46.0...v1.47.0\"\u003ehttps://github.com/aws-cloudformation/cfn-lint/compare/v1.46.0...v1.47.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/aws-cloudformation/cfn-lint/commit/a35195334db17554ab3f899ef3ea875ff4dd3cbe\"\u003e\u003ccode\u003ea351953\u003c/code\u003e\u003c/a\u003e Release v1.47.1 (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4407\"\u003e#4407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/753166bf1b0c38aeb5a71cfc12fe9e0b16f15dfc\"\u003e\u003ccode\u003e753166b\u003c/code\u003e\u003c/a\u003e Update CloudFormation schemas to 2026-03-24 (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/e0b701457e08db65d2b5307fbb7f02cb2da684d0\"\u003e\u003ccode\u003ee0b7014\u003c/code\u003e\u003c/a\u003e Allow JSONata string expressions for Arguments in Step Functions (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4403\"\u003e#4403\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/99dcefb6786f7e4b2447f7206836bb113d9c0fac\"\u003e\u003ccode\u003e99dcefb\u003c/code\u003e\u003c/a\u003e Support multi-attribute composite keys in DynamoDB GSI KeySchema (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4402\"\u003e#4402\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/001d1d178d685af19f91a55cd81fc418c236b7db\"\u003e\u003ccode\u003e001d1d1\u003c/code\u003e\u003c/a\u003e Add EngineVersion of 8.0.0 to DocDB Cluster (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/5d6f815ab3e7e13c96725236bca31f7d3d584d56\"\u003e\u003ccode\u003e5d6f815\u003c/code\u003e\u003c/a\u003e Fix KeyError when AmazonGuardDutyFullAccess policy no longer exists (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4400\"\u003e#4400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/bb96eb39dd0093d73f9852c119fde00e8285db98\"\u003e\u003ccode\u003ebb96eb3\u003c/code\u003e\u003c/a\u003e Cap resolve_value permutations to prevent exponential blowup (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4394\"\u003e#4394\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/4aafe3a199eeddc1959d43cfeb836439d85fe9fe\"\u003e\u003ccode\u003e4aafe3a\u003c/code\u003e\u003c/a\u003e Fix E3677 false positive when Code is a string (aws-cli pattern) (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4399\"\u003e#4399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/e69698a394daf7116d3ef585ac63b5e22956df6d\"\u003e\u003ccode\u003ee69698a\u003c/code\u003e\u003c/a\u003e Release v1.47.0 (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4391\"\u003e#4391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/d54d24bcb35043456dca0361076d5ee474f661ed\"\u003e\u003ccode\u003ed54d24b\u003c/code\u003e\u003c/a\u003e Update CloudFormation schemas to 2026-03-13 (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4386\"\u003e#4386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/compare/v1.46.0...v1.47.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.15.4 to 0.15.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.8\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-26.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003eunnecessary-if\u003c/code\u003e (\u003ccode\u003eRUF050\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24114\"\u003e#24114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003euseless-finally\u003c/code\u003e (\u003ccode\u003eRUF072\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24165\"\u003e#24165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003ef-string-percent-format\u003c/code\u003e (\u003ccode\u003eRUF073\u003c/code\u003e): warn when using \u003ccode\u003e%\u003c/code\u003e operator on an f-string (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24162\"\u003e#24162\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Recognize \u003ccode\u003efrozendict\u003c/code\u003e as a builtin for Python 3.15+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24100\"\u003e#24100\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] Use fully-qualified \u003ccode\u003eanyio.lowlevel\u003c/code\u003e import in autofix (\u003ccode\u003eASYNC115\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24166\"\u003e#24166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Check tuple arguments for partial paths in \u003ccode\u003eS607\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24080\"\u003e#24080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Skip \u003ccode\u003eundefined-name\u003c/code\u003e (\u003ccode\u003eF821\u003c/code\u003e) for conditionally deleted variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24088\"\u003e#24088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eE501\u003c/code\u003e/\u003ccode\u003eW505\u003c/code\u003e/formatter: Exclude nested pragma comments from line width calculation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24071\"\u003e#24071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e%foo?\u003c/code\u003e parsing in IPython assignment expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24152\"\u003e#24152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eanalyze graph\u003c/code\u003e: resolve string imports that reference attributes, not just modules (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24058\"\u003e#24058\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eeradicate\u003c/code\u003e] ignore \u003ccode\u003ety: ignore\u003c/code\u003e comments in \u003ccode\u003eERA001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24192\"\u003e#24192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Treat \u003ccode\u003esys.executable\u003c/code\u003e as trusted input in \u003ccode\u003eS603\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24106\"\u003e#24106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Recognize \u003ccode\u003eSelf\u003c/code\u003e annotation and \u003ccode\u003eself\u003c/code\u003e assignment in \u003ccode\u003eSLF001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24144\"\u003e#24144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] \u003ccode\u003eF507\u003c/code\u003e: Fix false negative for non-tuple RHS in \u003ccode\u003e%\u003c/code\u003e-formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24142\"\u003e#24142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Parenthesize generator arguments in \u003ccode\u003eFURB142\u003c/code\u003e fixer (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24200\"\u003e#24200\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up diagnostic rendering (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24146\"\u003e#24146\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWarn when Markdown files are skipped due to preview being disabled (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24150\"\u003e#24150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eClarify \u003ccode\u003eextend-ignore\u003c/code\u003e and \u003ccode\u003eextend-select\u003c/code\u003e settings documentation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24064\"\u003e#24064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMention AI policy in PR template (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24198\"\u003e#24198\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse trusted publishing for NPM packages (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24171\"\u003e#24171\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/bitloi\"\u003e\u003ccode\u003e@​bitloi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Sim-hu\"\u003e\u003ccode\u003e@​Sim-hu\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.15.8\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-26.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003eunnecessary-if\u003c/code\u003e (\u003ccode\u003eRUF050\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24114\"\u003e#24114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003euseless-finally\u003c/code\u003e (\u003ccode\u003eRUF072\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24165\"\u003e#24165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003ef-string-percent-format\u003c/code\u003e (\u003ccode\u003eRUF073\u003c/code\u003e): warn when using \u003ccode\u003e%\u003c/code\u003e operator on an f-string (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24162\"\u003e#24162\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Recognize \u003ccode\u003efrozendict\u003c/code\u003e as a builtin for Python 3.15+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24100\"\u003e#24100\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] Use fully-qualified \u003ccode\u003eanyio.lowlevel\u003c/code\u003e import in autofix (\u003ccode\u003eASYNC115\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24166\"\u003e#24166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Check tuple arguments for partial paths in \u003ccode\u003eS607\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24080\"\u003e#24080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Skip \u003ccode\u003eundefined-name\u003c/code\u003e (\u003ccode\u003eF821\u003c/code\u003e) for conditionally deleted variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24088\"\u003e#24088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eE501\u003c/code\u003e/\u003ccode\u003eW505\u003c/code\u003e/formatter: Exclude nested pragma comments from line width calculation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24071\"\u003e#24071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e%foo?\u003c/code\u003e parsing in IPython assignment expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24152\"\u003e#24152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eanalyze graph\u003c/code\u003e: resolve string imports that reference attributes, not just modules (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24058\"\u003e#24058\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eeradicate\u003c/code\u003e] ignore \u003ccode\u003ety: ignore\u003c/code\u003e comments in \u003ccode\u003eERA001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24192\"\u003e#24192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Treat \u003ccode\u003esys.executable\u003c/code\u003e as trusted input in \u003ccode\u003eS603\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24106\"\u003e#24106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Recognize \u003ccode\u003eSelf\u003c/code\u003e annotation and \u003ccode\u003eself\u003c/code\u003e assignment in \u003ccode\u003eSLF001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24144\"\u003e#24144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] \u003ccode\u003eF507\u003c/code\u003e: Fix false negative for non-tuple RHS in \u003ccode\u003e%\u003c/code\u003e-formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24142\"\u003e#24142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Parenthesize generator arguments in \u003ccode\u003eFURB142\u003c/code\u003e fixer (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24200\"\u003e#24200\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up diagnostic rendering (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24146\"\u003e#24146\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWarn when Markdown files are skipped due to preview being disabled (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24150\"\u003e#24150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eClarify \u003ccode\u003eextend-ignore\u003c/code\u003e and \u003ccode\u003eextend-select\u003c/code\u003e settings documentation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24064\"\u003e#24064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMention AI policy in PR template (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24198\"\u003e#24198\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse trusted publishing for NPM packages (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24171\"\u003e#24171\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/bitloi\"\u003e\u003ccode\u003e@​bitloi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Sim-hu\"\u003e\u003ccode\u003e@​Sim-hu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\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/c2a8815842f9dc5d24ec19385eae0f1a7188b0d9\"\u003e\u003ccode\u003ec2a8815\u003c/code\u003e\u003c/a\u003e Release 0.15.8 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24217\"\u003e#24217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d444d52e2b9cc8bc9a078c2bd4ff6ff993290209\"\u003e\u003ccode\u003ed444d52\u003c/code\u003e\u003c/a\u003e [ty] Infer lambda expressions with \u003ccode\u003eCallable\u003c/code\u003e type context (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/22633\"\u003e#22633\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/9622285ed0081fc688149f6efca87f127d9b18dd\"\u003e\u003ccode\u003e9622285\u003c/code\u003e\u003c/a\u003e [ty] Autocomplete arguments if in arguments node (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24167\"\u003e#24167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d81266252aaf0820346d55edbed79c4f25ba13d2\"\u003e\u003ccode\u003ed812662\u003c/code\u003e\u003c/a\u003e Use the \u003ccode\u003erelease\u003c/code\u003e environment in \u003ccode\u003epublish-docs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24214\"\u003e#24214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/eda2355832f7a9c58aef6febd3e061dc9c87509a\"\u003e\u003ccode\u003eeda2355\u003c/code\u003e\u003c/a\u003e [ty] Show \u003ccode\u003eFinal\u003c/code\u003e source in final assignment diagnostic (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24194\"\u003e#24194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/929eb5238c82bfadad4549ff526f02efc0163dd0\"\u003e\u003ccode\u003e929eb52\u003c/code\u003e\u003c/a\u003e [ty] Enforce Final attribute assignment rules for annotated and augmented wri...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/34998be22ec3a77d398bbd55234ef8740f768329\"\u003e\u003ccode\u003e34998be\u003c/code\u003e\u003c/a\u003e [ty] Fix typo in comment (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24211\"\u003e#24211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/560aca0b2828ee2ff1b4bcc5c5ef1ef4ced229d2\"\u003e\u003ccode\u003e560aca0\u003c/code\u003e\u003c/a\u003e [ty] Minor simplifications to some benchmark code (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24209\"\u003e#24209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/683bae512d03d3727a7bcdbc5a0170dafa049583\"\u003e\u003ccode\u003e683bae5\u003c/code\u003e\u003c/a\u003e [ty] Track non-terminal-call constraints in global scope (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23245\"\u003e#23245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/4704c2a4ff3dde2fd29324346720e9516b4fe387\"\u003e\u003ccode\u003e4704c2a\u003c/code\u003e\u003c/a\u003e [ty] Remove unnecessary intermediate collection in `StaticClassLiteral::field...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.15.4...0.15.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `moto` from 5.1.21 to 5.1.22\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getmoto/moto/blob/master/CHANGELOG.md\"\u003emoto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.1.22\u003c/h2\u003e\n\u003cp\u003eDocker Digest for 5.1.22: \u003cem\u003esha256:1e3802c95726373544967b428201c548f0247c15b00db2d96a5ba0a77d8643b8\u003c/em\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew Methods:\n    * APIGateway:\n        * delete_model()\n\u003cpre\u003e\u003ccode\u003e* Athena:\n    * tag_resource()\n    * untag_resource()\n\n* Pipes:\n    * list_tags_for_resource()\n\n* OSIS:\n    * delete_resource_policy()\n    * get_resource_policy()\n    * put_resource_policy()\n\n* RDS:\n    * copy_db_cluster_parameter_group()\n\n* STS:\n    * get_access_key_info()\n\n* Transfer:\n    * list_servers()\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eMiscellaneous:\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::CloudWatch::Dashboard resources\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::KMS::Alias resources\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::SSM::Document resources\u003cbr /\u003e\n* EC2: create_fleet() now supports the parameters DryRun and LaunchTemplateConfigs.Overrides\u003cbr /\u003e\n* EC2: describe_network_interfaces() now supports the 'attachment.attachment-id'-filter\u003cbr /\u003e\n* EC2: Instances created from a LaunchTemplate now have the 'aws:ec2launchtemplate:id' and 'aws:ec2launchtemplate:version' tags\u003cbr /\u003e\n* RDS: create_db_cluster_parameter_group() now validates the provided group name/description/familiy\u003cbr /\u003e\n* RDS: delete_db_cluster_parameter_group() now validates that the provided group exists\u003cbr /\u003e\n* S3: delete_object() now supports IfMatch\u003cbr /\u003e\n* SecretsManager: create-secret() now throw ResourceExistsException for duplicate requests with different token (broken since 5.1.11)\u003cbr /\u003e\n* SQS: send_message() now returns the SequenceNumber-attribute\u003cbr /\u003e\n* VPCLattice: list_access_log_subscriptions() now also supports arns as resourceIdentifiers\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\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/getmoto/moto/commit/28d5ca88d9df9ce3e94e2e8b1f1c584646339e61\"\u003e\u003ccode\u003e28d5ca8\u003c/code\u003e\u003c/a\u003e Pre-Release: Up Version Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/f58dc186374dcf3cd1282f4a5998fedfa2b658a9\"\u003e\u003ccode\u003ef58dc18\u003c/code\u003e\u003c/a\u003e Prep release 5.1.22 (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/84cbb40725122bf252b766a0f601358bedcad6d1\"\u003e\u003ccode\u003e84cbb40\u003c/code\u003e\u003c/a\u003e chore: update SSM default parameters (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9828\"\u003e#9828\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/2f32dc1e3d25998340e1e59fc1145b3f1afc4b55\"\u003e\u003ccode\u003e2f32dc1\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9827\"\u003e#9827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/2a1c7ca7259747d1792dfa055b8433d313af581e\"\u003e\u003ccode\u003e2a1c7ca\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Offerings (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9826\"\u003e#9826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/e063c5a0e91c8afb49e2ccde47ff07c9448db09c\"\u003e\u003ccode\u003ee063c5a\u003c/code\u003e\u003c/a\u003e chore: update EMR Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/681b47aab458d90a8deb4ddbe86ef26695526218\"\u003e\u003ccode\u003e681b47a\u003c/code\u003e\u003c/a\u003e API Gateway: implement DeleteModel operation (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9823\"\u003e#9823\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/d652e4ad38ab382e32ab61cf2b319d033cfb6f4a\"\u003e\u003ccode\u003ed652e4a\u003c/code\u003e\u003c/a\u003e STS: implement GetAccessKeyInfo operation (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/40a65202b922fd78c4f4724f34f03cdc1172377d\"\u003e\u003ccode\u003e40a6520\u003c/code\u003e\u003c/a\u003e Implement Athena \u003ccode\u003eTagResource\u003c/code\u003e and \u003ccode\u003eUntagResource\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9796\"\u003e#9796\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/dc425e8b3d56b7ad84bf9d2820ae89e72d10a4a9\"\u003e\u003ccode\u003edc425e8\u003c/code\u003e\u003c/a\u003e Modernize Java tests (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9817\"\u003e#9817\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getmoto/moto/compare/5.1.21...5.1.22\"\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 specifi...\n\n_Description has been truncated_","html_url":"https://github.com/ASFHyP3/its-live-monitoring/pull/352","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ASFHyP3%2Fits-live-monitoring/issues/352","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/352/packages"}],"issue_packages":[{"old_version":"\u003e=8","new_version":"\u003e=10.0.5","update_type":null,"path":null,"pr_created_at":"2026-05-05T02:22:44.000Z","version_change":"\u003e=8 → \u003e=10.0.5","issue":{"uuid":"4381046031","node_id":"PR_kwDOIAKz_s7YPPWS","number":312,"state":"open","title":"Update setuptools-scm requirement from \u003e=8 to \u003e=10.0.5","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-05T02:22:44.000Z","updated_at":"2026-05-06T12:01:06.725Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Update","packages":[{"name":"setuptools-scm","old_version":"\u003e=8","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\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/RedHatInsights/insights-content-template-renderer/pull/312","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/RedHatInsights%2Finsights-content-template-renderer/issues/312","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/312/packages"}},{"old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","update_type":null,"path":null,"pr_created_at":"2026-05-01T21:39:20.000Z","version_change":"\u003e=6.2 → \u003e=10.0.5","issue":{"uuid":"4366793626","node_id":"PR_kwDOOiFoQc7Xidys","number":35,"state":"open","title":"Update setuptools-scm requirement from \u003e=6.2 to \u003e=10.0.5","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-05-01T21:39:20.000Z","updated_at":"2026-05-01T21:41:18.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Update","packages":[{"name":"setuptools-scm","old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\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/Roman-HLIS-Cosmology-PIT/HAZARD-simulator/pull/35","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Roman-HLIS-Cosmology-PIT%2FHAZARD-simulator/issues/35","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/35/packages"}},{"old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","update_type":null,"path":null,"pr_created_at":"2026-05-01T05:54:06.000Z","version_change":"\u003e=6.2 → \u003e=10.0.5","issue":{"uuid":"4363070603","node_id":"PR_kwDOM7AeMs7XWlAg","number":27,"state":"open","title":"Update setuptools-scm requirement from \u003e=6.2 to \u003e=10.0.5","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-05-01T05:54:06.000Z","updated_at":"2026-05-01T05:56:01.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Update","packages":[{"name":"setuptools-scm","old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\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/Roman-HLIS-Cosmology-PIT/PSFSim/pull/27","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Roman-HLIS-Cosmology-PIT%2FPSFSim/issues/27","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/27/packages"}},{"old_version":"9.2.2","new_version":"10.0.5","update_type":"major","path":null,"pr_created_at":"2026-04-20T05:44:51.000Z","version_change":"9.2.2 → 10.0.5","issue":{"uuid":"4293378746","node_id":"PR_kwDOPwN4Cc7T1I5q","number":206,"state":"open","title":"Bump setuptools-scm from 9.2.2 to 10.0.5","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-04-20T05:44:51.000Z","updated_at":"2026-04-20T05:45:03.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"setuptools-scm","old_version":"9.2.2","new_version":"10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Bumps [setuptools-scm](https://github.com/pypa/setuptools-scm) from 9.2.2 to 10.0.5.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAnchor \u003ccode\u003eget_version\u003c/code\u003e in \u003ccode\u003esetup.py\u003c/code\u003e with \u003ccode\u003erelative_to\u003c/code\u003e and \u003ccode\u003efallback_root\u003c/code\u003e so SCM fallbacks (e.g. \u003ccode\u003ePKG-INFO\u003c/code\u003e) do not resolve against the wrong directory when the build cwd is the workspace or repo root. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1302\"\u003e#1302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnter \u003ccode\u003eGlobalOverrides\u003c/code\u003e for \u003ccode\u003eSETUPTOOLS_SCM\u003c/code\u003e when using \u003ccode\u003esetuptools_scm.get_version\u003c/code\u003e / \u003ccode\u003e_get_version\u003c/code\u003e, avoiding implicit context warnings for direct API callers. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1314\"\u003e#1314\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade pre-commit hooks (Ruff, mypy, codespell), align locked Ruff with hooks, and add Ruff per-file configuration for setuptools_scm re-export modules. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1311\"\u003e#1311\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove monorepo-only \u003ccode\u003e../vcs-versioning/src\u003c/code\u003e from \u003ccode\u003ebuild-system.backend-path\u003c/code\u003e so sdists install under PEP 517 (paths must stay inside the source tree). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1306\"\u003e#1306\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003egriffecli\u003c/code\u003e to test dependencies so the API stability check keeps working after the Griffe CLI was split into a separate package. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1310\"\u003e#1310\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix version file not generated for editable installs. Version files are now written to the source tree by default during inference (restoring pre-10.x behavior), and also registered as \u003ccode\u003ebuild_py\u003c/code\u003e outputs so strict editable installs include them in the persistent auxiliary directory. Set \u003ccode\u003eSETUPTOOLS_SCM_WRITE_TO_SOURCE=0\u003c/code\u003e to disable source-tree writing (e.g., for read-only source directories). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1298\"\u003e#1298\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.1\u003c/h2\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSimplify release tag creation to use a single \u003ccode\u003ecreateRelease\u003c/code\u003e API call instead of separate \u003ccode\u003ecreateTag\u003c/code\u003e/\u003ccode\u003ecreateRef\u003c/code\u003e/\u003ccode\u003ecreateRelease\u003c/code\u003e calls, avoiding dangling tag objects on partial failures. (\u003ca href=\"https://github.com/pypa/setuptools-scm/issues/release-pipeline\"\u003e#release-pipeline\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.0\u003c/h2\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 and 3.9 support. Minimum Python version is now 3.10. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esetuptools-scm now depends on vcs-versioning for core version inference logic. This enables other build backends to use the same version inference without setuptools dependency. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eVersion files (\u003ccode\u003ewrite_to\u003c/code\u003e and \u003ccode\u003eversion_file\u003c/code\u003e) are now written to the build directory\nduring \u003ccode\u003ebuild_py\u003c/code\u003e instead of the source tree during version inference.\nThis enables installing packages from read-only source directories (e.g., Bazel builds).\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/v9.2.2...setuptools-scm-v10.0.5\"\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=setuptools-scm\u0026package-manager=uv\u0026previous-version=9.2.2\u0026new-version=10.0.5)](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/uktrade/github-standards/pull/206","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/uktrade%2Fgithub-standards/issues/206","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/206/packages"}},{"old_version":"\u003e=3.4.1","new_version":"\u003e=10.0.5","update_type":"patch","path":null,"pr_created_at":"2026-04-13T19:30:26.000Z","version_change":"\u003e=3.4.1 → \u003e=10.0.5","issue":{"uuid":"4257377525","node_id":"PR_kwDODvqDAM7SF8ST","number":2,"state":"closed","title":"Update setuptools-scm requirement from \u003e=3.4.1 to \u003e=10.0.5","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-04-14T00:01:41.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-13T19:30:26.000Z","updated_at":"2026-04-14T00:01:44.000Z","time_to_close":16275,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Update","packages":[{"name":"setuptools-scm","old_version":"\u003e=3.4.1","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\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/sailfishos-mirror/pytest-runner/pull/2","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/sailfishos-mirror%2Fpytest-runner/issues/2","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/2/packages"}},{"old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","update_type":null,"path":null,"pr_created_at":"2026-04-13T18:19:07.000Z","version_change":"\u003e=6.2 → \u003e=10.0.5","issue":{"uuid":"4256976059","node_id":"PR_kwDOMQEIKs7SEw_6","number":45,"state":"closed","title":"chore(deps-dev): update setuptools-scm requirement from \u003e=6.2 to \u003e=10.0.5","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-05-10T18:51:29.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-13T18:19:07.000Z","updated_at":"2026-05-10T18:51:30.000Z","time_to_close":2334742,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): update","packages":[{"name":"setuptools-scm","old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\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/phofmeier/mqtt2db/pull/45","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/phofmeier%2Fmqtt2db/issues/45","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/45/packages"}},{"old_version":"\u003e=8.0","new_version":"\u003e=9.2.2","update_type":null,"path":null,"pr_created_at":"2026-04-13T18:12:55.000Z","version_change":"\u003e=8.0 → \u003e=9.2.2","issue":{"uuid":"4256942842","node_id":"PR_kwDOMDsw-M7SEqgs","number":241,"state":"open","title":"chore(deps-dev): update setuptools-scm requirement from \u003e=8.0 to \u003e=9.2.2","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-13T18:12:55.000Z","updated_at":"2026-04-13T18:16:29.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): update","packages":[{"name":"setuptools-scm","old_version":"\u003e=8.0","new_version":"\u003e=9.2.2","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) to permit the latest version.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/blob/v9.2.2/CHANGELOG.md\"\u003esetuptools-scm's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.2.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1231\"\u003e#1231\u003c/a\u003e: don't warn about \u003ccode\u003etool.setuptools.dynamic.version\u003c/code\u003e when only using file finder.\nThe warning about combining version guessing with setuptools dynamic versions should only\nbe issued when setuptools-scm is performing version inference, not when it's only being\nused for its file finder functionality.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.2.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1216\"\u003e#1216\u003c/a\u003e: accept and create a warning for usages of \u003ccode\u003eversion = attr:\u003c/code\u003e in setuptools config.\nunfortunately dozens of projects cargo-culted that antipattern\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.2.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eadd simplified activation via \u003ccode\u003esetuptools-scm[simple]\u003c/code\u003e extra\u003c/p\u003e\n\u003cp\u003eA new streamlined way to enable version inference without requiring a \u003ccode\u003e[tool.setuptools_scm]\u003c/code\u003e section.\nWhen \u003ccode\u003esetuptools-scm[simple]\u003c/code\u003e is in \u003ccode\u003ebuild-system.requires\u003c/code\u003e and \u003ccode\u003eversion\u003c/code\u003e is in \u003ccode\u003eproject.dynamic\u003c/code\u003e,\nversion inference is automatically enabled with default settings.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eunchecked simplified activation - too many projects use setups where it would fail\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erefine activation logic and add unittest for the relevant cases instead of trying to speedrun setuptools\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.1 (yanked)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1194\"\u003e#1194\u003c/a\u003e: correctly handle version keyword when pyproject metadata is missing\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.0 (yanked)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecomplete reiteration of the decision logic for enabling version inference on setuptools_scm\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/pypa/setuptools-scm/commit/e56b78fcd4c1e79aa36c1e4700fca34c8ff540fe\"\u003e\u003ccode\u003ee56b78f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1232\"\u003e#1232\u003c/a\u003e from RonnyPfannschmidt/fix-1231-dont-warn-when-no-guess\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/4f55e9585e398e13103112a6fd488109d9da4ead\"\u003e\u003ccode\u003e4f55e95\u003c/code\u003e\u003c/a\u003e docs: update changelog for v9.2.2 patch release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/95a0c47553ea0b373238bb64aa344b2c2547c849\"\u003e\u003ccode\u003e95a0c47\u003c/code\u003e\u003c/a\u003e fix: don't warn about tool.setuptools.dynamic.version when only using file fi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/338f562e6a38f8d32fd5aeb4677b3f87fc5a0122\"\u003e\u003ccode\u003e338f562\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1226\"\u003e#1226\u003c/a\u003e from RonnyPfannschmidt/prepare-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a893634c36a074052ed3f6d0e77b076b582c72ab\"\u003e\u003ccode\u003ea893634\u003c/code\u003e\u003c/a\u003e Prepare release v9.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/ad83282242e96fe11c958227740ee03a7a2ed0fe\"\u003e\u003ccode\u003ead83282\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1225\"\u003e#1225\u003c/a\u003e from pypa/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/20a44648f299f64b1241a448bdbafde9b1871ebf\"\u003e\u003ccode\u003e20a4464\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/70f69429c40f8c8d3c4e0eec2d8b4a6794671c88\"\u003e\u003ccode\u003e70f6942\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1219\"\u003e#1219\u003c/a\u003e from RonnyPfannschmidt/fix-1216-explicitly-deprecate...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/14d85c0fb8fa9efd1ec4bac3413f48aea0e319f5\"\u003e\u003ccode\u003e14d85c0\u003c/code\u003e\u003c/a\u003e Install Mercurial on Windows runners via Chocolatey\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c5cec917123e4cc87b490f56b6e7af27a3b0399\"\u003e\u003ccode\u003e8c5cec9\u003c/code\u003e\u003c/a\u003e Fix API stability check workflow to install griffe and improve reporting\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...v9.2.2\"\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\n\n\u003c!-- This is an auto-generated description by cubic. --\u003e\n---\n## Summary by cubic\nRaise the build requirement for `setuptools-scm` from \u003e=8.0 to \u003e=9.2.2 to adopt the latest fixes. This reduces noisy version warnings during builds and aligns with current activation logic.\n\n\u003csup\u003eWritten for commit 4b3b9b7bd92e1ffee45ee7bf120be0b3ad956851. Summary will update on new commits.\u003c/sup\u003e\n\n\u003c!-- End of auto-generated description by cubic. --\u003e\n\n","html_url":"https://github.com/DiogoRibeiro7/PSOD/pull/241","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/DiogoRibeiro7%2FPSOD/issues/241","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/241/packages"}},{"old_version":"\u003e=6.2","new_version":"\u003e=9.2.2","update_type":null,"path":null,"pr_created_at":"2026-04-13T17:49:28.000Z","version_change":"\u003e=6.2 → \u003e=9.2.2","issue":{"uuid":"4256820081","node_id":"PR_kwDOFIi9HM7SERq2","number":88,"state":"closed","title":"chore(deps-dev): update setuptools-scm requirement from \u003e=6.2 to \u003e=9.2.2","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-04-14T03:49:16.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-13T17:49:28.000Z","updated_at":"2026-04-14T03:49:17.000Z","time_to_close":35988,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): update","packages":[{"name":"setuptools-scm","old_version":"\u003e=6.2","new_version":"\u003e=9.2.2","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) to permit the latest version.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/blob/v9.2.2/CHANGELOG.md\"\u003esetuptools-scm's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.2.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1231\"\u003e#1231\u003c/a\u003e: don't warn about \u003ccode\u003etool.setuptools.dynamic.version\u003c/code\u003e when only using file finder.\nThe warning about combining version guessing with setuptools dynamic versions should only\nbe issued when setuptools-scm is performing version inference, not when it's only being\nused for its file finder functionality.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.2.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1216\"\u003e#1216\u003c/a\u003e: accept and create a warning for usages of \u003ccode\u003eversion = attr:\u003c/code\u003e in setuptools config.\nunfortunately dozens of projects cargo-culted that antipattern\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.2.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eadd simplified activation via \u003ccode\u003esetuptools-scm[simple]\u003c/code\u003e extra\u003c/p\u003e\n\u003cp\u003eA new streamlined way to enable version inference without requiring a \u003ccode\u003e[tool.setuptools_scm]\u003c/code\u003e section.\nWhen \u003ccode\u003esetuptools-scm[simple]\u003c/code\u003e is in \u003ccode\u003ebuild-system.requires\u003c/code\u003e and \u003ccode\u003eversion\u003c/code\u003e is in \u003ccode\u003eproject.dynamic\u003c/code\u003e,\nversion inference is automatically enabled with default settings.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eunchecked simplified activation - too many projects use setups where it would fail\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erefine activation logic and add unittest for the relevant cases instead of trying to speedrun setuptools\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.1 (yanked)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1194\"\u003e#1194\u003c/a\u003e: correctly handle version keyword when pyproject metadata is missing\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.0 (yanked)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecomplete reiteration of the decision logic for enabling version inference on setuptools_scm\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/pypa/setuptools-scm/commit/e56b78fcd4c1e79aa36c1e4700fca34c8ff540fe\"\u003e\u003ccode\u003ee56b78f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1232\"\u003e#1232\u003c/a\u003e from RonnyPfannschmidt/fix-1231-dont-warn-when-no-guess\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/4f55e9585e398e13103112a6fd488109d9da4ead\"\u003e\u003ccode\u003e4f55e95\u003c/code\u003e\u003c/a\u003e docs: update changelog for v9.2.2 patch release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/95a0c47553ea0b373238bb64aa344b2c2547c849\"\u003e\u003ccode\u003e95a0c47\u003c/code\u003e\u003c/a\u003e fix: don't warn about tool.setuptools.dynamic.version when only using file fi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/338f562e6a38f8d32fd5aeb4677b3f87fc5a0122\"\u003e\u003ccode\u003e338f562\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1226\"\u003e#1226\u003c/a\u003e from RonnyPfannschmidt/prepare-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a893634c36a074052ed3f6d0e77b076b582c72ab\"\u003e\u003ccode\u003ea893634\u003c/code\u003e\u003c/a\u003e Prepare release v9.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/ad83282242e96fe11c958227740ee03a7a2ed0fe\"\u003e\u003ccode\u003ead83282\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1225\"\u003e#1225\u003c/a\u003e from pypa/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/20a44648f299f64b1241a448bdbafde9b1871ebf\"\u003e\u003ccode\u003e20a4464\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/70f69429c40f8c8d3c4e0eec2d8b4a6794671c88\"\u003e\u003ccode\u003e70f6942\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1219\"\u003e#1219\u003c/a\u003e from RonnyPfannschmidt/fix-1216-explicitly-deprecate...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/14d85c0fb8fa9efd1ec4bac3413f48aea0e319f5\"\u003e\u003ccode\u003e14d85c0\u003c/code\u003e\u003c/a\u003e Install Mercurial on Windows runners via Chocolatey\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c5cec917123e4cc87b490f56b6e7af27a3b0399\"\u003e\u003ccode\u003e8c5cec9\u003c/code\u003e\u003c/a\u003e Fix API stability check workflow to install griffe and improve reporting\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...v9.2.2\"\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/epg2xml/epg2xml/pull/88","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/epg2xml%2Fepg2xml/issues/88","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/88/packages"}},{"old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","update_type":null,"path":null,"pr_created_at":"2026-04-13T17:11:17.000Z","version_change":"\u003e=6.2 → \u003e=10.0.5","issue":{"uuid":"4256618950","node_id":"PR_kwDOA8d_js7SDpSN","number":147,"state":"closed","title":"Update setuptools-scm requirement from \u003e=6.2 to \u003e=10.0.5","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-06-07T23:08:51.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-13T17:11:17.000Z","updated_at":"2026-06-07T23:08:52.000Z","time_to_close":4773454,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Update","packages":[{"name":"setuptools-scm","old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n","html_url":"https://github.com/aio-libs/pytest-aiohttp/pull/147","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/aio-libs%2Fpytest-aiohttp/issues/147","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/147/packages"}},{"old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","update_type":null,"path":null,"pr_created_at":"2026-04-13T11:15:36.000Z","version_change":"\u003e=6.2 → \u003e=10.0.5","issue":{"uuid":"4254044022","node_id":"PR_kwDOHTtbCs7R9Ryn","number":134,"state":"closed","title":"deps(deps-dev): update setuptools-scm requirement from \u003e=6.2 to \u003e=10.0.5","user":"dependabot[bot]","labels":["dependencies","automated"],"assignees":["hostcc"],"locked":false,"comments_count":5,"pull_request":true,"closed_at":"2026-04-13T18:51:10.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-13T11:15:36.000Z","updated_at":"2026-04-13T18:52:31.000Z","time_to_close":27334,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps-dev): update","packages":[{"name":"setuptools-scm","old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\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/hostcc/energomera-hass-mqtt/pull/134","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/hostcc%2Fenergomera-hass-mqtt/issues/134","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/134/packages"}},{"old_version":"9.2.2","new_version":"10.0.5","update_type":"major","path":null,"pr_created_at":"2026-04-13T10:35:23.000Z","version_change":"9.2.2 → 10.0.5","issue":{"uuid":"4253692346","node_id":"PR_kwDOMB2Joc7R8mdX","number":181,"state":"closed","title":"Bump the pip-deps group across 1 directory with 8 updates","user":"dependabot[bot]","labels":["bumpless","major"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-04-20T11:13:30.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-13T10:35:23.000Z","updated_at":"2026-04-20T11:13:32.000Z","time_to_close":607087,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"pip-deps","update_count":8,"packages":[{"name":"setuptools-scm","old_version":"9.2.2","new_version":"10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"},{"name":"gdal","old_version":"3.12.1","new_version":"3.12.3","repository_url":"https://github.com/OSGeo/gdal"},{"name":"numpy","old_version":"2.4.2","new_version":"2.4.4","repository_url":"https://github.com/numpy/numpy"},{"name":"pytest","old_version":"9.0.2","new_version":"9.0.3","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"7.0.0","new_version":"7.1.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"ruff","old_version":"0.15.0","new_version":"0.15.10","repository_url":"https://github.com/astral-sh/ruff"},{"name":"mypy","old_version":"1.19.1","new_version":"1.20.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools](https://github.com/pypa/setuptools), [setuptools-scm](https://github.com/pypa/setuptools-scm), [gdal](https://github.com/OSGeo/gdal), [numpy](https://github.com/numpy/numpy), [pytest](https://github.com/pytest-dev/pytest), [pytest-cov](https://github.com/pytest-dev/pytest-cov), [ruff](https://github.com/astral-sh/ruff) and [mypy](https://github.com/python/mypy) to permit the latest version.\nUpdates `setuptools` to 82.0.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools/blob/main/NEWS.rst\"\u003esetuptools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ev82.0.1\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the loading of \u003ccode\u003elauncher manifest.xml\u003c/code\u003e file. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5047\"\u003e#5047\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplaced deprecated \u003ccode\u003ejson.__version__\u003c/code\u003e with fixture in tests. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5186\"\u003e#5186\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd advice about how to improve predictability when installing sdists. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5168\"\u003e#5168\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4941\"\u003e#4941\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev82.0.0\u003c/h1\u003e\n\u003ch2\u003eDeprecations and Removals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003epkg_resources\u003c/code\u003e has been removed from Setuptools. Most common uses of \u003ccode\u003epkg_resources\u003c/code\u003e have been superseded by the \u003ccode\u003eimportlib.resources \u0026lt;https://docs.python.org/3/library/importlib.resources.html\u0026gt;\u003c/code\u003e_ and \u003ccode\u003eimportlib.metadata \u0026lt;https://docs.python.org/3/library/importlib.metadata.html\u0026gt;\u003c/code\u003e_ projects. Projects and environments relying on \u003ccode\u003epkg_resources\u003c/code\u003e for namespace packages or other behavior should depend on older versions of \u003ccode\u003esetuptools\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev81.0.0\u003c/h1\u003e\n\u003ch2\u003eDeprecations and Removals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for the --dry-run parameter to setup.py. This one feature by its nature threads through lots of core and ancillary functionality, adding complexity and friction. Removal of this parameter will help decouple the compiler functionality from distutils and thus the eventual full integration of distutils. These changes do affect some class and function signatures, so any derivative functionality may require some compatibility shims to support their expected interface. Please report any issues to the Setuptools project for investigation. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4872\"\u003e#4872\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.10.2\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate vendored dependencies. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5159\"\u003e#5159\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMisc\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/5a13876673a41e3cd21d4d6e587f53d0fb4fd8e5\"\u003e\u003ccode\u003e5a13876\u003c/code\u003e\u003c/a\u003e Bump version: 82.0.0 → 82.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/51ab8f183f1c4112675d8d6ec6b004406d518ee8\"\u003e\u003ccode\u003e51ab8f1\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5194\"\u003e#5194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/f9c37b20bb0ed11203f676f9683452a4c3ace6f6\"\u003e\u003ccode\u003ef9c37b2\u003c/code\u003e\u003c/a\u003e Docs/CI: Fix intersphinx references (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5195\"\u003e#5195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/8173db2a4fc0f6cb28926b3dba59116b79f435c8\"\u003e\u003ccode\u003e8173db2\u003c/code\u003e\u003c/a\u003e Docs: Fix intersphinx references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/09bafbc74923f2a3591b5b098be75d6af6ca5141\"\u003e\u003ccode\u003e09bafbc\u003c/code\u003e\u003c/a\u003e Fix past tense on newsfragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/461ea56c8e629819a23920f44d9298d4f041abde\"\u003e\u003ccode\u003e461ea56\u003c/code\u003e\u003c/a\u003e Add news fragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/c4ffe535b58235ff9f9ebe90d24a2cffb57e70ae\"\u003e\u003ccode\u003ec4ffe53\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/749258b1a96c7accc05ea7d842fb19fc378866fe\"\u003e\u003ccode\u003e749258b\u003c/code\u003e\u003c/a\u003e Cleanup \u003ccode\u003epkg_resources\u003c/code\u003e dependencies and configuration (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/2019c16701667db1010c62ec11c6ef78c2e58206\"\u003e\u003ccode\u003e2019c16\u003c/code\u003e\u003c/a\u003e Parse \u003ccode\u003eext-module.define-macros\u003c/code\u003e from \u003ccode\u003epyproject.toml\u003c/code\u003e as list of tuples (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/b809c86a37d97fcce290d5f51d4c293ab40bc685\"\u003e\u003ccode\u003eb809c86\u003c/code\u003e\u003c/a\u003e Sync setuptools schema with validate-pyproject (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools/compare/v61.0.0...v82.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools-scm` from 9.2.2 to 10.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAnchor \u003ccode\u003eget_version\u003c/code\u003e in \u003ccode\u003esetup.py\u003c/code\u003e with \u003ccode\u003erelative_to\u003c/code\u003e and \u003ccode\u003efallback_root\u003c/code\u003e so SCM fallbacks (e.g. \u003ccode\u003ePKG-INFO\u003c/code\u003e) do not resolve against the wrong directory when the build cwd is the workspace or repo root. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1302\"\u003e#1302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnter \u003ccode\u003eGlobalOverrides\u003c/code\u003e for \u003ccode\u003eSETUPTOOLS_SCM\u003c/code\u003e when using \u003ccode\u003esetuptools_scm.get_version\u003c/code\u003e / \u003ccode\u003e_get_version\u003c/code\u003e, avoiding implicit context warnings for direct API callers. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1314\"\u003e#1314\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade pre-commit hooks (Ruff, mypy, codespell), align locked Ruff with hooks, and add Ruff per-file configuration for setuptools_scm re-export modules. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1311\"\u003e#1311\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove monorepo-only \u003ccode\u003e../vcs-versioning/src\u003c/code\u003e from \u003ccode\u003ebuild-system.backend-path\u003c/code\u003e so sdists install under PEP 517 (paths must stay inside the source tree). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1306\"\u003e#1306\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003egriffecli\u003c/code\u003e to test dependencies so the API stability check keeps working after the Griffe CLI was split into a separate package. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1310\"\u003e#1310\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix version file not generated for editable installs. Version files are now written to the source tree by default during inference (restoring pre-10.x behavior), and also registered as \u003ccode\u003ebuild_py\u003c/code\u003e outputs so strict editable installs include them in the persistent auxiliary directory. Set \u003ccode\u003eSETUPTOOLS_SCM_WRITE_TO_SOURCE=0\u003c/code\u003e to disable source-tree writing (e.g., for read-only source directories). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1298\"\u003e#1298\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.1\u003c/h2\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSimplify release tag creation to use a single \u003ccode\u003ecreateRelease\u003c/code\u003e API call instead of separate \u003ccode\u003ecreateTag\u003c/code\u003e/\u003ccode\u003ecreateRef\u003c/code\u003e/\u003ccode\u003ecreateRelease\u003c/code\u003e calls, avoiding dangling tag objects on partial failures. (\u003ca href=\"https://github.com/pypa/setuptools-scm/issues/release-pipeline\"\u003e#release-pipeline\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.0\u003c/h2\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 and 3.9 support. Minimum Python version is now 3.10. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esetuptools-scm now depends on vcs-versioning for core version inference logic. This enables other build backends to use the same version inference without setuptools dependency. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eVersion files (\u003ccode\u003ewrite_to\u003c/code\u003e and \u003ccode\u003eversion_file\u003c/code\u003e) are now written to the build directory\nduring \u003ccode\u003ebuild_py\u003c/code\u003e instead of the source tree during version inference.\nThis enables installing packages from read-only source directories (e.g., Bazel builds).\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/v9.2.2...setuptools-scm-v10.0.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gdal` from 3.12.1 to 3.12.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/OSGeo/gdal/releases\"\u003egdal's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eGDAL 3.12.3\u003c/h2\u003e\n\u003cp\u003eBug fix release. See release notes: \u003ca href=\"https://github.com/OSGeo/gdal/blob/v3.12.3/NEWS.md\"\u003ehttps://github.com/OSGeo/gdal/blob/v3.12.3/NEWS.md\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eGDAL 3.12.2\u003c/h2\u003e\n\u003cp\u003eBug fix release. See release notes: \u003ca href=\"https://github.com/OSGeo/gdal/blob/v3.12.2/NEWS.md\"\u003ehttps://github.com/OSGeo/gdal/blob/v3.12.2/NEWS.md\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/OSGeo/gdal/blob/master/NEWS.md\"\u003egdal's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eGDAL/OGR 3.12.3 Release Notes\u003c/h1\u003e\n\u003cp\u003eGDAL 3.12.3 is a bugfix release.\u003c/p\u003e\n\u003ch2\u003eBuild\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePDF: add compatibility with Poppler 26.02.0 (\u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/13857\"\u003e#13857\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eHDF5: Adding proper support for parallel HDF5\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eGDAL 3.12.3\u003c/h2\u003e\n\u003ch3\u003ePort\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd CPLLexicallyNormalize() to normalize file paths, to fix oss-fuzz#473110068\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAlgorithms\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHomography GCP transformer: fix bad scaling factor on overviews (3.11.0\n\u003ccode\u003eqgis/QGIS#65011\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eGDALCreateAndReprojectImage(): fix memleak in error code path (\u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/14001\"\u003e#14001\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eGDALWarpResolveWorkingDataType(): do not default to UInt8 before looking at\ndata type bands (\u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/14063\"\u003e#14063\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eWarper: add dedicated code path for Int8 nearest neighbour resampling (\u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/14063\"\u003e#14063\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eviewshed: allow out-of-range values outside of Byte range for DEM and GROUND\nmodes\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCore\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRMS overview resampling: fix error in normalization formula\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eUtilities\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003egdal raster calc: properly handle inputs with no geotransform\u003c/li\u003e\n\u003cli\u003egdal raster contour/polygonize: expose --output-layer for pipeline mode\u003c/li\u003e\n\u003cli\u003egdal raster edit: add missing --oo option in standalone mode (\u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/14107\"\u003e#14107\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003egdalinfo: support again -wkt_format WKT1_ESRI (\u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/13906\"\u003e#13906\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003egdaltindex: use GDALWarp for reprojected extents\u003c/li\u003e\n\u003cli\u003egdal pipeline: fix nullptr deref on 'read -h' pipeline in non-command line\nmode (oss-fuzz#485952614)\u003c/li\u003e\n\u003cli\u003egdal dataset copy/rename: make it work with vector datasets, and directories\n(\u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/14097\"\u003e#14097\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003egdal2tiles: fix wrong extent computation on source raster with non-square pixels\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRaster drivers\u003c/h3\u003e\n\u003cp\u003eGIF driver:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eavoid potential left shift of \u0026gt;=32 positions (oss-fuzz#481899239)\u003c/li\u003e\n\u003cli\u003eavoid potential crash on corrupted datasets (oss-fuzz#481841770)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eGeoraster driver:\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/OSGeo/gdal/commit/5e70e43057176e6d6c45a147976daf04593f8471\"\u003e\u003ccode\u003e5e70e43\u003c/code\u003e\u003c/a\u003e Update release date for GDAL 3.12.3rc2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/fc34adf279db837e82675a152bc601c3f7d69bd3\"\u003e\u003ccode\u003efc34adf\u003c/code\u003e\u003c/a\u003e /vsis3/: fix out of bounds introduced by 605a79de8c81d639bd1979dd503c1bd95456...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/76af31eae3bcb493b496fd1e6312fdc23d786101\"\u003e\u003ccode\u003e76af31e\u003c/code\u003e\u003c/a\u003e Bump version numbers for GDAL 3.12.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/1f755bc228bb692329630d5179eae97f0f7c4cf8\"\u003e\u003ccode\u003e1f755bc\u003c/code\u003e\u003c/a\u003e NEWS.md: GDAL 3.12.3 news\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/84652294e2a571825a61535a546defde0a3206b2\"\u003e\u003ccode\u003e8465229\u003c/code\u003e\u003c/a\u003e typo fix [ci skip]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/253599ddccb392f96c09d0c5ed483e7e648adf90\"\u003e\u003ccode\u003e253599d\u003c/code\u003e\u003c/a\u003e gdal raster edit: add missing --oo option in standalone mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/45030e4cb51bdb508f00fdaa3b3d85b1a51ca8ae\"\u003e\u003ccode\u003e45030e4\u003c/code\u003e\u003c/a\u003e CI: Remove cppcheck 1.90 configuration\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/5a1acd7cb81108c47af93f201f57cc7af9af0eeb\"\u003e\u003ccode\u003e5a1acd7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/14141\"\u003e#14141\u003c/a\u003e from OSGeo/backport-14133-to-release/3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/b714c3032b7ec684debfb687dda6eeb3eaf72e03\"\u003e\u003ccode\u003eb714c30\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/14140\"\u003e#14140\u003c/a\u003e from OSGeo/backport-14131-to-release/3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/OSGeo/gdal/commit/58183f7ccf5934560456159b91f9c88303c01b40\"\u003e\u003ccode\u003e58183f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/OSGeo/gdal/issues/14139\"\u003e#14139\u003c/a\u003e from OSGeo/backport-14123-to-release/3.12\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/OSGeo/gdal/compare/v3.12.1...v3.12.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.4.2 to 2.4.4\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\u003e2.4.4 (Mar 29, 2026)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.4.4 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.4.4 is a patch release that fixes bugs discovered after the 2.4.3\nrelease. It should finally close issue \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30816\"\u003e#30816\u003c/a\u003e, the OpenBLAS threading problem\non ARM.\u003c/p\u003e\n\u003cp\u003eThis release supports Python versions 3.11-3.14\u003c/p\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eA total of 8 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\u003eCharles Harris\u003c/li\u003e\n\u003cli\u003eDaniel Haag +\u003c/li\u003e\n\u003cli\u003eDenis Prokopenko +\u003c/li\u003e\n\u003cli\u003eHarshith J +\u003c/li\u003e\n\u003cli\u003eKoki Watanabe\u003c/li\u003e\n\u003cli\u003eMarten van Kerkwijk\u003c/li\u003e\n\u003cli\u003eMatti Picus\u003c/li\u003e\n\u003cli\u003eNathan Goldbaum\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ePull requests merged\u003c/h2\u003e\n\u003cp\u003eA total of 7 pull requests were merged for this release.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30978\"\u003e#30978\u003c/a\u003e: MAINT: Prepare 2.4.x for further development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31049\"\u003e#31049\u003c/a\u003e: BUG: Add test to reproduce problem described in \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30816\"\u003e#30816\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30818\"\u003e#30818\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31052\"\u003e#31052\u003c/a\u003e: BUG: fix FNV-1a 64-bit selection by using NPY_SIZEOF_UINTP (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31035\"\u003e#31035\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31053\"\u003e#31053\u003c/a\u003e: BUG: avoid warning on ufunc with where=True and no output\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31058\"\u003e#31058\u003c/a\u003e: DOC: document caveats of ndarray.resize on 3.14 and newer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31079\"\u003e#31079\u003c/a\u003e: TST: fix POWER VSX feature mapping (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30801\"\u003e#30801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31084\"\u003e#31084\u003c/a\u003e: MAINT: numpy.i: Replace deprecated \u003ccode\u003esprintf\u003c/code\u003e with \u003ccode\u003esnprintf\u003c/code\u003e...\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.4.3 (Mar 9, 2026)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.4.3 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.4.3 is a patch release that fixes bugs discovered after the\n2.4.2 release. The most user visible fix may be a threading fix for\nOpenBLAS on ARM, closing issue \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30816\"\u003e#30816\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis release supports Python versions 3.11-3.14\u003c/p\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eA total of 11 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\u003eAntareep Sarkar +\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/be93fe2960dbf49b4647f5783c66d967fb2c65b5\"\u003e\u003ccode\u003ebe93fe2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31090\"\u003e#31090\u003c/a\u003e from charris/prepare-2.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/f5245dc7ea5c6279c59cb0d5de81113229841290\"\u003e\u003ccode\u003ef5245dc\u003c/code\u003e\u003c/a\u003e REL: Prepare for the NumPy 2.4.4 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/02e838ba270a5ca3dd8afc5a31c090cd34a56615\"\u003e\u003ccode\u003e02e838b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31084\"\u003e#31084\u003c/a\u003e from charris/backport-31056\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/fa74b2d05f8f7604bf6635d5280c3216c8ec667f\"\u003e\u003ccode\u003efa74b2d\u003c/code\u003e\u003c/a\u003e MAINT: numpy.i: Replace deprecated \u003ccode\u003esprintf\u003c/code\u003e with \u003ccode\u003esnprintf\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31056\"\u003e#31056\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/533a6db96dfa2556a61102a58c35fd64eaf3fa2b\"\u003e\u003ccode\u003e533a6db\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31079\"\u003e#31079\u003c/a\u003e from charris/backport-20801\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/9e496cbd0a281195bd779ae1833f2a8f4a1d46a7\"\u003e\u003ccode\u003e9e496cb\u003c/code\u003e\u003c/a\u003e TST: fix POWER VSX feature mapping (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30801\"\u003e#30801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/8052c4b69ef18e582709af946f93f9e58b848f39\"\u003e\u003ccode\u003e8052c4b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31058\"\u003e#31058\u003c/a\u003e from charris/backport-31021\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/7f13b5ad2b69fd6ea6aa3af7036b2dcf98e96486\"\u003e\u003ccode\u003e7f13b5a\u003c/code\u003e\u003c/a\u003e MAINT: Skip test on PyPy.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/4c5fdd66c8f379a1e2b3f40fa62bd0b87769d1c7\"\u003e\u003ccode\u003e4c5fdd6\u003c/code\u003e\u003c/a\u003e MAINT: Remove unused import of tracemalloc.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/a3ca5ed354b26e0fd6e35bf29765a24271ed7c3a\"\u003e\u003ccode\u003ea3ca5ed\u003c/code\u003e\u003c/a\u003e Update numpy/_core/src/multiarray/shape.c\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/numpy/numpy/compare/v2.4.2...v2.4.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 9.0.2 to 9.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.0.3\u003c/h2\u003e\n\u003ch1\u003epytest 9.0.3 (2026-04-07)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12444\"\u003e#12444\u003c/a\u003e: Fixed \u003ccode\u003epytest.approx\u003c/code\u003e which now correctly takes into account \u003ccode\u003e~collections.abc.Mapping\u003c/code\u003e keys order to compare them.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13634\"\u003e#13634\u003c/a\u003e: Blocking a \u003ccode\u003econftest.py\u003c/code\u003e file using the \u003ccode\u003e-p no:\u003c/code\u003e option is now explicitly disallowed.\u003c/p\u003e\n\u003cp\u003ePreviously this resulted in an internal assertion failure during plugin loading.\u003c/p\u003e\n\u003cp\u003ePytest now raises a clear \u003ccode\u003eUsageError\u003c/code\u003e explaining that conftest files are not plugins and cannot be disabled via \u003ccode\u003e-p\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13734\"\u003e#13734\u003c/a\u003e: Fixed crash when a test raises an exceptiongroup with \u003ccode\u003e__tracebackhide__ = True\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14195\"\u003e#14195\u003c/a\u003e: Fixed an issue where non-string messages passed to \u003c!-- raw HTML omitted --\u003eunittest.TestCase.subTest()\u003c!-- raw HTML omitted --\u003e were not printed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14343\"\u003e#14343\u003c/a\u003e: Fixed use of insecure temporary directory (CVE-2025-71176).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13388\"\u003e#13388\u003c/a\u003e: Clarified documentation for \u003ccode\u003e-p\u003c/code\u003e vs \u003ccode\u003ePYTEST_PLUGINS\u003c/code\u003e plugin loading and fixed an incorrect \u003ccode\u003e-p\u003c/code\u003e example.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13731\"\u003e#13731\u003c/a\u003e: Clarified that capture fixtures (e.g. \u003ccode\u003ecapsys\u003c/code\u003e and \u003ccode\u003ecapfd\u003c/code\u003e) take precedence over the \u003ccode\u003e-s\u003c/code\u003e / \u003ccode\u003e--capture=no\u003c/code\u003e command-line options in \u003ccode\u003eAccessing captured output from a test function \u0026lt;accessing-captured-output\u0026gt;\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14088\"\u003e#14088\u003c/a\u003e: Clarified that the default \u003ccode\u003epytest_collection\u003c/code\u003e hook sets \u003ccode\u003esession.items\u003c/code\u003e before it calls \u003ccode\u003epytest_collection_finish\u003c/code\u003e, not after.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14255\"\u003e#14255\u003c/a\u003e: TOML integer log levels must be quoted: Updating reference documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12689\"\u003e#12689\u003c/a\u003e: The test reports are now published to Codecov from GitHub Actions.\nThe test statistics is visible \u003ca href=\"https://app.codecov.io/gh/pytest-dev/pytest/tests\"\u003eon the web interface\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e-- by \u003ccode\u003ealeguy02\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a7d58d7a21b78581e636bbbdea13c66ad1657c1e\"\u003e\u003ccode\u003ea7d58d7\u003c/code\u003e\u003c/a\u003e Prepare release version 9.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/089d98199c253d8f89a040243bc4f2aa6cd5ab22\"\u003e\u003ccode\u003e089d981\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14366\"\u003e#14366\u003c/a\u003e from bluetech/revert-14193-backport\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/8127eaf4ab7f6b2fdd0dc1b38343ec97aeef05ac\"\u003e\u003ccode\u003e8127eaf\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Fix: assertrepr_compare respects dict insertion order (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14050\"\u003e#14050\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14193\"\u003e#14193\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/99a7e6029e7a6e8d53e5df114b1346e035370241\"\u003e\u003ccode\u003e99a7e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14363\"\u003e#14363\u003c/a\u003e from pytest-dev/patchback/backports/9.0.x/95d8423bd...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ddee02a578da30dd43aedc39c1c1f1aaadfcee95\"\u003e\u003ccode\u003eddee02a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14343\"\u003e#14343\u003c/a\u003e from bluetech/cve-2025-71176-simple\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/74eac6916fee34726cb194f16c516e96fbd29619\"\u003e\u003ccode\u003e74eac69\u003c/code\u003e\u003c/a\u003e doc: Update training info (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14298\"\u003e#14298\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14301\"\u003e#14301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f92dee777cfdb77d1c43633d02766ddf1f07c869\"\u003e\u003ccode\u003ef92dee7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14267\"\u003e#14267\u003c/a\u003e from pytest-dev/patchback/backports/9.0.x/d6fa26c62...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7ee58acc8777c31ac6cf388d01addf5a414a7439\"\u003e\u003ccode\u003e7ee58ac\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12378\"\u003e#12378\u003c/a\u003e from Pierre-Sassoulas/fix-implicit-str-concat-and-d...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/37da870d37e3a2f5177cae075c7b9ae279432bf8\"\u003e\u003ccode\u003e37da870\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14259\"\u003e#14259\u003c/a\u003e from mitre88/patch-4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14268\"\u003e#14268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c34bfa3b7acb65b594707c714f1d8461b0304eed\"\u003e\u003ccode\u003ec34bfa3\u003c/code\u003e\u003c/a\u003e Add explanation for string context diffs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14257\"\u003e#14257\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14266\"\u003e#14266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/9.0.2...9.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 7.0.0 to 7.1.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst\"\u003epytest-cov's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.1.0 (2026-03-21)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed total coverage computation to always be consistent, regardless of reporting settings.\nPreviously some reports could produce different total counts, and consequently can make --cov-fail-under behave different depending on\nreporting options.\nSee \u003ccode\u003e[#641](https://github.com/pytest-dev/pytest-cov/issues/641) \u0026lt;https://github.com/pytest-dev/pytest-cov/issues/641\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImprove handling of ResourceWarning from sqlite3.\u003c/p\u003e\n\u003cp\u003eThe plugin adds warning filter for sqlite3 \u003ccode\u003eResourceWarning\u003c/code\u003e unclosed database (since 6.2.0).\nIt checks if there is already existing plugin for this message by comparing filter regular expression.\nWhen filter is specified on command line the message is escaped and does not match an expected message.\nA check for an escaped regular expression is added to handle this case.\u003c/p\u003e\n\u003cp\u003eWith this fix one can suppress \u003ccode\u003eResourceWarning\u003c/code\u003e from sqlite3 from command line::\u003c/p\u003e\n\u003cp\u003epytest -W \u0026quot;ignore:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\u0026quot; ...\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eVarious improvements to documentation.\nContributed by Art Pelling in \u003ccode\u003e[#718](https://github.com/pytest-dev/pytest-cov/issues/718) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/718\u0026gt;\u003c/code\u003e_ and\n\u0026quot;vivodi\u0026quot; in \u003ccode\u003e[#738](https://github.com/pytest-dev/pytest-cov/issues/738) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/738\u0026gt;\u003c/code\u003e\u003cem\u003e.\nAlso closed \u003ccode\u003e[#736](https://github.com/pytest-dev/pytest-cov/issues/736) \u0026lt;https://github.com/pytest-dev/pytest-cov/issues/736\u0026gt;\u003c/code\u003e\u003c/em\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed some assertions in tests.\nContributed by in Markéta Machová in \u003ccode\u003e[#722](https://github.com/pytest-dev/pytest-cov/issues/722) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/722\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved unnecessary coverage configuration copying (meant as a backup because reporting commands had configuration side-effects before coverage 5.0).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/66c8a526b1246b5eb8fb1bc218878131bc628622\"\u003e\u003ccode\u003e66c8a52\u003c/code\u003e\u003c/a\u003e Bump version: 7.0.0 → 7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f7076624784332594aa4cb3585d4757d295db15e\"\u003e\u003ccode\u003ef707662\u003c/code\u003e\u003c/a\u003e Make the examples use pypy 3.11.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6049a7847872e3139e6c82e93787123df5dc8672\"\u003e\u003ccode\u003e6049a78\u003c/code\u003e\u003c/a\u003e Make context test use the old ctracer (seems the new sysmon tracer behaves di...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/8ebf20bbbc73478b3f8fd36d30237d9ea083f06b\"\u003e\u003ccode\u003e8ebf20b\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/861d30e60d571f97259c6b718b71c819d5dbc3b9\"\u003e\u003ccode\u003e861d30e\u003c/code\u003e\u003c/a\u003e Remove the backup context manager  - shouldn't be needed since coverage 5.0, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/fd4c956014035527f0c3c8d7faef3f8cfdadac7f\"\u003e\u003ccode\u003efd4c956\u003c/code\u003e\u003c/a\u003e Pass the precision on the nulled total (seems that there's some caching goion...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/78c9c4ecb005faf4962fd86ff7bf9c9cce9554d6\"\u003e\u003ccode\u003e78c9c4e\u003c/code\u003e\u003c/a\u003e Only run the 3.9 on older deps.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4849a922e8be725c662a3d9175da571ace6545dc\"\u003e\u003ccode\u003e4849a92\u003c/code\u003e\u003c/a\u003e Punctuation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/197c35e2f37031fd1927715307ab6eed7cb3d2b7\"\u003e\u003ccode\u003e197c35e\u003c/code\u003e\u003c/a\u003e Update changelog and hopefully I don't forget to publish release again :))\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/14dc1c92d44108384e39803888635fdbfc578b7f\"\u003e\u003ccode\u003e14dc1c9\u003c/code\u003e\u003c/a\u003e Update examples to use 3.11 and make the adhoc layout example look a bit more...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v7.0.0...v7.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.15.0 to 0.15.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.10\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-04-09.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Allow closures in except handlers (\u003ccode\u003eLOG004\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24464\"\u003e#24464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Make \u003ccode\u003eSLF\u003c/code\u003e diagnostics robust to non-self-named variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24281\"\u003e#24281\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Make the fix for \u003ccode\u003ecollapsible-if\u003c/code\u003e safe in \u003ccode\u003epreview\u003c/code\u003e (\u003ccode\u003eSIM102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24371\"\u003e#24371\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid emitting multi-line f-string elements before Python 3.12 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24377\"\u003e#24377\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid syntax error from \u003ccode\u003eE502\u003c/code\u003e fixes in f-strings and t-strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24410\"\u003e#24410\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eStrip form feeds from indent passed to \u003ccode\u003ededent_to\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24381\"\u003e#24381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Fix panic caused by handling of octals (\u003ccode\u003eUP012\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24390\"\u003e#24390\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReject multi-line f-string elements before Python 3.12 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24355\"\u003e#24355\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Treat f-string interpolation as potential side effect (\u003ccode\u003eRUF019\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24426\"\u003e#24426\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for custom file extensions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24463\"\u003e#24463\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument adding fixes in CONTRIBUTING.md (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24393\"\u003e#24393\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix JSON typo in settings example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24517\"\u003e#24517\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/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dylwil3\"\u003e\u003ccode\u003e@​dylwil3\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/silverstein\"\u003e\u003ccode\u003e@​silverstein\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anishgirianish\"\u003e\u003ccode\u003e@​anishgirianish\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/shizukushq\"\u003e\u003ccode\u003e@​shizukushq\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zanieb\"\u003e\u003ccode\u003e@​zanieb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eInstall ruff 0.15.10\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.15.10/ruff-installer.sh | sh\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.10\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-04-09.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Allow closures in except handlers (\u003ccode\u003eLOG004\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24464\"\u003e#24464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Make \u003ccode\u003eSLF\u003c/code\u003e diagnostics robust to non-self-named variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24281\"\u003e#24281\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Make the fix for \u003ccode\u003ecollapsible-if\u003c/code\u003e safe in \u003ccode\u003epreview\u003c/code\u003e (\u003ccode\u003eSIM102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24371\"\u003e#24371\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid emitting multi-line f-string elements before Python 3.12 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24377\"\u003e#24377\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid syntax error from \u003ccode\u003eE502\u003c/code\u003e fixes in f-strings and t-strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24410\"\u003e#24410\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eStrip form feeds from indent passed to \u003ccode\u003ededent_to\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24381\"\u003e#24381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Fix panic caused by handling of octals (\u003ccode\u003eUP012\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24390\"\u003e#24390\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReject multi-line f-string elements before Python 3.12 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24355\"\u003e#24355\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Treat f-string interpolation as potential side effect (\u003ccode\u003eRUF019\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24426\"\u003e#24426\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for custom file extensions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24463\"\u003e#24463\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument adding fixes in CONTRIBUTING.md (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24393\"\u003e#24393\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix JSON typo in settings example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24517\"\u003e#24517\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/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dylwil3\"\u003e\u003ccode\u003e@​dylwil3\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/silverstein\"\u003e\u003ccode\u003e@​silverstein\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anishgirianish\"\u003e\u003ccode\u003e@​anishgirianish\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/shizukushq\"\u003e\u003ccode\u003e@​shizukushq\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zanieb\"\u003e\u003ccode\u003e@​zanieb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.15.9\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-04-02.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Flag annotated variable redeclarations as \u003ccode\u003eF811\u003c/code\u003e in preview mode (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24244\"\u003e#24244\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Allow dunder-named assignments in non-strict mode for \u003ccode\u003eRUF067\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24089\"\u003e#24089\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/252f76102a618bff6537b6c53c316ca3837f4abf\"\u003e\u003ccode\u003e252f761\u003c/code\u003e\u003c/a\u003e Bump 0.15.10 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24519\"\u003e#24519\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/37a1ec8bb8e30955787b0cdf6e97f7f2254dba7f\"\u003e\u003ccode\u003e37a1ec8\u003c/code\u003e\u003c/a\u003e [ty] Fix assignability of intersections with bounded typevars (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24502\"\u003e#24502\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/f518cc9ca0c830773dd49c3964eb5e49d52c8aed\"\u003e\u003ccode\u003ef518cc9\u003c/code\u003e\u003c/a\u003e [ty] Allow partially stringified \u003ccode\u003etype[…]\u003c/code\u003e annotations (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24518\"\u003e#24518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/16c4090d0a711b9c0523b932014f3daf140f35bc\"\u003e\u003ccode\u003e16c4090\u003c/code\u003e\u003c/a\u003e docs: fix JSON typo in settings example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24517\"\u003e#24517\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/99d97bd72f1934ac2af93e52468c10ef1c7a1a4e\"\u003e\u003ccode\u003e99d97bd\u003c/code\u003e\u003c/a\u003e [ty] Tighten up a few edge cases in \u003ccode\u003eConcatenate\u003c/code\u003e type-expression parsing (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/2\"\u003e#2\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/2714e345bdd64a5baae3844c0d25db7b0b9fe330\"\u003e\u003ccode\u003e2714e34\u003c/code\u003e\u003c/a\u003e [ty] Enable \u003ccode\u003epull-diagnostics\u003c/code\u003e by default in E2E tests (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24516\"\u003e#24516\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d8bc700722ab1b7272a4d724839da7c569b349d4\"\u003e\u003ccode\u003ed8bc700\u003c/code\u003e\u003c/a\u003e LSP: Add support for custom extensions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24463\"\u003e#24463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/a45f96d65dbd4f958b07accd718f8d2af48cb956\"\u003e\u003ccode\u003ea45f96d\u003c/code\u003e\u003c/a\u003e [ty] stop special-casing str constructor (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24514\"\u003e#24514\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/87a0f01cfd016e0297ef05ab638cde006bf8d947\"\u003e\u003ccode\u003e87a0f01\u003c/code\u003e\u003c/a\u003e [ruff] Treat f-string interpolation as potential side effect in RUF019 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24426\"\u003e#24426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/e9ba8489b8d1f1fd5fd66887a74d5f2f58f733d4\"\u003e\u003ccode\u003ee9ba848\u003c/code\u003e\u003c/a\u003e [ty] Fix excess subscript argument inference for non-generic types (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24354\"\u003e#24354\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.15.0...0.15.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mypy` from 1.19.1 to 1.20.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python/mypy/blob/master/CHANGELOG.md\"\u003emypy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003eMypy 1.20.1\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAlways disable sync in SQLite cache (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21184\"\u003e21184\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTemporarily skip few base64 tests (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21193\"\u003e21193\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRevert \u003ccode\u003edict.__or__\u003c/code\u003e typeshed change (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21186\"\u003e21186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix narrowing for match case with variadic tuples (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21192\"\u003e21192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid narrowing \u003ccode\u003etype[T]\u003c/code\u003e in type calls (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21174\"\u003e21174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression for catching empty tuple in except (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21153\"\u003e21153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix reachability for frozenset and dict view narrowing (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21151\"\u003e21151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix narrowing with chained comparison (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21150\"\u003e21150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid narrowing to unreachable at module level (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21144\"\u003e21144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow dangerous identity comparisons to \u003ccode\u003eAny\u003c/code\u003e typed variables (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21142\"\u003e21142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e--warn-unused-config\u003c/code\u003e should not be a strict flag (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21139\"\u003e21139\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAcknowledgements\u003c/h3\u003e\n\u003cp\u003eThanks to all mypy contributors who contributed to this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eA5rocks\u003c/li\u003e\n\u003cli\u003eAaron Wieczorek\u003c/li\u003e\n\u003cli\u003eAdam Turner\u003c/li\u003e\n\u003cli\u003eAli Hamdan\u003c/li\u003e\n\u003cli\u003easce\u003c/li\u003e\n\u003cli\u003eBobTheBuidler\u003c/li\u003e\n\u003cli\u003eBrent Westbrook\u003c/li\u003e\n\u003cli\u003eBrian Schubert\u003c/li\u003e\n\u003cli\u003ebzoracler\u003c/li\u003e\n\u003cli\u003eChris Burroughs\u003c/li\u003e\n\u003cli\u003eChristoph Tyralla\u003c/li\u003e\n\u003cli\u003eColin Watson\u003c/li\u003e\n\u003cli\u003eDonghoon Nam\u003c/li\u003e\n\u003cli\u003eE. M. Bray\u003c/li\u003e\n\u003cli\u003eEmma Smith\u003c/li\u003e\n\u003cli\u003eEthan Sarp\u003c/li\u003e\n\u003cli\u003eGeorge Ogden\u003c/li\u003e\n\u003cli\u003egetzze\u003c/li\u003e\n\u003cli\u003egrayjk\u003c/li\u003e\n\u003cli\u003eGregor Riepl\u003c/li\u003e\n\u003cli\u003eIvan Levkivskyi\u003c/li\u003e\n\u003cli\u003eJames Hilliard\u003c/li\u003e\n\u003cli\u003eJames Le Cuirot\u003c/li\u003e\n\u003cli\u003eJeremy Nimmer\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eKai (Kazuya Ito)\u003c/li\u003e\n\u003cli\u003ekaushal trivedi\u003c/li\u003e\n\u003cli\u003eKevin Kannammalil\u003c/li\u003e\n\u003cli\u003eLukas Geiger\u003c/li\u003e\n\u003cli\u003eŁukasz Langa\u003c/li\u003e\n\u003cli\u003eMarc Mueller\u003c/li\u003e\n\u003cli\u003eMichael R. Crusoe\u003c/li\u003e\n\u003cli\u003emichaelm-openai\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c60e8bfcb5910974b577e443725c475e0485d269\"\u003e\u003ccode\u003ec60e8bf\u003c/code\u003e\u003c/a\u003e Bump version to 1.20.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/842e4927738264949e969df0c2ee285a13594d06\"\u003e\u003ccode\u003e842e492\u003c/code\u003e\u003c/a\u003e Always disable sync in SQLite cache (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21184\"\u003e#21184\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/e82a046356b242441fcd55c8cf922c7904ef311a\"\u003e\u003ccode\u003ee82a046\u003c/code\u003e\u003c/a\u003e Temporarily skip few base64 tests (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21193\"\u003e#21193\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/f7fa418b6504e20c1277947e03a6db2f6d03e13e\"\u003e\u003ccode\u003ef7fa418\u003c/code\u003e\u003c/a\u003e Revert dict.\u003cstrong\u003eor\u003c/strong\u003e typeshed change (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21186\"\u003e#21186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/a2e8ee1afd5bbda26ad301496685295b1a7997a3\"\u003e\u003ccode\u003ea2e8ee1\u003c/code\u003e\u003c/a\u003e Fix narrowing for match case with variadic tuples (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21192\"\u003e#21192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/521f88f510c2065132909928815f08502097ceea\"\u003e\u003ccode\u003e521f88f\u003c/code\u003e\u003c/a\u003e Avoid narrowing type[T] in type calls (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21174\"\u003e#21174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/a4876e9186b927fe4777609fc9932752dcfb7047\"\u003e\u003ccode\u003ea4876e9\u003c/code\u003e\u003c/a\u003e Fix regression for catching empty tuple in except (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21153\"\u003e#21153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/6fccffcac0c8c24034d4f2b262ca7e5564ba9375\"\u003e\u003ccode\u003e6fccffc\u003c/code\u003e\u003c/a\u003e Fix reachability for frozenset and dict view narrowing (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21151\"\u003e#21151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/de50419dc84a66f0e8606308023f81a44dee54f3\"\u003e\u003ccode\u003ede50419\u003c/code\u003e\u003c/a\u003e Fix narrowing with chained comparison (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21150\"\u003e#21150\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/eafcf18ff1d83923c0f749cf3056962df63ed693\"\u003e\u003ccode\u003eeafcf18\u003c/code\u003e\u003c/a\u003e Avoid narrowing to unreachable at module level (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21144\"\u003e#21144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/mypy/compare/v1.19.1...v1.20.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/ASFHyP3/opera-rtc-s1-browse/pull/181","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ASFHyP3%2Fopera-rtc-s1-browse/issues/181","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/181/packages"}},{"old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","update_type":null,"path":null,"pr_created_at":"2026-04-12T02:13:24.000Z","version_change":"\u003e=6.2 → \u003e=10.0.5","issue":{"uuid":"4246234520","node_id":"PR_kwDOOzY3rM7RuOxi","number":161,"state":"open","title":"deps(deps-dev): update setuptools-scm requirement from \u003e=6.2 to \u003e=10.0.5","user":"dependabot[bot]","labels":[],"assignees":["pkuppens"],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-12T02:13:24.000Z","updated_at":"2026-04-12T02:13:25.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps-dev): update","packages":[{"name":"setuptools-scm","old_version":"\u003e=6.2","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\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/pkuppens/on_prem_rag/pull/161","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/pkuppens%2Fon_prem_rag/issues/161","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/161/packages"}},{"old_version":"9.2.2","new_version":"10.0.5","update_type":"major","path":null,"pr_created_at":"2026-04-11T12:31:30.000Z","version_change":"9.2.2 → 10.0.5","issue":{"uuid":"4244521853","node_id":"PR_kwDORiN6gs7RqUkE","number":23,"state":"closed","title":"chore(deps): bump the pip-all group across 1 directory with 21 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-04-11T12:58:50.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-11T12:31:30.000Z","updated_at":"2026-04-11T12:58:58.000Z","time_to_close":1640,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): bump","group_name":"pip-all","update_count":21,"packages":[{"name":"azure-identity","old_version":"1.25.2","new_version":"1.25.3","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"rich","old_version":"14.3.3","new_version":"14.3.4","repository_url":"https://github.com/Textualize/rich"},{"name":"mypy","old_version":"1.19.1","new_version":"1.20.0","repository_url":"https://github.com/python/mypy"},{"name":"pytest","old_version":"9.0.2","new_version":"9.0.3","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"ruff","old_version":"0.15.5","new_version":"0.15.10","repository_url":"https://github.com/astral-sh/ruff"},{"name":"types-pyyaml","old_version":"6.0.12.20250915","new_version":"6.0.12.20260408","repository_url":"https://github.com/python/typeshed"},{"name":"anyio","old_version":"4.12.1","new_version":"4.13.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"azure-core","old_version":"1.38.2","new_version":"1.39.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"charset-normalizer","old_version":"3.4.5","new_version":"3.4.7","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.3.1","new_version":"8.3.2","repository_url":"https://github.com/pallets/click"},{"name":"coverage","old_version":"7.13.4","new_version":"7.13.5","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"librt","old_version":"0.8.1","new_version":"0.9.0","repository_url":"https://github.com/mypyc/librt"},{"name":"mkdocs-get-deps","old_version":"0.2.0","new_version":"0.2.2","repository_url":"https://github.com/mkdocs/get-deps"},{"name":"mkdocs-material","old_version":"9.7.4","new_version":"9.7.6","repository_url":"https://github.com/squidfunk/mkdocs-material"},{"name":"msal","old_version":"1.35.1","new_version":"1.36.0","repository_url":"https://github.com/AzureAD/microsoft-authentication-library-for-python"},{"name":"platformdirs","old_version":"4.9.4","new_version":"4.9.6","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pydantic-core","old_version":"2.41.5","new_version":"2.45.0","repository_url":"https://github.com/pydantic/pydantic-core"},{"name":"pymdown-extensions","old_version":"10.21","new_version":"10.21.2","repository_url":"https://github.com/facelessuser/pymdown-extensions"},{"name":"pytest-cov","old_version":"7.0.0","new_version":"7.1.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"setuptools","old_version":"82.0.0","new_version":"82.0.1","repository_url":"https://github.com/pypa/setuptools"},{"name":"setuptools-scm","old_version":"9.2.2","new_version":"10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-all group with 21 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [azure-identity](https://github.com/Azure/azure-sdk-for-python) | `1.25.2` | `1.25.3` |\n| [rich](https://github.com/Textualize/rich) | `14.3.3` | `14.3.4` |\n| [mypy](https://github.com/python/mypy) | `1.19.1` | `1.20.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `9.0.2` | `9.0.3` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.5` | `0.15.10` |\n| [types-pyyaml](https://github.com/python/typeshed) | `6.0.12.20250915` | `6.0.12.20260408` |\n| [anyio](https://github.com/agronholm/anyio) | `4.12.1` | `4.13.0` |\n| [azure-core](https://github.com/Azure/azure-sdk-for-python) | `1.38.2` | `1.39.0` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.5` | `3.4.7` |\n| [click](https://github.com/pallets/click) | `8.3.1` | `8.3.2` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.13.4` | `7.13.5` |\n| [librt](https://github.com/mypyc/librt) | `0.8.1` | `0.9.0` |\n| [mkdocs-get-deps](https://github.com/mkdocs/get-deps) | `0.2.0` | `0.2.2` |\n| [mkdocs-material](https://github.com/squidfunk/mkdocs-material) | `9.7.4` | `9.7.6` |\n| [msal](https://github.com/AzureAD/microsoft-authentication-library-for-python) | `1.35.1` | `1.36.0` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.9.4` | `4.9.6` |\n| [pydantic-core](https://github.com/pydantic/pydantic-core) | `2.41.5` | `2.45.0` |\n| [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) | `10.21` | `10.21.2` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `7.0.0` | `7.1.0` |\n| [setuptools](https://github.com/pypa/setuptools) | `82.0.0` | `82.0.1` |\n| [setuptools-scm](https://github.com/pypa/setuptools-scm) | `9.2.2` | `10.0.5` |\n\n\nUpdates `azure-identity` from 1.25.2 to 1.25.3\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-identity's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eazure-identity_1.25.3\u003c/h2\u003e\n\u003ch2\u003e1.25.3 (2026-03-12)\u003c/h2\u003e\n\u003ch3\u003eBugs Fixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed an issue where an expired token could skip refresh when a recent token request was made, due to the retry delay taking precedence over expiration. (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/pull/45496\"\u003e#45496\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBumped minimum dependency on \u003ccode\u003emsal\u003c/code\u003e to \u003ccode\u003e\u0026gt;=1.35.1\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/Azure/azure-sdk-for-python/commit/a989ea467731265fdf097b622ba254703187746b\"\u003e\u003ccode\u003ea989ea4\u003c/code\u003e\u003c/a\u003e [Identity] Prep patch release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/79728834e7f38018d372860cf9117bf51d9ed417\"\u003e\u003ccode\u003e7972883\u003c/code\u003e\u003c/a\u003e [Identity] Adjust refresh logic (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45496\"\u003e#45496\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/04764a9a8a0cb59aab6421b41152246853dfcfe8\"\u003e\u003ccode\u003e04764a9\u003c/code\u003e\u003c/a\u003e add psscript to convert apiview json files to md (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45589\"\u003e#45589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/50e01659d7204865dfa07c5ece1019ed9a229b4f\"\u003e\u003ccode\u003e50e0165\u003c/code\u003e\u003c/a\u003e Sync eng/common directory with azure-sdk-tools for PR 14461 (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45646\"\u003e#45646\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/5333117e0e181404ff4deaa757e9b6ef86dabf8b\"\u003e\u003ccode\u003e5333117\u003c/code\u003e\u003c/a\u003e Add Bo to /sdk/ai/azure-ai-projects owner list (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45664\"\u003e#45664\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/775d6942e4335422fc69da8e997a6069e356b104\"\u003e\u003ccode\u003e775d694\u003c/code\u003e\u003c/a\u003e Doc and automation updates for .github sync directory changes (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45630\"\u003e#45630\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/c6e48b5cd71adf5728a5e2f33bc9f62fb221221f\"\u003e\u003ccode\u003ec6e48b5\u003c/code\u003e\u003c/a\u003e [Core] Prepare release (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45656\"\u003e#45656\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/ae769c4e9379c8d309bffa5ccb76dcfba64e1f71\"\u003e\u003ccode\u003eae769c4\u003c/code\u003e\u003c/a\u003e Fix custom Memory Stores LRO poller operation (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45662\"\u003e#45662\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/6074492844d670316eb171756483f1394a6c94c7\"\u003e\u003ccode\u003e6074492\u003c/code\u003e\u003c/a\u003e Add asset id none check in dt (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45618\"\u003e#45618\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/e1a986aeb7a8001bd3a4f336cf096c2b050aa480\"\u003e\u003ccode\u003ee1a986a\u003c/code\u003e\u003c/a\u003e Bump tar from 7.5.10 to 7.5.11 in /eng/common/tsp-client (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45640\"\u003e#45640\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Azure/azure-sdk-for-python/compare/azure-identity_1.25.2...azure-identity_1.25.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `rich` from 14.3.3 to 14.3.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Textualize/rich/releases\"\u003erich's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eThe Faster Startup Release\u003c/h2\u003e\n\u003cp\u003eNo new features in this release, but there should be improved startup time for Rich apps, and potentially improved runtime if you have a lot of links.\u003c/p\u003e\n\u003ch2\u003e[14.3.4] - 2026-04-11\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImproved import time with lazy loading \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/4070\"\u003eTextualize/rich#4070\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChanged link id generation to avoid random number generation at runtime \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3845\"\u003eTextualize/rich#3845\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Textualize/rich/blob/master/CHANGELOG.md\"\u003erich's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[14.3.4] - 2026-04-11\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImproved import time with lazy loading \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/4070\"\u003eTextualize/rich#4070\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChanged link id generation to avoid random number generation at runtime \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3845\"\u003eTextualize/rich#3845\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/ee8378c3bbbd7c75abc2f55c6c19e83b218ae81d\"\u003e\u003ccode\u003eee8378c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Textualize/rich/issues/4073\"\u003e#4073\u003c/a\u003e from Textualize/bump1434\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/f441a326f10af5dc0cd570dadaed16e7f7035fc3\"\u003e\u003ccode\u003ef441a32\u003c/code\u003e\u003c/a\u003e changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/b3167144fea59b02e257c1361f5e0c5832065ccd\"\u003e\u003ccode\u003eb316714\u003c/code\u003e\u003c/a\u003e bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/a86dce09714f4e5195cce8c15fce7a586d7b562a\"\u003e\u003ccode\u003ea86dce0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Textualize/rich/issues/3845\"\u003e#3845\u003c/a\u003e from akx/faster-ids\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/7f40063da781f4990d21423f23f7ccb3165ce0bd\"\u003e\u003ccode\u003e7f40063\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Textualize/rich/issues/4070\"\u003e#4070\u003c/a\u003e from KRRT7/upstream/lazy-traceback-logging\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/6729c6f6c4ee24a13a94d825cb7ce66b52206db2\"\u003e\u003ccode\u003e6729c6f\u003c/code\u003e\u003c/a\u003e typing\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/64f2f1cf89a698f17f5b2c801b014dc8aced1177\"\u003e\u003ccode\u003e64f2f1c\u003c/code\u003e\u003c/a\u003e import\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/de4a8bd5746a3cbda6d8ead9f75cbf49f868a639\"\u003e\u003ccode\u003ede4a8bd\u003c/code\u003e\u003c/a\u003e lazy is_expandable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/e5b7b3199fecb1f7d1fbc3d3d0df800fa6234830\"\u003e\u003ccode\u003ee5b7b31\u003c/code\u003e\u003c/a\u003e no need to rename locals\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/5d6e2d72e4012eb594e131a8319dbd4165d97eda\"\u003e\u003ccode\u003e5d6e2d7\u003c/code\u003e\u003c/a\u003e fix docstring\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Textualize/rich/compare/v14.3.3...v14.3.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mypy` from 1.19.1 to 1.20.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python/mypy/blob/master/CHANGELOG.md\"\u003emypy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eMypy Release Notes\u003c/h1\u003e\n\u003ch2\u003eNext Release\u003c/h2\u003e\n\u003ch2\u003eMypy 1.20\u003c/h2\u003e\n\u003cp\u003eWe’ve just uploaded mypy 1.20.0 to the Python Package Index (\u003ca href=\"https://pypi.org/project/mypy/\"\u003ePyPI\u003c/a\u003e).\nMypy is a static type checker for Python. This release includes new features, performance\nimprovements and bug fixes. You can install it as follows:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install -U mypy\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eYou can read the full documentation for this release on \u003ca href=\"http://mypy.readthedocs.io\"\u003eRead the Docs\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003ePlanned Changes to Defaults and Flags in Mypy 2.0\u003c/h3\u003e\n\u003cp\u003eAs a reminder, we are planning to enable \u003ccode\u003e--local-partial-types\u003c/code\u003e by default in mypy 2.0, which\nwill likely be the next feature release. This will often require at least minor code changes. This\noption is implicitly enabled by mypy daemon, so this makes the behavior of daemon and non-daemon\nmodes consistent.\u003c/p\u003e\n\u003cp\u003eNote that this release improves the compatibility of \u003ccode\u003e--local-partial-types\u003c/code\u003e significantly to\nmake the switch easier (see below for more).\u003c/p\u003e\n\u003cp\u003eThis can also be configured in a mypy configuration file (use \u003ccode\u003eFalse\u003c/code\u003e to disable):\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003elocal_partial_types = True\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eFor more information, refer to the\n\u003ca href=\"https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-local-partial-types\"\u003edocumentation\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe will also enable \u003ccode\u003e--strict-bytes\u003c/code\u003e by default in mypy 2.0. This usually requires at most\nminor code changes to adopt. For more information, refer to the\n\u003ca href=\"https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-strict-bytes\"\u003edocumentation\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eFinally, \u003ccode\u003e--allow-redefinition-new\u003c/code\u003e will be renamed to \u003ccode\u003e--allow-redefinition\u003c/code\u003e. If you want\nto continue using the older \u003ccode\u003e--allow-redefinition\u003c/code\u003e semantics which are less flexible (e.g.\nlimited support for conditional redefinitions), you can switch to \u003ccode\u003e--allow-redefinition-old\u003c/code\u003e,\nwhich is currently supported as an alias to the legacy \u003ccode\u003e--allow-redefinition\u003c/code\u003e behavior.\nTo use \u003ccode\u003e--allow-redefinition\u003c/code\u003e in the upcoming mypy 2.0, you can't use \u003ccode\u003e--no-local-partial-types\u003c/code\u003e.\nFor more information, refer to the\n\u003ca href=\"https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-allow-redefinition-new\"\u003edocumentation\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eBetter Type Narrowing\u003c/h3\u003e\n\u003cp\u003eMypy's implementation of narrowing has been substantially reworked. Mypy will now narrow more\naggressively, more consistently, and more correctly. In particular, you are likely to notice new\nnarrowing behavior in equality expressions (\u003ccode\u003e==\u003c/code\u003e), containment expressions (\u003ccode\u003ein\u003c/code\u003e),\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/770d3ca4997032dc3a1c4f0b468e9f58e8f38505\"\u003e\u003ccode\u003e770d3ca\u003c/code\u003e\u003c/a\u003e Remove +dev from version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/4738ffafc56a0d175cba06e893ffa62e756fc7e0\"\u003e\u003ccode\u003e4738ffa\u003c/code\u003e\u003c/a\u003e Changelog updates for 1.20 (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21109\"\u003e#21109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/b4f07a717c3a239a9c77808c5550fff5f2638c96\"\u003e\u003ccode\u003eb4f07a7\u003c/code\u003e\u003c/a\u003e Use 'native-parser' instead of 'native-parse' for optional dependency (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21115\"\u003e#21115\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/7bec7b7f791790b1c925cdcc573ced564fbbf065\"\u003e\u003ccode\u003e7bec7b7\u003c/code\u003e\u003c/a\u003e [mypyc] Document librt and librt.base64 (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21114\"\u003e#21114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c4825969450385cf3eb91a4fc02f273b369bc301\"\u003e\u003ccode\u003ec482596\u003c/code\u003e\u003c/a\u003e --allow-redefinition-new is no longer experimental (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21110\"\u003e#21110\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c916ca3fa79d9324dcbe130b18e24e2b5e2d1eb5\"\u003e\u003ccode\u003ec916ca3\u003c/code\u003e\u003c/a\u003e sdist: include \u003ccode\u003emisc/{diff-cache,apply-cache-diff}.py\u003c/code\u003e for `mypy/test/test_di...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/b137e4ed41d6178f6dbd0e609db56b8c1ad5384a\"\u003e\u003ccode\u003eb137e4e\u003c/code\u003e\u003c/a\u003e [mypyc] Speed up native-to-native imports within the same group (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21101\"\u003e#21101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/978b711c21adadf5dae4db80127ddf270d79af5f\"\u003e\u003ccode\u003e978b711\u003c/code\u003e\u003c/a\u003e [mypyc] Fix range loop variable off-by-one after loop exit (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21098\"\u003e#21098\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/67ada30918d1a32e1935e9ac468113e0aa002b79\"\u003e\u003ccode\u003e67ada30\u003c/code\u003e\u003c/a\u003e [stubtest] Check runtime availability of private types not marked `@type_chec...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/bdef6ef8734af07cab1bf0acadc1d8ab9add93c3\"\u003e\u003ccode\u003ebdef6ef\u003c/code\u003e\u003c/a\u003e librt cache tests: build respecting MYPY_TEST_PREFIX (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21097\"\u003e#21097\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/mypy/compare/v1.19.1...v1.20.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 9.0.2 to 9.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.0.3\u003c/h2\u003e\n\u003ch1\u003epytest 9.0.3 (2026-04-07)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12444\"\u003e#12444\u003c/a\u003e: Fixed \u003ccode\u003epytest.approx\u003c/code\u003e which now correctly takes into account \u003ccode\u003e~collections.abc.Mapping\u003c/code\u003e keys order to compare them.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13634\"\u003e#13634\u003c/a\u003e: Blocking a \u003ccode\u003econftest.py\u003c/code\u003e file using the \u003ccode\u003e-p no:\u003c/code\u003e option is now explicitly disallowed.\u003c/p\u003e\n\u003cp\u003ePreviously this resulted in an internal assertion failure during plugin loading.\u003c/p\u003e\n\u003cp\u003ePytest now raises a clear \u003ccode\u003eUsageError\u003c/code\u003e explaining that conftest files are not plugins and cannot be disabled via \u003ccode\u003e-p\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13734\"\u003e#13734\u003c/a\u003e: Fixed crash when a test raises an exceptiongroup with \u003ccode\u003e__tracebackhide__ = True\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14195\"\u003e#14195\u003c/a\u003e: Fixed an issue where non-string messages passed to \u003c!-- raw HTML omitted --\u003eunittest.TestCase.subTest()\u003c!-- raw HTML omitted --\u003e were not printed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14343\"\u003e#14343\u003c/a\u003e: Fixed use of insecure temporary directory (CVE-2025-71176).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13388\"\u003e#13388\u003c/a\u003e: Clarified documentation for \u003ccode\u003e-p\u003c/code\u003e vs \u003ccode\u003ePYTEST_PLUGINS\u003c/code\u003e plugin loading and fixed an incorrect \u003ccode\u003e-p\u003c/code\u003e example.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13731\"\u003e#13731\u003c/a\u003e: Clarified that capture fixtures (e.g. \u003ccode\u003ecapsys\u003c/code\u003e and \u003ccode\u003ecapfd\u003c/code\u003e) take precedence over the \u003ccode\u003e-s\u003c/code\u003e / \u003ccode\u003e--capture=no\u003c/code\u003e command-line options in \u003ccode\u003eAccessing captured output from a test function \u0026lt;accessing-captured-output\u0026gt;\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14088\"\u003e#14088\u003c/a\u003e: Clarified that the default \u003ccode\u003epytest_collection\u003c/code\u003e hook sets \u003ccode\u003esession.items\u003c/code\u003e before it calls \u003ccode\u003epytest_collection_finish\u003c/code\u003e, not after.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14255\"\u003e#14255\u003c/a\u003e: TOML integer log levels must be quoted: Updating reference documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12689\"\u003e#12689\u003c/a\u003e: The test reports are now published to Codecov from GitHub Actions.\nThe test statistics is visible \u003ca href=\"https://app.codecov.io/gh/pytest-dev/pytest/tests\"\u003eon the web interface\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e-- by \u003ccode\u003ealeguy02\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a7d58d7a21b78581e636bbbdea13c66ad1657c1e\"\u003e\u003ccode\u003ea7d58d7\u003c/code\u003e\u003c/a\u003e Prepare release version 9.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/089d98199c253d8f89a040243bc4f2aa6cd5ab22\"\u003e\u003ccode\u003e089d981\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14366\"\u003e#14366\u003c/a\u003e from bluetech/revert-14193-backport\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/8127eaf4ab7f6b2fdd0dc1b38343ec97aeef05ac\"\u003e\u003ccode\u003e8127eaf\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Fix: assertrepr_compare respects dict insertion order (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14050\"\u003e#14050\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14193\"\u003e#14193\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/99a7e6029e7a6e8d53e5df114b1346e035370241\"\u003e\u003ccode\u003e99a7e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14363\"\u003e#14363\u003c/a\u003e from pytest-dev/patchback/backports/9.0.x/95d8423bd...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ddee02a578da30dd43aedc39c1c1f1aaadfcee95\"\u003e\u003ccode\u003eddee02a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14343\"\u003e#14343\u003c/a\u003e from bluetech/cve-2025-71176-simple\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/74eac6916fee34726cb194f16c516e96fbd29619\"\u003e\u003ccode\u003e74eac69\u003c/code\u003e\u003c/a\u003e doc: Update training info (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14298\"\u003e#14298\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14301\"\u003e#14301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f92dee777cfdb77d1c43633d02766ddf1f07c869\"\u003e\u003ccode\u003ef92dee7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14267\"\u003e#14267\u003c/a\u003e from pytest-dev/patchback/backports/9.0.x/d6fa26c62...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7ee58acc8777c31ac6cf388d01addf5a414a7439\"\u003e\u003ccode\u003e7ee58ac\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12378\"\u003e#12378\u003c/a\u003e from Pierre-Sassoulas/fix-implicit-str-concat-and-d...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/37da870d37e3a2f5177cae075c7b9ae279432bf8\"\u003e\u003ccode\u003e37da870\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14259\"\u003e#14259\u003c/a\u003e from mitre88/patch-4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14268\"\u003e#14268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c34bfa3b7acb65b594707c714f1d8461b0304eed\"\u003e\u003ccode\u003ec34bfa3\u003c/code\u003e\u003c/a\u003e Add explanation for string context diffs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14257\"\u003e#14257\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14266\"\u003e#14266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/9.0.2...9.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.15.5 to 0.15.10\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.10\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-04-09.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Allow closures in except handlers (\u003ccode\u003eLOG004\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24464\"\u003e#24464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Make \u003ccode\u003eSLF\u003c/code\u003e diagnostics robust to non-self-named variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24281\"\u003e#24281\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Make the fix for \u003ccode\u003ecollapsible-if\u003c/code\u003e safe in \u003ccode\u003epreview\u003c/code\u003e (\u003ccode\u003eSIM102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24371\"\u003e#24371\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid emitting multi-line f-string elements before Python 3.12 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24377\"\u003e#24377\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid syntax error from \u003ccode\u003eE502\u003c/code\u003e fixes in f-strings and t-strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24410\"\u003e#24410\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eStrip form feeds from indent passed to \u003ccode\u003ededent_to\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24381\"\u003e#24381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Fix panic caused by handling of octals (\u003ccode\u003eUP012\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24390\"\u003e#24390\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReject multi-line f-string elements before Python 3.12 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24355\"\u003e#24355\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Treat f-string interpolation as potential side effect (\u003ccode\u003eRUF019\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24426\"\u003e#24426\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for custom file extensions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24463\"\u003e#24463\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument adding fixes in CONTRIBUTING.md (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24393\"\u003e#24393\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix JSON typo in settings example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24517\"\u003e#24517\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/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dylwil3\"\u003e\u003ccode\u003e@​dylwil3\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/silverstein\"\u003e\u003ccode\u003e@​silverstein\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anishgirianish\"\u003e\u003ccode\u003e@​anishgirianish\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/shizukushq\"\u003e\u003ccode\u003e@​shizukushq\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zanieb\"\u003e\u003ccode\u003e@​zanieb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eInstall ruff 0.15.10\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.15.10/ruff-installer.sh | sh\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.10\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-04-09.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging\u003c/code\u003e] Allow closures in except handlers (\u003ccode\u003eLOG004\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24464\"\u003e#24464\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Make \u003ccode\u003eSLF\u003c/code\u003e diagnostics robust to non-self-named variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24281\"\u003e#24281\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Make the fix for \u003ccode\u003ecollapsible-if\u003c/code\u003e safe in \u003ccode\u003epreview\u003c/code\u003e (\u003ccode\u003eSIM102\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24371\"\u003e#24371\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAvoid emitting multi-line f-string elements before Python 3.12 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24377\"\u003e#24377\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAvoid syntax error from \u003ccode\u003eE502\u003c/code\u003e fixes in f-strings and t-strings (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24410\"\u003e#24410\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eStrip form feeds from indent passed to \u003ccode\u003ededent_to\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24381\"\u003e#24381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Fix panic caused by handling of octals (\u003ccode\u003eUP012\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24390\"\u003e#24390\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReject multi-line f-string elements before Python 3.12 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24355\"\u003e#24355\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Treat f-string interpolation as potential side effect (\u003ccode\u003eRUF019\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24426\"\u003e#24426\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for custom file extensions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24463\"\u003e#24463\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument adding fixes in CONTRIBUTING.md (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24393\"\u003e#24393\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix JSON typo in settings example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24517\"\u003e#24517\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/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dylwil3\"\u003e\u003ccode\u003e@​dylwil3\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/silverstein\"\u003e\u003ccode\u003e@​silverstein\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anishgirianish\"\u003e\u003ccode\u003e@​anishgirianish\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/shizukushq\"\u003e\u003ccode\u003e@​shizukushq\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zanieb\"\u003e\u003ccode\u003e@​zanieb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.15.9\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-04-02.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Flag annotated variable redeclarations as \u003ccode\u003eF811\u003c/code\u003e in preview mode (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24244\"\u003e#24244\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Allow dunder-named assignments in non-strict mode for \u003ccode\u003eRUF067\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24089\"\u003e#24089\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/252f76102a618bff6537b6c53c316ca3837f4abf\"\u003e\u003ccode\u003e252f761\u003c/code\u003e\u003c/a\u003e Bump 0.15.10 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24519\"\u003e#24519\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/37a1ec8bb8e30955787b0cdf6e97f7f2254dba7f\"\u003e\u003ccode\u003e37a1ec8\u003c/code\u003e\u003c/a\u003e [ty] Fix assignability of intersections with bounded typevars (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24502\"\u003e#24502\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/f518cc9ca0c830773dd49c3964eb5e49d52c8aed\"\u003e\u003ccode\u003ef518cc9\u003c/code\u003e\u003c/a\u003e [ty] Allow partially stringified \u003ccode\u003etype[…]\u003c/code\u003e annotations (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24518\"\u003e#24518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/16c4090d0a711b9c0523b932014f3daf140f35bc\"\u003e\u003ccode\u003e16c4090\u003c/code\u003e\u003c/a\u003e docs: fix JSON typo in settings example (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24517\"\u003e#24517\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/99d97bd72f1934ac2af93e52468c10ef1c7a1a4e\"\u003e\u003ccode\u003e99d97bd\u003c/code\u003e\u003c/a\u003e [ty] Tighten up a few edge cases in \u003ccode\u003eConcatenate\u003c/code\u003e type-expression parsing (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/2\"\u003e#2\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/2714e345bdd64a5baae3844c0d25db7b0b9fe330\"\u003e\u003ccode\u003e2714e34\u003c/code\u003e\u003c/a\u003e [ty] Enable \u003ccode\u003epull-diagnostics\u003c/code\u003e by default in E2E tests (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24516\"\u003e#24516\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d8bc700722ab1b7272a4d724839da7c569b349d4\"\u003e\u003ccode\u003ed8bc700\u003c/code\u003e\u003c/a\u003e LSP: Add support for custom extensions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24463\"\u003e#24463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/a45f96d65dbd4f958b07accd718f8d2af48cb956\"\u003e\u003ccode\u003ea45f96d\u003c/code\u003e\u003c/a\u003e [ty] stop special-casing str constructor (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24514\"\u003e#24514\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/87a0f01cfd016e0297ef05ab638cde006bf8d947\"\u003e\u003ccode\u003e87a0f01\u003c/code\u003e\u003c/a\u003e [ruff] Treat f-string interpolation as potential side effect in RUF019 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24426\"\u003e#24426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/e9ba8489b8d1f1fd5fd66887a74d5f2f58f733d4\"\u003e\u003ccode\u003ee9ba848\u003c/code\u003e\u003c/a\u003e [ty] Fix excess subscript argument inference for non-generic types (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24354\"\u003e#24354\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.15.5...0.15.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `types-pyyaml` from 6.0.12.20250915 to 6.0.12.20260408\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/python/typeshed/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `anyio` from 4.12.1 to 4.13.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.13.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for Python 3.9\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003ettl\u003c/code\u003e parameter to the \u003ccode\u003eanyio.functools.lru_cache\u003c/code\u003e wrapper (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1073\"\u003e#1073\u003c/a\u003e; PR by \u003ca href=\"https://github.com/Graeme22\"\u003e\u003ccode\u003e@​Graeme22\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eWidened the type annotations of file I/O streams to accept \u003ccode\u003eIO[bytes]\u003c/code\u003e instead of just \u003ccode\u003eBinaryIO\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1078\"\u003e#1078\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eanyio.Path\u003c/code\u003e not being compatible with Python 3.15 due to the removal of \u003ccode\u003epathlib.Path.is_reserved()\u003c/code\u003e and the addition of \u003ccode\u003epathlib.Path.__vfspath__()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1061\"\u003e#1061\u003c/a\u003e; PR by \u003ca href=\"https://github.com/veeceey\"\u003e\u003ccode\u003e@​veeceey\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed the \u003ccode\u003eBrokenResourceError\u003c/code\u003e raised by the asyncio \u003ccode\u003eSocketStream\u003c/code\u003e not having the original exception as its cause (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1055\"\u003e#1055\u003c/a\u003e; PR by \u003ca href=\"https://github.com/veeceey\"\u003e\u003ccode\u003e@​veeceey\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed the \u003ccode\u003eTypeError\u003c/code\u003e raised when using \u0026quot;func\u0026quot; as a parameter name in \u003ccode\u003epytest.mark.parametrize\u003c/code\u003e when using the pytest plugin (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1068\"\u003e#1068\u003c/a\u003e; PR by \u003ca href=\"https://github.com/JohnnyDeuss\"\u003e\u003ccode\u003e@​JohnnyDeuss\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed the pytest plugin not running tests that had the \u003ccode\u003eanyio\u003c/code\u003e marker added programmatically via \u003ccode\u003epytest_collection_modifyitems\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/422\"\u003e#422\u003c/a\u003e; PR by \u003ca href=\"https://github.com/chbndrhnns\"\u003e\u003ccode\u003e@​chbndrhnns\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed cancellation exceptions leaking from a \u003ccode\u003eCancelScope\u003c/code\u003e on asyncio when they are contained in an exception group alongside non-cancellation exceptions (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1091\"\u003e#1091\u003c/a\u003e; PR by \u003ca href=\"https://github.com/gschaffner\"\u003e\u003ccode\u003e@​gschaffner\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eCondition.wait()\u003c/code\u003e not passing on a notification when the task is cancelled but already received a notification\u003c/li\u003e\n\u003cli\u003eFixed inverted condition in the process pool shutdown phase which would cause still-running pooled processes not to be terminated (\u003ca href=\"https://redirect.github.com/agronholm/anyio/pull/1074\"\u003e#1074\u003c/a\u003e; PR by \u003ca href=\"https://github.com/bysiber\"\u003e\u003ccode\u003e@​bysiber\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/agronholm/anyio/commit/afbe93ca9d0c447adf26e9c1715ac20870622bf2\"\u003e\u003ccode\u003eafbe93c\u003c/code\u003e\u003c/a\u003e Bumped up the version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/33bdf2e4b4f40c2df178123746147a6d2471808d\"\u003e\u003ccode\u003e33bdf2e\u003c/code\u003e\u003c/a\u003e Rearranged the changelog entries\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/19e09e25bc5a23dd78a577d8c3909dd377057c78\"\u003e\u003ccode\u003e19e09e2\u003c/code\u003e\u003c/a\u003e Fixed inverted condition in _forcibly_shutdown_process_pool_on_exit (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1074\"\u003e#1074\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/9369d80b9e8292f2a892a9d5c73923c6a28aa08c\"\u003e\u003ccode\u003e9369d80\u003c/code\u003e\u003c/a\u003e Fixed Condition.wait() not handing over notification when cancelled\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/6f122abdc6f6b166c6b6ac27d36d55cdf8fa08e8\"\u003e\u003ccode\u003e6f122ab\u003c/code\u003e\u003c/a\u003e Fixed cancellation exceptions leaking from a \u003ccode\u003eCancelScope\u003c/code\u003e on asyncio when th...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/beaa45aff568a4020f2faf317321dd92f0e1f4a0\"\u003e\u003ccode\u003ebeaa45a\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1097\"\u003e#1097\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/602f6606dcf3f37702686a4f3e161328c537b07f\"\u003e\u003ccode\u003e602f660\u003c/code\u003e\u003c/a\u003e Widened type annotations to accept IO[bytes] in file streams\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/b5dcd45170701a756ba634197398f05d4710cab3\"\u003e\u003ccode\u003eb5dcd45\u003c/code\u003e\u003c/a\u003e Added note about erasing the template\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/d68670b3b4e0917d4caff2de082e03220f3e05a1\"\u003e\u003ccode\u003ed68670b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1090\"\u003e#1090\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/anyio/commit/fc17a22dd948e6a3d90d99908813f0010dfc3d2c\"\u003e\u003ccode\u003efc17a22\u003c/code\u003e\u003c/a\u003e tweak to_thread docs about abandon_on_cancel (\u003ca href=\"https://redirect.github.com/agronholm/anyio/issues/1088\"\u003e#1088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/agronholm/anyio/compare/4.12.1...4.13.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `azure-core` from 1.38.2 to 1.39.0\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-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eazure-core_1.39.0\u003c/h2\u003e\n\u003ch2\u003e1.39.0 (2026-03-18)\u003c/h2\u003e\n\u003ch3\u003eBreaking Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eChanged the previously undocumented \u003ccode\u003eazure_cloud\u003c/code\u003e setting environment variable from \u003ccode\u003eAZURE_CLOUD\u003c/code\u003e to \u003ccode\u003eAZURE_SDK_CLOUD_CONF\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eazure-core_1.38.3\u003c/h2\u003e\n\u003ch2\u003e1.38.3 (2026-03-12)\u003c/h2\u003e\n\u003ch3\u003eBugs Fixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ccode\u003ePipelineClient.format_url\u003c/code\u003e to preserve trailing slash in the base URL when the URL template is query-string-only (e.g., \u003ccode\u003e?key=value\u003c/code\u003e). \u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45365\"\u003e#45365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eSensitiveHeaderCleanupPolicy\u003c/code\u003e to persist the \u003ccode\u003einsecure_domain_change\u003c/code\u003e flag across retries after a cross-domain redirect. \u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45518\"\u003e#45518\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther Changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded jitter to token refresh timing in \u003ccode\u003eBearerTokenCredentialPolicy\u003c/code\u003e and \u003ccode\u003eAsyncBearerTokenCredentialPolicy\u003c/code\u003e to prevent simultaneous token refresh attempts across multiple processes. This helps mitigate the thundering herd problem during token refresh operations. \u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/43720\"\u003e#43720\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/Azure/azure-sdk-for-python/commit/dee80a8fd745ddab91933f05e795cf41e10ab8fe\"\u003e\u003ccode\u003edee80a8\u003c/code\u003e\u003c/a\u003e Changed the \u003ccode\u003eazure_cloud\u003c/code\u003e setting environment variable (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45763\"\u003e#45763\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/a2d11701462371d3f8b38b935f77f2e5070a5bf7\"\u003e\u003ccode\u003ea2d1170\u003c/code\u003e\u003c/a\u003e Increment package version after release of azure-core (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45671\"\u003e#45671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/c6e48b5cd71adf5728a5e2f33bc9f62fb221221f\"\u003e\u003ccode\u003ec6e48b5\u003c/code\u003e\u003c/a\u003e [Core] Prepare release (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45656\"\u003e#45656\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/079e76bb7bef96cf1027777afc69995b6024b857\"\u003e\u003ccode\u003e079e76b\u003c/code\u003e\u003c/a\u003e Port data-plane packages in sdk/core/ to pyproject.toml (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45556\"\u003e#45556\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/2117dfb31ed48fe429ef2604aeb89526e9496c66\"\u003e\u003ccode\u003e2117dfb\u003c/code\u003e\u003c/a\u003e [Core] Persist cross domain redirect flag (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45518\"\u003e#45518\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/2d0a9aa509c220d575c33e81207a5b6dedb5f148\"\u003e\u003ccode\u003e2d0a9aa\u003c/code\u003e\u003c/a\u003e [Core] Update pytest fixture scope (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45563\"\u003e#45563\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/4c4c8698d61f2ad60296ef0cf7c64f7837cdc5a3\"\u003e\u003ccode\u003e4c4c869\u003c/code\u003e\u003c/a\u003e [Core] Add jitter to token refresh intervals (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/43720\"\u003e#43720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/41391f1e7b5ad52e3d480a7adcbf3fa5b99e2326\"\u003e\u003ccode\u003e41391f1\u003c/code\u003e\u003c/a\u003e [azure-core] Fix \u003ccode\u003eformat_url\u003c/code\u003e dropping trailing slash when URL template is qu...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/9fdb4f1a9764b466a408eeed45ce59da97e150a5\"\u003e\u003ccode\u003e9fdb4f1\u003c/code\u003e\u003c/a\u003e [Corehttp] Changelog update (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45113\"\u003e#45113\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Azure/azure-sdk-for-python/commit/f40b764989ce757cd35698cae9c91b3a52c0b7a9\"\u003e\u003ccode\u003ef40b764\u003c/code\u003e\u003c/a\u003e Increment package version after release of azure-core (\u003ca href=\"https://redirect.github.com/Azure/azure-sdk-for-python/issues/45246\"\u003e#45246\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/Azure/azure-sdk-for-python/compare/azure-core_1.38.2...azure-core_1.39.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `charset-normalizer` from 3.4.5 to 3.4.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.7\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.6...3.4.7\"\u003e3.4.7\u003c/a\u003e (2026-04-02)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePre-built optimized version using mypy[c] v1.20.\u003c/li\u003e\n\u003cli\u003eRelax \u003ccode\u003esetuptools\u003c/code\u003e constraint to \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;82.1\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrectly remove SIG remnant in utf-7 decoded string. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/718\"\u003e#718\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/716\"\u003e#716\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.6\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.5...3.4.6\"\u003e3.4.6\u003c/a\u003e (2026-03-15)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFlattened the logic in \u003ccode\u003echarset_normalizer.md\u003c/code\u003e for higher performance. Removed \u003ccode\u003eeligible(..)\u003c/code\u003e and \u003ccode\u003efeed(...)\u003c/code\u003e\nin favor of \u003ccode\u003efeed_info(...)\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound for mypy[c] to 1.20, for our optimized version.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003eUNICODE_RANGES_COMBINED\u003c/code\u003e using Unicode blocks v17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEdge case where noise difference between two candidates can be almost insignificant. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/672\"\u003e#672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCLI \u003ccode\u003e--normalize\u003c/code\u003e writing to wrong path when passing multiple files in. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/702\"\u003e#702\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFreethreaded pre-built wheels now shipped in PyPI starting with 3.14t. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/616\"\u003e#616\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.6...3.4.7\"\u003e3.4.7\u003c/a\u003e (2026-04-02)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePre-built optimized version using mypy[c] v1.20.\u003c/li\u003e\n\u003cli\u003eRelax \u003ccode\u003esetuptools\u003c/code\u003e constraint to \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;82.1\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCorrectly remove SIG remnant in utf-7 decoded string. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/718\"\u003e#718\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/716\"\u003e#716\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.5...3.4.6\"\u003e3.4.6\u003c/a\u003e (2026-03-15)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFlattened the logic in \u003ccode\u003echarset_normalizer.md\u003c/code\u003e for higher performance. Removed \u003ccode\u003eeligible(..)\u003c/code\u003e and \u003ccode\u003efeed(...)\u003c/code\u003e\nin favor of \u003ccode\u003efeed_info(...)\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound for mypy[c] to 1.20, for our optimized version.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003eUNICODE_RANGES_COMBINED\u003c/code\u003e using Unicode blocks v17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEdge case where noise difference between two candidates can be almost insignificant. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/672\"\u003e#672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCLI \u003ccode\u003e--normalize\u003c/code\u003e writing to wrong path when passing multiple files in. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/702\"\u003e#702\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFreethreaded pre-built wheels now shipped in PyPI starting with 3.14t. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/616\"\u003e#616\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/0f07891bf516b5d5231f1bd4dd2d8da7d4d09a9a\"\u003e\u003ccode\u003e0f07891\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/729\"\u003e#729\u003c/a\u003e from jawah/release-3.4.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/fdbeb299479e8f4d737e4d227cd0b2bd5d273dc0\"\u003e\u003ccode\u003efdbeb29\u003c/code\u003e\u003c/a\u003e chore: update dev, and ci requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/b66f922bfbdbdd9dd46af18a8964d4fb888756d4\"\u003e\u003ccode\u003eb66f922\u003c/code\u003e\u003c/a\u003e chore: add ft classifier\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f94249d0a2c712f2d03124f4de6b77f5e03aaa96\"\u003e\u003ccode\u003ef94249d\u003c/code\u003e\u003c/a\u003e chore: add test cases for utf_7 recent fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/95c866f6c984bbd043e7e3ed0628aa4f3f8d5a26\"\u003e\u003ccode\u003e95c866f\u003c/code\u003e\u003c/a\u003e chore: bump version to 3.4.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/4f429bb764c7e893f99bb4bceb60856da1baacfb\"\u003e\u003ccode\u003e4f429bb\u003c/code\u003e\u003c/a\u003e chore: bump mypy pre-commit to v1.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/b579cd6cab9bd83aa3fc0ca169d4df022bf4888c\"\u003e\u003ccode\u003eb579cd6\u003c/code\u003e\u003c/a\u003e fix: correctly remove SIG remnant in utf-7 decoded string\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/58bf944a77cc0883fc46a6ee8edac3549fea5d59\"\u003e\u003ccode\u003e58bf944\u003c/code\u003e\u003c/a\u003e :arrow_up: Bump github/codeql-action from 4.32.4 to 4.35.1 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/728\"\u003e#728\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/44cf8a1b676a2532a8f1694e62e4f4f98f9132e1\"\u003e\u003ccode\u003e44cf8a1\u003c/code\u003e\u003c/a\u003e :arrow_up: Bump actions/download-artifact from 8.0.0 to 8.0.1 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/726\"\u003e#726\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/362bc20073f737b1ba4ca2f68cffb0c4cc024d20\"\u003e\u003ccode\u003e362bc20\u003c/code\u003e\u003c/a\u003e :arrow_up: Bump docker/setup-qemu-action from 3.7.0 to 4.0.0 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/725\"\u003e#725\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.5...3.4.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `click` from 8.3.1 to 8.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/click/releases\"\u003eclick's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.3.2\u003c/h2\u003e\n\u003cp\u003eThis is the Click 8.3.2 fix release, which fixes bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.\u003c/p\u003e\n\u003cp\u003ePyPI: \u003ca href=\"https://pypi.org/project/click/8.3.2/\"\u003ehttps://pypi.org/project/click/8.3.2/\u003c/a\u003e\nChanges: \u003ca href=\"https://click.palletsprojects.com/page/changes/#version-8-3-2\"\u003ehttps://click.palletsprojects.com/page/changes/#version-8-3-2\u003c/a\u003e\nMilestone: \u003ca href=\"https://github.com/pallets/click/milestone/29\"\u003ehttps://github.com/pallets/click/milestone/29\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix handling of \u003ccode\u003eflag_value\u003c/code\u003e when \u003ccode\u003eis_flag=False\u003c/code\u003e to allow such options to be\nused without an explicit value. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3084\"\u003e#3084\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3152\"\u003e#3152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHide \u003ccode\u003eSentinel.UNSET\u003c/code\u003e values as \u003ccode\u003eNone\u003c/code\u003e when using \u003ccode\u003elookup_default()\u003c/code\u003e.\n\u003ca href=\"https://redirect.github.com/pallets/click/issues/3136\"\u003e#3136\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3199\"\u003e#3199\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3202\"\u003e#3202\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3209\"\u003e#3209\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3212\"\u003e#3212\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3224\"\u003e#3224\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrevent \u003ccode\u003e_NamedTextIOWrapper\u003c/code\u003e from closing streams owned by \u003ccode\u003eStreamMixer\u003c/code\u003e.\n\u003ca href=\"https://redirect.github.com/pallets/click/issues/824\"\u003e#824\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/2991\"\u003e#2991\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/2993\"\u003e#2993\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3110\"\u003e#3110\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3139\"\u003e#3139\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3140\"\u003e#3140\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd comprehensive tests for \u003ccode\u003eCliRunner\u003c/code\u003e stream lifecycle, covering\nlogging interaction, multi-threaded safety, and sequential invocation\nisolation. Add high-iteration stress tests behind a \u003ccode\u003estress\u003c/code\u003e marker\nwith a dedicated CI job. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3139\"\u003e#3139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix callable \u003ccode\u003eflag_value\u003c/code\u003e being instantiated when used as a default via\n\u003ccode\u003edefault=True\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3121\"\u003e#3121\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3201\"\u003e#3201\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3213\"\u003e#3213\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3225\"\u003e#3225\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/click/blob/main/CHANGES.rst\"\u003eclick's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 8.3.2\u003c/h2\u003e\n\u003cp\u003eReleased 2026-04-02\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix handling of \u003ccode\u003eflag_value\u003c/code\u003e when \u003ccode\u003eis_flag=False\u003c/code\u003e to allow such options to be\nused without an explicit value. :issue:\u003ccode\u003e3084\u003c/code\u003e :pr:\u003ccode\u003e3152\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eHide \u003ccode\u003eSentinel.UNSET\u003c/code\u003e values as \u003ccode\u003eNone\u003c/code\u003e when using \u003ccode\u003elookup_default()\u003c/code\u003e.\n:issue:\u003ccode\u003e3136\u003c/code\u003e :pr:\u003ccode\u003e3199\u003c/code\u003e :pr:\u003ccode\u003e3202\u003c/code\u003e :pr:\u003ccode\u003e3209\u003c/code\u003e :pr:\u003ccode\u003e3212\u003c/code\u003e :pr:\u003ccode\u003e3224\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003ePrevent \u003ccode\u003e_NamedTextIOWrapper\u003c/code\u003e from closing streams owned by \u003ccode\u003eStreamMixer\u003c/code\u003e.\n:issue:\u003ccode\u003e824\u003c/code\u003e :issue:\u003ccode\u003e2991\u003c/code\u003e :issue:\u003ccode\u003e2993\u003c/code\u003e :issue:\u003ccode\u003e3110\u003c/code\u003e :pr:\u003ccode\u003e3139\u003c/code\u003e :pr:\u003ccode\u003e3140\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd comprehensive tests for \u003ccode\u003eCliRunner\u003c/code\u003e stream lifecycle, covering\nlogging interaction, multi-threaded safety, and sequential invocation\nisolation. Add high-iteration stress tests behind a \u003ccode\u003estress\u003c/code\u003e marker\nwith a dedicated CI job. :pr:\u003ccode\u003e3139\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFix callable \u003ccode\u003eflag_value\u003c/code\u003e being instantiated when used as a default via\n\u003ccode\u003edefault=True\u003c/code\u003e. :issue:\u003ccode\u003e3121\u003c/code\u003e :pr:\u003ccode\u003e3201\u003c/code\u003e :pr:\u003ccode\u003e3213\u003c/code\u003e :pr:\u003ccode\u003e3225\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/052c006033729bbb422cbdad0c4fee988ecb5aa5\"\u003e\u003ccode\u003e052c006\u003c/code\u003e\u003c/a\u003e Change update release date.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/502b7ce7b131473ef00a3586e60bb000f33b4c43\"\u003e\u003ccode\u003e502b7ce\u003c/code\u003e\u003c/a\u003e Merge branch 'stable' of \u003ca href=\"https://github.com/pallets/click\"\u003ehttps://github.com/pallets/click\u003c/a\u003e into release-8.3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/a0a37e411820861d48e21b131fdd840abaf746e0\"\u003e\u003ccode\u003ea0a37e4\u003c/code\u003e\u003c/a\u003e Change publish to werkzeug latest. (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3301\"\u003e#3301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/57be6fc2b40eb40279d022e6aabc983ee0dfb7a9\"\u003e\u003ccode\u003e57be6fc\u003c/code\u003e\u003c/a\u003e Change publish to werkzeug latest.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/781d6a88bdd30229e72a84cd6753b0235f339679\"\u003e\u003ccode\u003e781d6a8\u003c/code\u003e\u003c/a\u003e Update publish workflows (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3266\"\u003e#3266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/ff795b66ba945239c779b528171f5fe4536cf844\"\u003e\u003ccode\u003eff795b6\u003c/code\u003e\u003c/a\u003e Update precommit pins with tox\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/dd87ef4f9fa7d6f13e14885e9a6842a21ededebc\"\u003e\u003ccode\u003edd87ef4\u003c/code\u003e\u003c/a\u003e Update github action pins with tox\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/93d3f9d22e90035bc2b51c2183c15bd4a021376f\"\u003e\u003ccode\u003e93d3f9d\u003c/code\u003e\u003c/a\u003e Release version 8.3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/3299ba1a8a5de34b24a7226a683a837d8a0857e7\"\u003e\u003ccode\u003e3299ba1\u003c/code\u003e\u003c/a\u003e Add missing PR to changelog. (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3264\"\u003e#3264\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/b7f62c4d002e5b5bca3ebef6b995b7338740fe6f\"\u003e\u003ccode\u003eb7f62c4\u003c/code\u003e\u003c/a\u003e Add missing PR to changelog.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets/click/compare/8.3.1...8.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `coverage` from 7.13.4 to 7.13.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/coveragepy/coveragepy/blob/main/CHANGES.rst\"\u003ecoverage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 7.13.5 — 2026-03-17\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003eissue 2138\u003c/code\u003e_ describes a memory leak that happened when repeatedly\nusing the Coverage API with in-memory data. This is now fixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: the markdown-formatted coverage report didn't fully escape special\ncharacters in file paths (\u003ccode\u003eissue 2141\u003c/code\u003e\u003cem\u003e). This would be very unlikely to\ncause a problem, but now it's done properly, thanks to \u003ccode\u003eEllie Ayla \u0026lt;pull 2142_\u0026gt;\u003c/code\u003e\u003c/em\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: the C extension wouldn't build on VS2019, but now it does (\u003ccode\u003eissue 2145\u003c/code\u003e_).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 2138: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2138\"\u003ecoveragepy/coveragepy#2138\u003c/a\u003e\n.. _issue 2141: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2141\"\u003ecoveragepy/coveragepy#2141\u003c/a\u003e\n.. _pull 2142: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/pull/2142\"\u003ecoveragepy/coveragepy#2142\u003c/a\u003e\n.. _issue 2145: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2145\"\u003ecoveragepy/coveragepy#2145\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-13-4:\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/c88da144eef8cf78424331e5cbbde3e002eef43f\"\u003e\u003ccode\u003ec88da14\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/e2ac3e1ef644370101ff365acad3431d16076512\"\u003e\u003ccode\u003ee2ac3e1\u003c/code\u003e\u003c/a\u003e build: sample HTML shouldn't include the status.json file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/910f8f336541c2dcb4e9ec468144c7eb4a7779ac\"\u003e\u003ccode\u003e910f8f3\u003c/code\u003e\u003c/a\u003e docs: prep for 7.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/3a4819c24d3d20cb2670b99141517812ffa3fab0\"\u003e\u003ccode\u003e3a4819c\u003c/code\u003e\u003c/a\u003e style: make workflows more uniform\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/2a53705f5fe588158b8a8d37ff3beee86388b9e4\"\u003e\u003ccode\u003e2a53705\u003c/code\u003e\u003c/a\u003e chore: bump the action-dependencies group across 1 directory with 4 updates (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/e7c878d201db819416b978150944d9a842d22b18\"\u003e\u003ccode\u003ee7c878d\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/ab4db406a9c35acf977cf3ddb94a78d696b77bc5\"\u003e\u003ccode\u003eab4db40\u003c/code\u003e\u003c/a\u003e build: use --generate-hashes when pinning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/a438753eef870441044cef588e29ce4b9a28adf1\"\u003e\u003ccode\u003ea438753\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/7b33457d2c6367dfd5a563239998b3980444e090\"\u003e\u003ccode\u003e7b33457\u003c/code\u003e\u003c/a\u003e refactor: some leftover pyupgrade 3.10 bits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/2ff968db91a7cdafe6f6569ac7659a3a93a2da07\"\u003e\u003ccode\u003e2ff968d\u003c/code\u003e\u003c/a\u003e refactor: this type wasn't used anywhere\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/coveragepy/coveragepy/compare/7.13.4...7.13.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `librt` from 0.8.1 to 0.9.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mypyc/librt/commit/8f66cfe9cb3611b32741dd5b00e9049a627d6ccb\"\u003e\u003ccode\u003e8f66cfe\u003c/code\u003e\u003c/a\u003e Bump version to 0.9.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mypyc/librt/commit/149b3698bc3f6f7724f3fe6148938d6a4bc0d421\"\u003e\u003ccode\u003e149b369\u003c/code\u003e\u003c/a\u003e Sync mypy including extract_symbol() PR (\u003ca href=\"https://redirect.github.com/mypyc/librt/issues/37\"\u003e#37\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mypyc/librt/commit/05c11113460b73eb8ecc90adf539996012510169\"\u003e\u003ccode\u003e05c1111\u003c/code\u003e\u003c/a\u003e Use PEP 639 license metadata (\u003ca href=\"https://redirect.github.com/mypyc/librt/issues/34\"\u003e#34\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/mypyc/librt/compare/v0.8.1...v0.9.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mkdocs-get-deps` from 0.2.0 to 0.2.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/mkdocs/get-deps/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mkdocs-material` from 9.7.4 to 9.7.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/squidfunk/mkdocs-material/releases\"\u003emkdocs-material's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003emkdocs-material-9.7.6\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eMaterial for MkDocs is in maintenance mode\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eGoing forward, the Material for MkDocs team focuses on \u003ca href=\"https://zensical.org\"\u003eZensical\u003c/a\u003e, a next-gen static site generator built from first principles. We will provide critical bug fixes and security updates for Material for MkDocs until November 2026.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://squidfunk.github.io/mkdocs-material/blog/2025/11/05/zensical/\"\u003eRead the full announcement on our blog\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically disable MkDocs 2.0 warning for forks of MkDocs\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003emkdocs-material-9.7.5\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eMaterial for MkDocs is in maintenance mode\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eGoing forward, the Material for MkDocs team focuses on \u003ca href=\"https://zensical.org\"\u003eZensical\u003c/a\u003e, a next-gen static site generator built from first principles. We will provide critical bug fixes and security updates for Material for MkDocs until November 2026.\u003c/p\u003e\n\u003cp\u003e\u003ca href=\"https://squidfunk.github.io/mkdocs-material/blog/2025/11/05/zensical/\"\u003eRead the full announcement on our blog\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLimited version range of mkdocs to \u0026lt;2\u003c/li\u003e\n\u003cli\u003eUpdated MkDocs 2.0 incompatibility warning (clarify relation with MkDocs)\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/squidfunk/mkdocs-material/blob/master/CHANGELOG\"\u003emkdocs-material's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003emkdocs-material-9.7.6 (2026-03-19)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAutomatically disable MkDocs 2.0 warning for forks of MkDocs\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.7.5 (2026-03-10)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eLimited version range of mkdocs to \u0026lt;2\u003c/li\u003e\n\u003cli\u003eUpdated MkDocs 2.0 incompatibility warning (clarify relation with MkDocs)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.7.4 (2026-03-03)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eHardened social cards plugin by switching to sandboxed environment\u003c/li\u003e\n\u003cli\u003eUpdated MkDocs 2.0 incompatibility warning\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.7.3 (2026-02-24)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8567\"\u003e#8567\u003c/a\u003e: Print MkDocs 2.0 incompatibility warning to stderr\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.7.2 (2026-02-18)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eOpened up version ranges of optional dependencies for forward-compatibility\u003c/li\u003e\n\u003cli\u003eAdded warning to 'mkdocs build' about impending MkDocs 2.0 incompatibility\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.7.1 (2025-12-18)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated requests to 2.30+ to mitigate CVE in urllib\u003c/li\u003e\n\u003cli\u003eFixed privacy plugin not picking up protocol-relative URLs\u003c/li\u003e\n\u003cli\u003eFixed \u003ca href=\"https://redirect.github.com/squidfunk/mkdocs-material/issues/8542\"\u003e#8542\u003c/a\u003e: false positives and negatives captured in privacy plugin\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003emkdocs-material-9.7.0 (2025-11-11)\u003c/p\u003e\n\u003cp\u003e⚠️ Material for MkDocs is now in maintenance mode\u003c/p\u003e\n\u003cp\u003eThis is the last release of Material for MkDocs that will receive new features.\nGoing forward, the Material for MkDocs team focuses on Zensical, a next-gen\nstatic site generator built from first principles. We will provide critical\nbug fixes and security updates for Material for MkDocs for 12 months at least.\u003c/p\u003e\n\u003cp\u003eRead the full announcement on our blog:\n\u003ca href=\"https://squidfunk.github.io/mkdocs-material/blog/2025/11/05/zensical/\"\u003ehttps://squidfunk.github.io/mkdocs-material/blog/2025/11/05/zensical/\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis release includes all features that were previously exclusive to the\nInsiders edition. These features are now freely available to everyone.\u003c/p\u003e\n\u003cp\u003eNote on deprecated plugins: The projects and typeset plugins are included in\nthis release, but must be considered deprecated. Both plugins proved\nunsustainable to maintain and represent architectural dead ends. They are\nprovided as-is without ongoing support.\u003c/p\u003e\n\u003cp\u003eChanges:\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/squidfunk/mkdocs-material/commit/6c52ed6289b171a153875491f059a94819ec3e10\"\u003e\u003ccode\u003e6c52ed6\u003c/code\u003e\u003c/a\u003e Prepare 9.7.6 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/51d9b76636431814df924bcda27485b16023978b\"\u003e\u003ccode\u003e51d9b76\u003c/code\u003e\u003c/a\u003e Automatically disable MkDocs 2.0 warning for forks of MkDocs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/6f9a48b4048650341a654d9757da57fc1e3e323d\"\u003e\u003ccode\u003e6f9a48b\u003c/code\u003e\u003c/a\u003e Updated links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/00b9933e5821fd852700268767d4fd53ae1ce1cb\"\u003e\u003ccode\u003e00b9933\u003c/code\u003e\u003c/a\u003e Prepare 9.7.5 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/37683d12c9cd62309aa917237741ee0886709b7c\"\u003e\u003ccode\u003e37683d1\u003c/code\u003e\u003c/a\u003e Updated blog post on MkDocs 2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/199e31598055d5d6ea538618804c7558f5d81047\"\u003e\u003ccode\u003e199e315\u003c/code\u003e\u003c/a\u003e Updated warning message to clarify relation to MkDocs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/10258334eb13545e6d708cf121c3867bfbdb6017\"\u003e\u003ccode\u003e1025833\u003c/code\u003e\u003c/a\u003e Limited version range of mkdocs to \u0026lt;2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/1532f523f6c650c9d6fd16229ee8bec0759b4151\"\u003e\u003ccode\u003e1532f52\u003c/code\u003e\u003c/a\u003e Added update log to blog post\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/d0c8b2862a966f5f268d4a4c35bb4fcfccebb9b1\"\u003e\u003ccode\u003ed0c8b28\u003c/code\u003e\u003c/a\u003e Updated dependencies to fix vulnerabilities\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/squidfunk/mkdocs-material/commit/71d48699a0e2bef231e796818c4dc20b230a5f45\"\u003e\u003ccode\u003e71d4869\u003c/code\u003e\u003c/a\u003e Updated blog post on MkDocs 2.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/squidfunk/mkdocs-material/compare/9.7.4...9.7.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `msal` from 1.35.1 to 1.36.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-python/releases\"\u003emsal's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.36.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the PoP flow in the console app by \u003ca href=\"https://github.com/PetarSDimov\"\u003e\u003ccode\u003e@​PetarSDimov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/887\"\u003eAzureAD/microsoft-authentication-library-for-python#887\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd ADO CI, SDL, and release pipelines with e2e test enablement by \u003ca href=\"https://github.com/RyAuld\"\u003e\u003ccode\u003e@​RyAuld\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/890\"\u003eAzureAD/microsoft-authentication-library-for-python#890\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd documentation for Managed Identity v2 Hackathon by \u003ca href=\"https://github.com/gladjohn\"\u003e\u003ccode\u003e@​gladjohn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/885\"\u003eAzureAD/microsoft-authentication-library-for-python#885\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePotential fix for code scanning alert no. 74: Workflow does not contain permissions by \u003ca href=\"https://github.com/Avery-Dunn\"\u003e\u003ccode\u003e@​Avery-Dunn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/884\"\u003eAzureAD/microsoft-authentication-library-for-python#884\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded withFmi method for cca app by \u003ca href=\"https://github.com/4gust\"\u003e\u003ccode\u003e@​4gust\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/876\"\u003eAzureAD/microsoft-authentication-library-for-python#876\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse cryptographically secure randomness for PKCE, state, and nonce generation by \u003ca href=\"https://github.com/ashok672\"\u003e\u003ccode\u003e@​ashok672\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/894\"\u003eAzureAD/microsoft-authentication-library-for-python#894\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix OIDC issuer domain spoofing in B2C host validation by \u003ca href=\"https://github.com/4gust\"\u003e\u003ccode\u003e@​4gust\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/896\"\u003eAzureAD/microsoft-authentication-library-for-python#896\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/PetarSDimov\"\u003e\u003ccode\u003e@​PetarSDimov\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/887\"\u003eAzureAD/microsoft-authentication-library-for-python#887\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gladjohn\"\u003e\u003ccode\u003e@​gladjohn\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/AzureAD/microsoft-authentication-library-for-python/pull/885\"\u003eAzureAD/microsoft-authentication-library-for-python#885\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/AzureAD/microsoft-authentication-library-for-python/compare/1.35.1...1.36.0\"\u003ehttps://github.com/AzureAD/microsoft-authentication-library-for-python/compare/1.35.1...1.36.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://gi...\n\n_Description has been truncated_","html_url":"https://github.com/maxvanp/az-rbac-watch/pull/23","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxvanp%2Faz-rbac-watch/issues/23","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/23/packages"}},{"old_version":"\u003e=8","new_version":"\u003e=9.2.2","update_type":null,"path":null,"pr_created_at":"2026-04-11T05:13:22.000Z","version_change":"\u003e=8 → \u003e=9.2.2","issue":{"uuid":"4243180005","node_id":"PR_kwDOPORtnc7RoNga","number":67,"state":"open","title":"build(deps-dev): update setuptools-scm requirement from \u003e=8 to \u003e=9.2.2","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":3,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-11T05:13:22.000Z","updated_at":"2026-04-11T05:15:29.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps-dev): update","packages":[{"name":"setuptools-scm","old_version":"\u003e=8","new_version":"\u003e=9.2.2","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) to permit the latest version.\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/blob/v9.2.2/CHANGELOG.md\"\u003esetuptools-scm's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.2.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1231\"\u003e#1231\u003c/a\u003e: don't warn about \u003ccode\u003etool.setuptools.dynamic.version\u003c/code\u003e when only using file finder.\nThe warning about combining version guessing with setuptools dynamic versions should only\nbe issued when setuptools-scm is performing version inference, not when it's only being\nused for its file finder functionality.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.2.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1216\"\u003e#1216\u003c/a\u003e: accept and create a warning for usages of \u003ccode\u003eversion = attr:\u003c/code\u003e in setuptools config.\nunfortunately dozens of projects cargo-culted that antipattern\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.2.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eadd simplified activation via \u003ccode\u003esetuptools-scm[simple]\u003c/code\u003e extra\u003c/p\u003e\n\u003cp\u003eA new streamlined way to enable version inference without requiring a \u003ccode\u003e[tool.setuptools_scm]\u003c/code\u003e section.\nWhen \u003ccode\u003esetuptools-scm[simple]\u003c/code\u003e is in \u003ccode\u003ebuild-system.requires\u003c/code\u003e and \u003ccode\u003eversion\u003c/code\u003e is in \u003ccode\u003eproject.dynamic\u003c/code\u003e,\nversion inference is automatically enabled with default settings.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eunchecked simplified activation - too many projects use setups where it would fail\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erefine activation logic and add unittest for the relevant cases instead of trying to speedrun setuptools\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.1 (yanked)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1194\"\u003e#1194\u003c/a\u003e: correctly handle version keyword when pyproject metadata is missing\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.1.0 (yanked)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecomplete reiteration of the decision logic for enabling version inference on setuptools_scm\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/pypa/setuptools-scm/commit/e56b78fcd4c1e79aa36c1e4700fca34c8ff540fe\"\u003e\u003ccode\u003ee56b78f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1232\"\u003e#1232\u003c/a\u003e from RonnyPfannschmidt/fix-1231-dont-warn-when-no-guess\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/4f55e9585e398e13103112a6fd488109d9da4ead\"\u003e\u003ccode\u003e4f55e95\u003c/code\u003e\u003c/a\u003e docs: update changelog for v9.2.2 patch release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/95a0c47553ea0b373238bb64aa344b2c2547c849\"\u003e\u003ccode\u003e95a0c47\u003c/code\u003e\u003c/a\u003e fix: don't warn about tool.setuptools.dynamic.version when only using file fi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/338f562e6a38f8d32fd5aeb4677b3f87fc5a0122\"\u003e\u003ccode\u003e338f562\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1226\"\u003e#1226\u003c/a\u003e from RonnyPfannschmidt/prepare-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a893634c36a074052ed3f6d0e77b076b582c72ab\"\u003e\u003ccode\u003ea893634\u003c/code\u003e\u003c/a\u003e Prepare release v9.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/ad83282242e96fe11c958227740ee03a7a2ed0fe\"\u003e\u003ccode\u003ead83282\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1225\"\u003e#1225\u003c/a\u003e from pypa/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/20a44648f299f64b1241a448bdbafde9b1871ebf\"\u003e\u003ccode\u003e20a4464\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/70f69429c40f8c8d3c4e0eec2d8b4a6794671c88\"\u003e\u003ccode\u003e70f6942\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1219\"\u003e#1219\u003c/a\u003e from RonnyPfannschmidt/fix-1216-explicitly-deprecate...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/14d85c0fb8fa9efd1ec4bac3413f48aea0e319f5\"\u003e\u003ccode\u003e14d85c0\u003c/code\u003e\u003c/a\u003e Install Mercurial on Windows runners via Chocolatey\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c5cec917123e4cc87b490f56b6e7af27a3b0399\"\u003e\u003ccode\u003e8c5cec9\u003c/code\u003e\u003c/a\u003e Fix API stability check workflow to install griffe and improve reporting\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...v9.2.2\"\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/Ajimaru/ajitroids/pull/67","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Ajimaru%2Fajitroids/issues/67","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/67/packages"}},{"old_version":"\u003e=3.4.3","new_version":"\u003e=10.0.5","update_type":"patch","path":null,"pr_created_at":"2026-04-10T23:52:43.000Z","version_change":"\u003e=3.4.3 → \u003e=10.0.5","issue":{"uuid":"4242248007","node_id":"PR_kwDOFLbcYM7RmAv0","number":75,"state":"closed","title":"Update setuptools-scm requirement from \u003e=3.4.3 to \u003e=10.0.5","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-04-11T00:40:04.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-10T23:52:43.000Z","updated_at":"2026-04-11T00:40:13.000Z","time_to_close":2841,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Update","packages":[{"name":"setuptools-scm","old_version":"\u003e=3.4.3","new_version":"\u003e=10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [setuptools-scm](https://github.com/pypa/setuptools-scm) 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/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/setuptools-scm-v10.0.0...setuptools-scm-v10.0.5\"\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/randovania/py-randomprime/pull/75","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/randovania%2Fpy-randomprime/issues/75","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/75/packages"}},{"old_version":"9.2.0","new_version":"9.2.2","update_type":"patch","path":null,"pr_created_at":"2026-04-06T18:11:09.000Z","version_change":"9.2.0 → 9.2.2","issue":{"uuid":"4213260039","node_id":"PR_kwDOR6uIbc7QRuD4","number":21,"state":"closed","title":"build(deps): bump the pip group across 3 directories with 19 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-04-12T13:29:16.000Z","author_association":null,"state_reason":null,"created_at":"2026-04-06T18:11:09.000Z","updated_at":"2026-04-12T13:29:24.000Z","time_to_close":501487,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"pip","update_count":19,"packages":[{"name":"setuptools","old_version":"80.9.0","new_version":"82.0.1","repository_url":"https://github.com/pypa/setuptools"},{"name":"setuptools-scm","old_version":"9.2.0","new_version":"9.2.2","repository_url":"https://github.com/pypa/setuptools-scm"},{"name":"setuptools","old_version":"80.9.0","new_version":"82.0.1","repository_url":"https://github.com/pypa/setuptools"},{"name":"datasets","old_version":"4.3.0","new_version":"4.8.4","repository_url":"https://github.com/huggingface/datasets"},{"name":"huggingface-hub","old_version":"0.36.2","new_version":"1.9.0","repository_url":"https://github.com/huggingface/huggingface_hub"},{"name":"transformers","old_version":"4.57.6","new_version":"5.5.0","repository_url":"https://github.com/huggingface/transformers"},{"name":"trl","old_version":"0.23.1","new_version":"1.0.0","repository_url":"https://github.com/huggingface/trl"},{"name":"data-designer-engine","old_version":"0.5.4","new_version":"0.5.5"},{"name":"pandas","old_version":"2.3.3","new_version":"3.0.2","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"pytest-rerunfailures","old_version":"15.1","new_version":"16.1","repository_url":"https://github.com/pytest-dev/pytest-rerunfailures"},{"name":"scikit-learn","old_version":"1.7.1","new_version":"1.8.0","repository_url":"https://github.com/scikit-learn/scikit-learn"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [datasets](https://github.com/huggingface/datasets), [setuptools](https://github.com/pypa/setuptools), [setuptools-scm](https://github.com/pypa/setuptools-scm), [pandas](https://github.com/pandas-dev/pandas), [huggingface-hub](https://github.com/huggingface/huggingface_hub), [transformers](https://github.com/huggingface/transformers), [trl](https://github.com/huggingface/trl), data-designer-engine, [pytest](https://github.com/pytest-dev/pytest), [pytest-rerunfailures](https://github.com/pytest-dev/pytest-rerunfailures), [scikit-learn](https://github.com/scikit-learn/scikit-learn), [torchao](https://github.com/pytorch/ao), [chardet](https://github.com/chardet/chardet), [faker](https://github.com/joke2k/faker), [fsspec](https://github.com/fsspec/filesystem_spec), [python-json-logger](https://github.com/nhairs/python-json-logger), [sqlfluff](https://github.com/sqlfluff/sqlfluff), [data-designer](https://github.com/NVIDIA-NeMo/DataDesigner) and data-designer-config to permit the latest version.\nUpdates `datasets` to 4.5.0\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\u003e4.5.0\u003c/h2\u003e\n\u003ch2\u003eDataset Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd lance format support by \u003ca href=\"https://github.com/eddyxu\"\u003e\u003ccode\u003e@​eddyxu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7913\"\u003ehuggingface/datasets#7913\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for both Lance dataset (including metadata / manifests) and standalone .lance files\u003c/li\u003e\n\u003cli\u003ee.g. with \u003ca href=\"https://huggingface.co/datasets/lance-format/fineweb-edu\"\u003elance-format/fineweb-edu\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003efrom datasets import load_dataset\r\n\u003cp\u003eds = load_dataset(\u0026quot;lance-format/fineweb-edu\u0026quot;, streaming=True)\nfor example in ds[\u0026quot;train\u0026quot;]:\n...\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRaise early for invalid \u003ccode\u003erevision\u003c/code\u003e in \u003ccode\u003eload_dataset\u003c/code\u003e by \u003ca href=\"https://github.com/Scott-Simmons\"\u003e\u003ccode\u003e@​Scott-Simmons\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7929\"\u003ehuggingface/datasets#7929\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix low but large example indexerror by \u003ca href=\"https://github.com/CloseChoice\"\u003e\u003ccode\u003e@​CloseChoice\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7912\"\u003ehuggingface/datasets#7912\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix method to retrieve attributes from file object 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/7938\"\u003ehuggingface/datasets#7938\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd _OverridableIOWrapper 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/7942\"\u003ehuggingface/datasets#7942\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd _generate_shards 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/7943\"\u003ehuggingface/datasets#7943\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/eddyxu\"\u003e\u003ccode\u003e@​eddyxu\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7913\"\u003ehuggingface/datasets#7913\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Scott-Simmons\"\u003e\u003ccode\u003e@​Scott-Simmons\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7929\"\u003ehuggingface/datasets#7929\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/datasets/compare/4.4.2...4.5.0\"\u003ehttps://github.com/huggingface/datasets/compare/4.4.2...4.5.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/huggingface/datasets/commit/69d773ac45a28194b96977034ec410dda1f2ccf4\"\u003e\u003ccode\u003e69d773a\u003c/code\u003e\u003c/a\u003e Release: 4.5.0 (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7944\"\u003e#7944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/dc98f979517dbfa68322d2b9d193e32ec3b61bc2\"\u003e\u003ccode\u003edc98f97\u003c/code\u003e\u003c/a\u003e Add _generate_shards (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7943\"\u003e#7943\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/38d28bfc942a6f1dff1b5321f927f676c7515d8c\"\u003e\u003ccode\u003e38d28bf\u003c/code\u003e\u003c/a\u003e add _OverridableIOWrapper (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7942\"\u003e#7942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/7431153ef4bd827dbbea077c3e9300ce9a275710\"\u003e\u003ccode\u003e7431153\u003c/code\u003e\u003c/a\u003e Fix method to retrieve attributes from file object (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7938\"\u003e#7938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/6a1bc355a0ca2c8f9f5c10698215212f0f14e7b7\"\u003e\u003ccode\u003e6a1bc35\u003c/code\u003e\u003c/a\u003e fix low but large example indexerror (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7912\"\u003e#7912\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/7bdf8403a4ae180f98bfa58080d92f57709448fa\"\u003e\u003ccode\u003e7bdf840\u003c/code\u003e\u003c/a\u003e Raise early for invalid \u003ccode\u003erevision\u003c/code\u003e in \u003ccode\u003eload_dataset\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7929\"\u003e#7929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/06b6e020cadc12d625e34bea5048378d6097ab9d\"\u003e\u003ccode\u003e06b6e02\u003c/code\u003e\u003c/a\u003e Add lance format support (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7913\"\u003e#7913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/0feb65dd8733191dd2d1e74215b422fc5939a56a\"\u003e\u003ccode\u003e0feb65d\u003c/code\u003e\u003c/a\u003e set dev version (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7908\"\u003e#7908\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/37d96157e1632e946f0af8b9e3274a0ca8cd96c7\"\u003e\u003ccode\u003e37d9615\u003c/code\u003e\u003c/a\u003e release: 4.4.2 (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7907\"\u003e#7907\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/58dda425abb52c09e65feeef563c4fb33908e8dc\"\u003e\u003ccode\u003e58dda42\u003c/code\u003e\u003c/a\u003e Don't save original_shard_lengths by default for backward compat (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7906\"\u003e#7906\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/datasets/compare/3.4.1...4.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools` from 80.9.0 to 82.0.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools/blob/main/NEWS.rst\"\u003esetuptools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ev82.0.1\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the loading of \u003ccode\u003elauncher manifest.xml\u003c/code\u003e file. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5047\"\u003e#5047\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplaced deprecated \u003ccode\u003ejson.__version__\u003c/code\u003e with fixture in tests. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5186\"\u003e#5186\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd advice about how to improve predictability when installing sdists. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5168\"\u003e#5168\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4941\"\u003e#4941\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev82.0.0\u003c/h1\u003e\n\u003ch2\u003eDeprecations and Removals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003epkg_resources\u003c/code\u003e has been removed from Setuptools. Most common uses of \u003ccode\u003epkg_resources\u003c/code\u003e have been superseded by the \u003ccode\u003eimportlib.resources \u0026lt;https://docs.python.org/3/library/importlib.resources.html\u0026gt;\u003c/code\u003e_ and \u003ccode\u003eimportlib.metadata \u0026lt;https://docs.python.org/3/library/importlib.metadata.html\u0026gt;\u003c/code\u003e_ projects. Projects and environments relying on \u003ccode\u003epkg_resources\u003c/code\u003e for namespace packages or other behavior should depend on older versions of \u003ccode\u003esetuptools\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev81.0.0\u003c/h1\u003e\n\u003ch2\u003eDeprecations and Removals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for the --dry-run parameter to setup.py. This one feature by its nature threads through lots of core and ancillary functionality, adding complexity and friction. Removal of this parameter will help decouple the compiler functionality from distutils and thus the eventual full integration of distutils. These changes do affect some class and function signatures, so any derivative functionality may require some compatibility shims to support their expected interface. Please report any issues to the Setuptools project for investigation. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4872\"\u003e#4872\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.10.2\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate vendored dependencies. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5159\"\u003e#5159\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMisc\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/5a13876673a41e3cd21d4d6e587f53d0fb4fd8e5\"\u003e\u003ccode\u003e5a13876\u003c/code\u003e\u003c/a\u003e Bump version: 82.0.0 → 82.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/51ab8f183f1c4112675d8d6ec6b004406d518ee8\"\u003e\u003ccode\u003e51ab8f1\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5194\"\u003e#5194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/f9c37b20bb0ed11203f676f9683452a4c3ace6f6\"\u003e\u003ccode\u003ef9c37b2\u003c/code\u003e\u003c/a\u003e Docs/CI: Fix intersphinx references (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5195\"\u003e#5195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/8173db2a4fc0f6cb28926b3dba59116b79f435c8\"\u003e\u003ccode\u003e8173db2\u003c/code\u003e\u003c/a\u003e Docs: Fix intersphinx references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/09bafbc74923f2a3591b5b098be75d6af6ca5141\"\u003e\u003ccode\u003e09bafbc\u003c/code\u003e\u003c/a\u003e Fix past tense on newsfragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/461ea56c8e629819a23920f44d9298d4f041abde\"\u003e\u003ccode\u003e461ea56\u003c/code\u003e\u003c/a\u003e Add news fragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/c4ffe535b58235ff9f9ebe90d24a2cffb57e70ae\"\u003e\u003ccode\u003ec4ffe53\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/749258b1a96c7accc05ea7d842fb19fc378866fe\"\u003e\u003ccode\u003e749258b\u003c/code\u003e\u003c/a\u003e Cleanup \u003ccode\u003epkg_resources\u003c/code\u003e dependencies and configuration (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/2019c16701667db1010c62ec11c6ef78c2e58206\"\u003e\u003ccode\u003e2019c16\u003c/code\u003e\u003c/a\u003e Parse \u003ccode\u003eext-module.define-macros\u003c/code\u003e from \u003ccode\u003epyproject.toml\u003c/code\u003e as list of tuples (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/b809c86a37d97fcce290d5f51d4c293ab40bc685\"\u003e\u003ccode\u003eb809c86\u003c/code\u003e\u003c/a\u003e Sync setuptools schema with validate-pyproject (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools/compare/v80.9.0...v82.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools-scm` from 9.2.0 to 9.2.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/blob/v9.2.2/CHANGELOG.md\"\u003esetuptools-scm's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev9.2.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1231\"\u003e#1231\u003c/a\u003e: don't warn about \u003ccode\u003etool.setuptools.dynamic.version\u003c/code\u003e when only using file finder.\nThe warning about combining version guessing with setuptools dynamic versions should only\nbe issued when setuptools-scm is performing version inference, not when it's only being\nused for its file finder functionality.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev9.2.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1216\"\u003e#1216\u003c/a\u003e: accept and create a warning for usages of \u003ccode\u003eversion = attr:\u003c/code\u003e in setuptools config.\nunfortunately dozens of projects cargo-culted that antipattern\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/e56b78fcd4c1e79aa36c1e4700fca34c8ff540fe\"\u003e\u003ccode\u003ee56b78f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1232\"\u003e#1232\u003c/a\u003e from RonnyPfannschmidt/fix-1231-dont-warn-when-no-guess\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/4f55e9585e398e13103112a6fd488109d9da4ead\"\u003e\u003ccode\u003e4f55e95\u003c/code\u003e\u003c/a\u003e docs: update changelog for v9.2.2 patch release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/95a0c47553ea0b373238bb64aa344b2c2547c849\"\u003e\u003ccode\u003e95a0c47\u003c/code\u003e\u003c/a\u003e fix: don't warn about tool.setuptools.dynamic.version when only using file fi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/338f562e6a38f8d32fd5aeb4677b3f87fc5a0122\"\u003e\u003ccode\u003e338f562\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1226\"\u003e#1226\u003c/a\u003e from RonnyPfannschmidt/prepare-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a893634c36a074052ed3f6d0e77b076b582c72ab\"\u003e\u003ccode\u003ea893634\u003c/code\u003e\u003c/a\u003e Prepare release v9.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/ad83282242e96fe11c958227740ee03a7a2ed0fe\"\u003e\u003ccode\u003ead83282\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1225\"\u003e#1225\u003c/a\u003e from pypa/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/20a44648f299f64b1241a448bdbafde9b1871ebf\"\u003e\u003ccode\u003e20a4464\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/70f69429c40f8c8d3c4e0eec2d8b4a6794671c88\"\u003e\u003ccode\u003e70f6942\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1219\"\u003e#1219\u003c/a\u003e from RonnyPfannschmidt/fix-1216-explicitly-deprecate...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/14d85c0fb8fa9efd1ec4bac3413f48aea0e319f5\"\u003e\u003ccode\u003e14d85c0\u003c/code\u003e\u003c/a\u003e Install Mercurial on Windows runners via Chocolatey\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c5cec917123e4cc87b490f56b6e7af27a3b0399\"\u003e\u003ccode\u003e8c5cec9\u003c/code\u003e\u003c/a\u003e Fix API stability check workflow to install griffe and improve reporting\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/v9.2.0...v9.2.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools` from 80.9.0 to 82.0.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools/blob/main/NEWS.rst\"\u003esetuptools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ev82.0.1\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the loading of \u003ccode\u003elauncher manifest.xml\u003c/code\u003e file. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5047\"\u003e#5047\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplaced deprecated \u003ccode\u003ejson.__version__\u003c/code\u003e with fixture in tests. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5186\"\u003e#5186\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd advice about how to improve predictability when installing sdists. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5168\"\u003e#5168\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4941\"\u003e#4941\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev82.0.0\u003c/h1\u003e\n\u003ch2\u003eDeprecations and Removals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003epkg_resources\u003c/code\u003e has been removed from Setuptools. Most common uses of \u003ccode\u003epkg_resources\u003c/code\u003e have been superseded by the \u003ccode\u003eimportlib.resources \u0026lt;https://docs.python.org/3/library/importlib.resources.html\u0026gt;\u003c/code\u003e_ and \u003ccode\u003eimportlib.metadata \u0026lt;https://docs.python.org/3/library/importlib.metadata.html\u0026gt;\u003c/code\u003e_ projects. Projects and environments relying on \u003ccode\u003epkg_resources\u003c/code\u003e for namespace packages or other behavior should depend on older versions of \u003ccode\u003esetuptools\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev81.0.0\u003c/h1\u003e\n\u003ch2\u003eDeprecations and Removals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for the --dry-run parameter to setup.py. This one feature by its nature threads through lots of core and ancillary functionality, adding complexity and friction. Removal of this parameter will help decouple the compiler functionality from distutils and thus the eventual full integration of distutils. These changes do affect some class and function signatures, so any derivative functionality may require some compatibility shims to support their expected interface. Please report any issues to the Setuptools project for investigation. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4872\"\u003e#4872\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.10.2\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate vendored dependencies. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5159\"\u003e#5159\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMisc\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/5a13876673a41e3cd21d4d6e587f53d0fb4fd8e5\"\u003e\u003ccode\u003e5a13876\u003c/code\u003e\u003c/a\u003e Bump version: 82.0.0 → 82.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/51ab8f183f1c4112675d8d6ec6b004406d518ee8\"\u003e\u003ccode\u003e51ab8f1\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5194\"\u003e#5194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/f9c37b20bb0ed11203f676f9683452a4c3ace6f6\"\u003e\u003ccode\u003ef9c37b2\u003c/code\u003e\u003c/a\u003e Docs/CI: Fix intersphinx references (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5195\"\u003e#5195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/8173db2a4fc0f6cb28926b3dba59116b79f435c8\"\u003e\u003ccode\u003e8173db2\u003c/code\u003e\u003c/a\u003e Docs: Fix intersphinx references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/09bafbc74923f2a3591b5b098be75d6af6ca5141\"\u003e\u003ccode\u003e09bafbc\u003c/code\u003e\u003c/a\u003e Fix past tense on newsfragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/461ea56c8e629819a23920f44d9298d4f041abde\"\u003e\u003ccode\u003e461ea56\u003c/code\u003e\u003c/a\u003e Add news fragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/c4ffe535b58235ff9f9ebe90d24a2cffb57e70ae\"\u003e\u003ccode\u003ec4ffe53\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/749258b1a96c7accc05ea7d842fb19fc378866fe\"\u003e\u003ccode\u003e749258b\u003c/code\u003e\u003c/a\u003e Cleanup \u003ccode\u003epkg_resources\u003c/code\u003e dependencies and configuration (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/2019c16701667db1010c62ec11c6ef78c2e58206\"\u003e\u003ccode\u003e2019c16\u003c/code\u003e\u003c/a\u003e Parse \u003ccode\u003eext-module.define-macros\u003c/code\u003e from \u003ccode\u003epyproject.toml\u003c/code\u003e as list of tuples (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/b809c86a37d97fcce290d5f51d4c293ab40bc685\"\u003e\u003ccode\u003eb809c86\u003c/code\u003e\u003c/a\u003e Sync setuptools schema with validate-pyproject (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools/compare/v80.9.0...v82.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` to 3.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pandas-dev/pandas/releases\"\u003epandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epandas 3.0.2\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 3.0.2.\nThis is a patch release in the 3.0.x series and includes some regression fixes and bug fixes. We recommend that all users of the 3.0.x series upgrade to this version.\u003c/p\u003e\n\u003cp\u003eSee the \u003ca href=\"https://pandas.pydata.org/docs/dev/whatsnew/v3.0.2.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\u003c/p\u003e\n\u003cp\u003ePandas 3.0 supports Python 3.11 and higher.\nThe release can be installed from PyPI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython -m pip install --upgrade pandas==3.0.*\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr from conda-forge\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge pandas=3.0\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePlease report any issues with the release on the \u003ca href=\"https://github.com/pandas-dev/pandas/issues\"\u003epandas issue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to all the contributors who made this release possible.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/ab90747e3dae0e69b1bdbf083820b8075689b34b\"\u003e\u003ccode\u003eab90747\u003c/code\u003e\u003c/a\u003e RLS: 3.0.2 (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64934\"\u003e#64934\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6f270137a27f8de4bd1afd7d71220e0760429750\"\u003e\u003ccode\u003e6f27013\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64931\"\u003e#64931\u003c/a\u003e on branch 3.0.x (DOC/BLD: temporary disable upload of docs...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/48ddc60d6efe8d942dbe1495dea725a9d7db15ef\"\u003e\u003ccode\u003e48ddc60\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64664\"\u003e#64664\u003c/a\u003e on branch 3.0.x (BUG: DataFrame.sum() crashes on empty Dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/8774488df19d0859ddc05a24210783b66da27ef7\"\u003e\u003ccode\u003e8774488\u003c/code\u003e\u003c/a\u003e [backport 3.0.x] PERF: fix slow python loop in validation for ArrowStringArra...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/33af6cc04ed6331c23a49655c4c7bb8f90351da3\"\u003e\u003ccode\u003e33af6cc\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64133\"\u003e#64133\u003c/a\u003e on branch 3.0.x (BUG: str.find returns byte offset instead...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/4ef49d815aae99b6ba5627ab0a54ba0819336652\"\u003e\u003ccode\u003e4ef49d8\u003c/code\u003e\u003c/a\u003e [backport 3.0.x] BUG: fix convert_dtypes dropping values from sliced mixed-dt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/0668f3451120e5552cdc8cf5d85f6d1238ce4e12\"\u003e\u003ccode\u003e0668f34\u003c/code\u003e\u003c/a\u003e [backport 3.0.x] BUG: Fix HDFStore.put with StringDtype columns and compressi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/23f2f442ea1af6deddfefef2a4a1e4cb44328c3d\"\u003e\u003ccode\u003e23f2f44\u003c/code\u003e\u003c/a\u003e [backport 3.0.x] BUG: Suppress unnecessary RuntimeWarning in to_datetime with...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/83ba804de35ec98798d31474d044cff7666bebd6\"\u003e\u003ccode\u003e83ba804\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64886\"\u003e#64886\u003c/a\u003e: BUG: Compute Variance of Complex Numbers Correctly (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64892\"\u003e#64892\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/bb5ca1a7a96130fa0e8e2a3987c051e4473f7792\"\u003e\u003ccode\u003ebb5ca1a\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64386\"\u003e#64386\u003c/a\u003e on branch 3.0.x (BUG: fix sort_index AssertionError with R...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.0.0...v3.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `datasets` from 4.3.0 to 4.8.4\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\u003e4.5.0\u003c/h2\u003e\n\u003ch2\u003eDataset Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd lance format support by \u003ca href=\"https://github.com/eddyxu\"\u003e\u003ccode\u003e@​eddyxu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7913\"\u003ehuggingface/datasets#7913\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for both Lance dataset (including metadata / manifests) and standalone .lance files\u003c/li\u003e\n\u003cli\u003ee.g. with \u003ca href=\"https://huggingface.co/datasets/lance-format/fineweb-edu\"\u003elance-format/fineweb-edu\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003efrom datasets import load_dataset\r\n\u003cp\u003eds = load_dataset(\u0026quot;lance-format/fineweb-edu\u0026quot;, streaming=True)\nfor example in ds[\u0026quot;train\u0026quot;]:\n...\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRaise early for invalid \u003ccode\u003erevision\u003c/code\u003e in \u003ccode\u003eload_dataset\u003c/code\u003e by \u003ca href=\"https://github.com/Scott-Simmons\"\u003e\u003ccode\u003e@​Scott-Simmons\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7929\"\u003ehuggingface/datasets#7929\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix low but large example indexerror by \u003ca href=\"https://github.com/CloseChoice\"\u003e\u003ccode\u003e@​CloseChoice\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7912\"\u003ehuggingface/datasets#7912\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix method to retrieve attributes from file object 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/7938\"\u003ehuggingface/datasets#7938\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd _OverridableIOWrapper 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/7942\"\u003ehuggingface/datasets#7942\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd _generate_shards 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/7943\"\u003ehuggingface/datasets#7943\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/eddyxu\"\u003e\u003ccode\u003e@​eddyxu\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7913\"\u003ehuggingface/datasets#7913\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Scott-Simmons\"\u003e\u003ccode\u003e@​Scott-Simmons\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/huggingface/datasets/pull/7929\"\u003ehuggingface/datasets#7929\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/datasets/compare/4.4.2...4.5.0\"\u003ehttps://github.com/huggingface/datasets/compare/4.4.2...4.5.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/huggingface/datasets/commit/69d773ac45a28194b96977034ec410dda1f2ccf4\"\u003e\u003ccode\u003e69d773a\u003c/code\u003e\u003c/a\u003e Release: 4.5.0 (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7944\"\u003e#7944\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/dc98f979517dbfa68322d2b9d193e32ec3b61bc2\"\u003e\u003ccode\u003edc98f97\u003c/code\u003e\u003c/a\u003e Add _generate_shards (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7943\"\u003e#7943\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/38d28bfc942a6f1dff1b5321f927f676c7515d8c\"\u003e\u003ccode\u003e38d28bf\u003c/code\u003e\u003c/a\u003e add _OverridableIOWrapper (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7942\"\u003e#7942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/7431153ef4bd827dbbea077c3e9300ce9a275710\"\u003e\u003ccode\u003e7431153\u003c/code\u003e\u003c/a\u003e Fix method to retrieve attributes from file object (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7938\"\u003e#7938\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/6a1bc355a0ca2c8f9f5c10698215212f0f14e7b7\"\u003e\u003ccode\u003e6a1bc35\u003c/code\u003e\u003c/a\u003e fix low but large example indexerror (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7912\"\u003e#7912\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/7bdf8403a4ae180f98bfa58080d92f57709448fa\"\u003e\u003ccode\u003e7bdf840\u003c/code\u003e\u003c/a\u003e Raise early for invalid \u003ccode\u003erevision\u003c/code\u003e in \u003ccode\u003eload_dataset\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7929\"\u003e#7929\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/06b6e020cadc12d625e34bea5048378d6097ab9d\"\u003e\u003ccode\u003e06b6e02\u003c/code\u003e\u003c/a\u003e Add lance format support (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7913\"\u003e#7913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/0feb65dd8733191dd2d1e74215b422fc5939a56a\"\u003e\u003ccode\u003e0feb65d\u003c/code\u003e\u003c/a\u003e set dev version (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7908\"\u003e#7908\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/37d96157e1632e946f0af8b9e3274a0ca8cd96c7\"\u003e\u003ccode\u003e37d9615\u003c/code\u003e\u003c/a\u003e release: 4.4.2 (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7907\"\u003e#7907\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/datasets/commit/58dda425abb52c09e65feeef563c4fb33908e8dc\"\u003e\u003ccode\u003e58dda42\u003c/code\u003e\u003c/a\u003e Don't save original_shard_lengths by default for backward compat (\u003ca href=\"https://redirect.github.com/huggingface/datasets/issues/7906\"\u003e#7906\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/datasets/compare/3.4.1...4.5.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 0.36.2 to 1.9.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.9.0] Agent-Aware CLI, Spaces Volumes, and more\u003c/h2\u003e\n\u003ch2\u003e🚀 Spaces Volumes: Mount Models, Datasets, and Buckets Directly\u003c/h2\u003e\n\u003cp\u003eHugging Face Spaces now support mounting volumes, giving your Space direct filesystem access to models, datasets, and storage buckets. This replaces the deprecated persistent storage feature.\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003efrom huggingface_hub import HfApi, Volume\r\n\u003cp\u003eapi = HfApi()\napi.set_space_volumes(\nrepo_id=\u0026quot;username/my-space\u0026quot;,\nvolumes=[\nVolume(type=\u0026quot;model\u0026quot;, source=\u0026quot;username/my-model\u0026quot;, mount_path=\u0026quot;/models\u0026quot;, read_only=True),\nVolume(type=\u0026quot;bucket\u0026quot;, source=\u0026quot;username/my-bucket\u0026quot;, mount_path=\u0026quot;/data\u0026quot;),\n],\n)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eVolumes can also be set at creation time via \u003ccode\u003ecreate_repo(space_volumes=...)\u003c/code\u003e and \u003ccode\u003eduplicate_repo(space_volumes=...)\u003c/code\u003e, and from the CLI with the \u003ccode\u003e--volume\u003c/code\u003e / \u003ccode\u003e-v\u003c/code\u003e flag:\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003e# Create a Space with volumes mounted\r\nhf repos create my-space --type space --space-sdk gradio \\\r\n    -v hf://gpt2:/models -v hf://buckets/org/b:/data\r\n\u003ch1\u003eDuplicate a Space with volumes\u003c/h1\u003e\n\u003cp\u003ehf repos duplicate org/my-space my-space --type space \u003cbr /\u003e\n-v hf://gpt2:/models -v hf://buckets/org/b:/data\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for mounted volumes 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/4018\"\u003e#4018\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport volumes at repo creation and duplication 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/4035\"\u003e#4035\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🤖 The \u003ccode\u003ehf\u003c/code\u003e CLI Now Auto-Detects AI Agents and Adapts Its Output\u003c/h2\u003e\n\u003cp\u003eAI coding agents (Claude Code, Cursor, Codex, Copilot, Gemini, ...) increasingly use the \u003ccode\u003ehf\u003c/code\u003e CLI to interact with the Hub. Until now, the output was designed for humans - ANSI colors, padded tables, emoji booleans, truncated cells - making it hard for agents to parse reliably.\u003c/p\u003e\n\u003cp\u003eStarting with v1.9, the CLI \u003cstrong\u003eautomatically detects when it's running inside an agent\u003c/strong\u003e and adapts its output: no ANSI, no truncation, tab-separated tables, compact JSON, full timestamps. No configuration needed - it just works. This is only a first step toward making the \u003ccode\u003ehf\u003c/code\u003e CLI the primary entry point to the Hugging Face Hub for AI agents!\u003c/p\u003e\n\u003cp\u003eAgent mode is auto-detected but you can also force a mode explicitly with \u003ccode\u003e--format\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"bash\"\u003e\u003ccode\u003ehf models ls --limit 5                  # auto-detect\r\nhf models ls --limit 5 --format agent   # force agent-friendly output\r\nhf models ls --limit 5 --format json    # structured JSON\r\nhf models ls --limit 5 --format quiet   # IDs only, great for piping\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eHere's what an agent sees compared to a human:\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/huggingface/huggingface_hub/commit/b768bb2ddb2a8ca27314f53ddc884bccafe01a7a\"\u003e\u003ccode\u003eb768bb2\u003c/code\u003e\u003c/a\u003e Release: v1.9.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/9d30ff2af2f0ac8c6930e4f1a0cc1d4512ca1cef\"\u003e\u003ccode\u003e9d30ff2\u003c/code\u003e\u003c/a\u003e Release: v1.9.0.rc0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/657b8b95fb60d41b014c465f8f15546cbd0ebb7a\"\u003e\u003ccode\u003e657b8b9\u003c/code\u003e\u003c/a\u003e chore: remove claude.yml workflow file (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4031\"\u003e#4031\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/38d48d91fe18acbf578d0fb70bb6acea424f8f38\"\u003e\u003ccode\u003e38d48d9\u003c/code\u003e\u003c/a\u003e [CLI] Migrate \u003ccode\u003emodels\u003c/code\u003e, \u003ccode\u003edatasets\u003c/code\u003e, \u003ccode\u003espaces\u003c/code\u003e, \u003ccode\u003epapers\u003c/code\u003e to \u003ccode\u003eout\u003c/code\u003e singleton (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4\"\u003e#4\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/4e2337d5d4197f2bd08963ffaf392e82fe5479de\"\u003e\u003ccode\u003e4e2337d\u003c/code\u003e\u003c/a\u003e [CLI] enrich CLI errors with available options and commands (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4034\"\u003e#4034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/ea1f4b79eb06368fd0e99a31eb40383c4c871dc5\"\u003e\u003ccode\u003eea1f4b7\u003c/code\u003e\u003c/a\u003e Support volumes at repo creation and duplication (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4035\"\u003e#4035\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/993d6456afe292af43699ca2bedc991b74cc2b95\"\u003e\u003ccode\u003e993d645\u003c/code\u003e\u003c/a\u003e [FEAT] Support skills from hf skills (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/3956\"\u003e#3956\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/bb7dc6e26670b16776359023211f8691e5ac0e0f\"\u003e\u003ccode\u003ebb7dc6e\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eHF_HUB_DISABLE_SYMLINKS\u003c/code\u003e env variable to force no-symlink cache (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4032\"\u003e#4032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/2593ff8f9261b7d23f69fb65a260f1b0ec8e9749\"\u003e\u003ccode\u003e2593ff8\u003c/code\u003e\u003c/a\u003e Do not scan CACHEDIR.TAG file in cache (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4036\"\u003e#4036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/huggingface_hub/commit/b8d92a2572de4f6289400606336da6817f3e0059\"\u003e\u003ccode\u003eb8d92a2\u003c/code\u003e\u003c/a\u003e [Fix] Validate shard filenames in sharded checkpoint index files (\u003ca href=\"https://redirect.github.com/huggingface/huggingface_hub/issues/4033\"\u003e#4033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/huggingface_hub/compare/v0.36.2...v1.9.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.57.6 to 5.5.0\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.5.0\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eNew Model additions\u003c/h2\u003e\n\u003ch3\u003eGemma4\u003c/h3\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/huggingface/transformers/blob/HEAD/INSET_PAPER_LINK\"\u003eGemma 4\u003c/a\u003e is a multimodal model with pretrained and instruction-tuned variants, available in 1B, 13B, and 27B parameters. The architecture is mostly the same as the previous Gemma versions. The key differences are a vision processor that can output images of fixed token budget and a spatial 2D RoPE to encode vision-specific information across height and width axis.\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003eYou can find all the original Gemma 4 checkpoints under the \u003ca href=\"https://huggingface.co/collections/google/gemma-4-release-67c6c6f89c4f76621268bb6d\"\u003eGemma 4\u003c/a\u003e release.\u003c/p\u003e\n\u003cp\u003eThe key difference from previous Gemma releases is the new design to process \u003cstrong\u003eimages of different sizes\u003c/strong\u003e using a \u003cstrong\u003efixed-budget number of tokens\u003c/strong\u003e. Unlike many models that squash every image into a fixed square (like 224×224), Gemma 4 keeps the image's natural aspect ratio while making it the right size. There a a couple constraints to follow:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe total number of pixels must fit within a patch budget\u003c/li\u003e\n\u003cli\u003eBoth height and width must be divisible by \u003cstrong\u003e48\u003c/strong\u003e (= patch size 16 × pooling kernel 3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!IMPORTANT]\nGemma 4 does \u003cstrong\u003enot\u003c/strong\u003e apply the standard ImageNet mean/std normalization that many other vision models use. The model's own patch embedding layer handles the final scaling internally (shifting values to the [-1, 1] range).\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cp\u003eThe number of \u0026quot;soft tokens\u0026quot; (aka vision tokens) an image processor can produce is configurable. The supported options are outlined below and the default is \u003cstrong\u003e280 soft tokens\u003c/strong\u003e per image.\u003c/p\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth align=\"center\"\u003eSoft Tokens\u003c/th\u003e\n\u003cth align=\"center\"\u003ePatches (before pooling)\u003c/th\u003e\n\u003cth align=\"center\"\u003eApprox. Image Area\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd align=\"center\"\u003e70\u003c/td\u003e\n\u003ctd align=\"center\"\u003e630\u003c/td\u003e\n\u003ctd align=\"center\"\u003e~161K pixels\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd align=\"center\"\u003e140\u003c/td\u003e\n\u003ctd align=\"center\"\u003e1,260\u003c/td\u003e\n\u003ctd align=\"center\"\u003e~323K pixels\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd align=\"center\"\u003e\u003cstrong\u003e280\u003c/strong\u003e\u003c/td\u003e\n\u003ctd align=\"center\"\u003e\u003cstrong\u003e2,520\u003c/strong\u003e\u003c/td\u003e\n\u003ctd align=\"center\"\u003e\u003cstrong\u003e~645K pixels\u003c/strong\u003e\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd align=\"center\"\u003e560\u003c/td\u003e\n\u003ctd align=\"center\"\u003e5,040\u003c/td\u003e\n\u003ctd align=\"center\"\u003e~1.3M pixels\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd align=\"center\"\u003e1,120\u003c/td\u003e\n\u003ctd align=\"center\"\u003e10,080\u003c/td\u003e\n\u003ctd align=\"center\"\u003e~2.6M pixels\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eTo encode positional information for each patch in the image, Gemma 4 uses a learned 2D position embedding table. The position table stores up to 10,240 positions per axis, which allows the model to handle very large images. Each position is a learned vector of the same dimensions as the patch embedding. The 2D RoPE which Gemma 4 uses independently rotate half the attention head dimensions for the x-axis and the other half for the y-axis. This allows the model to understand spatial relationships like \u0026quot;above,\u0026quot; \u0026quot;below,\u0026quot; \u0026quot;left of,\u0026quot; and \u0026quot;right of.\u0026quot;\u003c/p\u003e\n\u003ch3\u003eNomicBERT\u003c/h3\u003e\n\u003cp\u003eNomicBERT is a BERT-inspired encoder model that applies Rotary Position Embeddings (RoPE) to create reproducible long context text embeddings. It is the first fully reproducible, open-source text embedding model with 8192 context length that outperforms both OpenAI Ada-002 and OpenAI text-embedding-3-small on short-context MTEB and long context LoCo benchmarks. The model generates dense vector embeddings for various tasks including search, clustering, and classification using specific instruction prefixes.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/nomic_bert\"\u003eDocumentation\u003c/a\u003e | \u003ca href=\"https://arxiv.org/abs/2402.01613\"\u003ePaper\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eInternalise the NomicBERT model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/43067\"\u003e#43067\u003c/a\u003e) by \u003ca href=\"https://github.com/ed22699\"\u003e\u003ccode\u003e@​ed22699\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/43067\"\u003e#43067\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMusicFlamingo\u003c/h3\u003e\n\u003cp\u003eMusic Flamingo is a fully open large audio–language model designed for robust understanding and reasoning over music. It builds upon the Audio Flamingo 3 architecture by including Rotary Time Embeddings (RoTE), which injects temporal position information to enable the model to handle audio sequences up to 20 minutes. The model features a unified audio encoder across speech, sound, and music with special sound boundary tokens for improved audio sequence modeling.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eLinks:\u003c/strong\u003e \u003ca href=\"https://huggingface.co/docs/transformers/main/en/model_doc/musicflamingo\"\u003eDocumentation\u003c/a\u003e | \u003ca href=\"https://huggingface.co/papers/2511.10289\"\u003ePaper\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Music Flamingo (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/43538\"\u003e#43538\u003c/a\u003e) by \u003ca href=\"https://github.com/lashahub\"\u003e\u003ccode\u003e@​lashahub\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/transformers/pull/43538\"\u003e#43538\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/transformers/commit/c1c34249fa27deefbd4a377dfbf883a39baf5c6d\"\u003e\u003ccode\u003ec1c3424\u003c/code\u003e\u003c/a\u003e update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/20bff6865a756a074f5b893b57f0ae438b25ec46\"\u003e\u003ccode\u003e20bff68\u003c/code\u003e\u003c/a\u003e update release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/89564412a56ae6581f8aa48a533a835860dc9f43\"\u003e\u003ccode\u003e8956441\u003c/code\u003e\u003c/a\u003e v5.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/5135e5efa7203cd23aac0866de12dfeef038422d\"\u003e\u003ccode\u003e5135e5e\u003c/code\u003e\u003c/a\u003e casually dropping the most capable open weights on the planet (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/45192\"\u003e#45192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/a594e09e3924120f1f5508e7d81946bf3504df2b\"\u003e\u003ccode\u003ea594e09\u003c/code\u003e\u003c/a\u003e Internalise the NomicBERT model (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/43067\"\u003e#43067\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/4932e9721e230bea915341e7f04db32885b6c6af\"\u003e\u003ccode\u003e4932e97\u003c/code\u003e\u003c/a\u003e Fix resized LM head weights being overwritten by post_init (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/45079\"\u003e#45079\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/57e84139542c8c297873f35fcd25f66ffcf132ae\"\u003e\u003ccode\u003e57e8413\u003c/code\u003e\u003c/a\u003e [Qwen3.5 MoE] Add _tp_plan to ForConditionalGeneration (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/45124\"\u003e#45124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/b10552e99dc4974b30126995baea455df43f8476\"\u003e\u003ccode\u003eb10552e\u003c/code\u003e\u003c/a\u003e Fix TypeError: 'NoneType' object is not iterable in GenerationMixin.generate ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/423f2a31d2bd05bdc1dc30dd938389edaa998fde\"\u003e\u003ccode\u003e423f2a3\u003c/code\u003e\u003c/a\u003e fix(models): Fix dtype mismatch in SwitchTransformers and TimmWrapperModel (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/transformers/commit/ade7a05a42bf53b183bb78c181743be063c5ff14\"\u003e\u003ccode\u003eade7a05\u003c/code\u003e\u003c/a\u003e Generalize gemma vision mask to videos (\u003ca href=\"https://redirect.github.com/huggingface/transformers/issues/45185\"\u003e#45185\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/transformers/compare/v4.57.6...v5.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `trl` from 0.23.1 to 1.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/huggingface/trl/releases\"\u003etrl's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.0.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003eRead our \u003ca href=\"https://hf.co/blog/trl-v1\"\u003eblog post\u003c/a\u003e for an overview of TRL v1.\u003c/p\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003ch3\u003eAsynchronous GRPO\u003c/h3\u003e\n\u003cp\u003eAsynchronous GRPO decouples generation from the gradient update loop by offloading rollouts to an external vLLM server. Generation runs in parallel while training continues, eliminating idle GPU time and improving hardware utilization.\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003efrom trl.experimental.async_grpo import AsyncGRPOTrainer\r\nfrom trl.rewards import accuracy_reward\r\nfrom datasets import load_dataset\r\n\u003cp\u003edataset = load_dataset(\u0026quot;trl-lib/DeepMath-103K\u0026quot;, split=\u0026quot;train\u0026quot;)\u003c/p\u003e\n\u003cp\u003etrainer = AsyncGRPOTrainer(\nmodel=\u0026quot;Qwen/Qwen2.5-0.5B-Instruct\u0026quot;,\nreward_funcs=accuracy_reward,\ntrain_dataset=dataset,\n)\ntrainer.train()\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eby \u003ca href=\"https://github.com/qgallouedec\"\u003e\u003ccode\u003e@​qgallouedec\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/trl/pull/5293\"\u003ehuggingface/trl#5293\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eVariational Sequence-Level Soft Policy Optimization (VESPO)\u003c/h3\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003ca href=\"https://huggingface.co/papers/2602.10693\"\u003eVESPO\u003c/a\u003e addresses training instability in off-policy RL caused by policy staleness, asynchronous updates, and train-inference mismatches. Rather than relying on heuristic token-level clipping (GRPO) or sequence-length normalization (GSPO), VESPO derives a principled reshaping kernel from a variational framework. In practice, this yields a smooth, asymmetric Gamma weighting function that gracefully suppresses extreme sequence-level importance weights without introducing length bias. It can be enabled via the \u003ccode\u003eloss_type\u003c/code\u003e parameter of \u003ccode\u003eGRPOConfig\u003c/code\u003e:\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003efrom trl import GRPOConfig, GRPOTrainer\r\n\u003cp\u003etrainer = GRPOTrainer(\nmodel=\u0026quot;Qwen/Qwen3-0.6B\u0026quot;,\nargs=GRPOConfig(loss_type=\u0026quot;vespo\u0026quot;),\n...\n)\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eby \u003ca href=\"https://github.com/casinca\"\u003e\u003ccode\u003e@​casinca\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/huggingface/trl/pull/5199\"\u003ehuggingface/trl#5199\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eDivergence Proximal Policy Optimization (DPPO)\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/trl/commit/f3e9ac1005980fded7192682599c70749785fa9b\"\u003e\u003ccode\u003ef3e9ac1\u003c/code\u003e\u003c/a\u003e Release: v1.0 (\u003ca href=\"https://redirect.github.com/huggingface/trl/issues/5409\"\u003e#5409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/e8d5dfc0d2ea4d5f6fe4d9597b8bd45f3e393be6\"\u003e\u003ccode\u003ee8d5dfc\u003c/code\u003e\u003c/a\u003e Add second version of Qwen 3.5 chat template to chat_template_utils (\u003ca href=\"https://redirect.github.com/huggingface/trl/issues/5405\"\u003e#5405\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/71ff6a27a25eb411d6cd14702ac8ab91768f48e0\"\u003e\u003ccode\u003e71ff6a2\u003c/code\u003e\u003c/a\u003e Add HF_TOKEN environment variable to workflow files (\u003ca href=\"https://redirect.github.com/huggingface/trl/issues/5397\"\u003e#5397\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/1ee3975e5f92d6412a23c7fb72208f6585b09b64\"\u003e\u003ccode\u003e1ee3975\u003c/code\u003e\u003c/a\u003e Add vLLM inference to the Base Self-Distillation Trainer (\u003ca href=\"https://redirect.github.com/huggingface/trl/issues/5388\"\u003e#5388\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/79e6e7986880e80689c5d4cbb531127e427a1de2\"\u003e\u003ccode\u003e79e6e79\u003c/code\u003e\u003c/a\u003e Move \u003ccode\u003edisable_config=True\u003c/code\u003e from \u003ccode\u003egenerate\u003c/code\u003e to \u003ccode\u003eGenerationConfig\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/trl/issues/5384\"\u003e#5384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/83d68dd1287493710a124318f96885295e6ecc68\"\u003e\u003ccode\u003e83d68dd\u003c/code\u003e\u003c/a\u003e chore: update \u003ccode\u003epr_template_check.yml\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/huggingface/trl/issues/5393\"\u003e#5393\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/4cb7ab1cb8a431622bac10029030ac14f7271315\"\u003e\u003ccode\u003e4cb7ab1\u003c/code\u003e\u003c/a\u003e Enhance PR template check to exclude reopened PRs from first-time contributor...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/32a40bf9035a559a9e9961c976a31ef4733ac9dd\"\u003e\u003ccode\u003e32a40bf\u003c/code\u003e\u003c/a\u003e Enforce PR template for first-time contributors and document AI usage policy ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/8e69b68a1f6b9e7c5774315fa2174dc1ce7f0605\"\u003e\u003ccode\u003e8e69b68\u003c/code\u003e\u003c/a\u003e Mark test_rloo[fsdp2] as xfail for transformers 5.4.0 (\u003ca href=\"https://redirect.github.com/huggingface/trl/issues/5387\"\u003e#5387\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/huggingface/trl/commit/c264266a3a60daded55dcae6a44b1bfc806442a4\"\u003e\u003ccode\u003ec264266\u003c/code\u003e\u003c/a\u003e Remove deprecated \u003ccode\u003eTRACKIO_SPACE_ID\u003c/code\u003e env var from all scripts (\u003ca href=\"https://redirect.github.com/huggingface/trl/issues/5365\"\u003e#5365\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/huggingface/trl/compare/v0.23.1...v1.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `data-designer-engine` from 0.5.4 to 0.5.5\n\nUpdates `pandas` from 2.3.3 to 3.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pandas-dev/pandas/releases\"\u003epandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epandas 3.0.2\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 3.0.2.\nThis is a patch release in the 3.0.x series and includes some regression fixes and bug fixes. We recommend that all users of the 3.0.x series upgrade to this version.\u003c/p\u003e\n\u003cp\u003eSee the \u003ca href=\"https://pandas.pydata.org/docs/dev/whatsnew/v3.0.2.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\u003c/p\u003e\n\u003cp\u003ePandas 3.0 supports Python 3.11 and higher.\nThe release can be installed from PyPI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython -m pip install --upgrade pandas==3.0.*\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr from conda-forge\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge pandas=3.0\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePlease report any issues with the release on the \u003ca href=\"https://github.com/pandas-dev/pandas/issues\"\u003epandas issue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to all the contributors who made this release possible.\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/ab90747e3dae0e69b1bdbf083820b8075689b34b\"\u003e\u003ccode\u003eab90747\u003c/code\u003e\u003c/a\u003e RLS: 3.0.2 (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64934\"\u003e#64934\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6f270137a27f8de4bd1afd7d71220e0760429750\"\u003e\u003ccode\u003e6f27013\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64931\"\u003e#64931\u003c/a\u003e on branch 3.0.x (DOC/BLD: temporary disable upload of docs...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/48ddc60d6efe8d942dbe1495dea725a9d7db15ef\"\u003e\u003ccode\u003e48ddc60\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64664\"\u003e#64664\u003c/a\u003e on branch 3.0.x (BUG: DataFrame.sum() crashes on empty Dat...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/8774488df19d0859ddc05a24210783b66da27ef7\"\u003e\u003ccode\u003e8774488\u003c/code\u003e\u003c/a\u003e [backport 3.0.x] PERF: fix slow python loop in validation for ArrowStringArra...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/33af6cc04ed6331c23a49655c4c7bb8f90351da3\"\u003e\u003ccode\u003e33af6cc\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64133\"\u003e#64133\u003c/a\u003e on branch 3.0.x (BUG: str.find returns byte offset instead...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/4ef49d815aae99b6ba5627ab0a54ba0819336652\"\u003e\u003ccode\u003e4ef49d8\u003c/code\u003e\u003c/a\u003e [backport 3.0.x] BUG: fix convert_dtypes dropping values from sliced mixed-dt...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/0668f3451120e5552cdc8cf5d85f6d1238ce4e12\"\u003e\u003ccode\u003e0668f34\u003c/code\u003e\u003c/a\u003e [backport 3.0.x] BUG: Fix HDFStore.put with StringDtype columns and compressi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/23f2f442ea1af6deddfefef2a4a1e4cb44328c3d\"\u003e\u003ccode\u003e23f2f44\u003c/code\u003e\u003c/a\u003e [backport 3.0.x] BUG: Suppress unnecessary RuntimeWarning in to_datetime with...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/83ba804de35ec98798d31474d044cff7666bebd6\"\u003e\u003ccode\u003e83ba804\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64886\"\u003e#64886\u003c/a\u003e: BUG: Compute Variance of Complex Numbers Correctly (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64892\"\u003e#64892\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/bb5ca1a7a96130fa0e8e2a3987c051e4473f7792\"\u003e\u003ccode\u003ebb5ca1a\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/64386\"\u003e#64386\u003c/a\u003e on branch 3.0.x (BUG: fix sort_index AssertionError with R...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.0.0...v3.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` to 9.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.0.2\u003c/h2\u003e\n\u003ch1\u003epytest 9.0.2 (2025-12-06)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13896\"\u003e#13896\u003c/a\u003e: The terminal progress feature added in pytest 9.0.0 has been disabled by default, except on Windows, due to compatibility issues with some terminal emulators.\u003c/p\u003e\n\u003cp\u003eYou may enable it again by passing \u003ccode\u003e-p terminalprogress\u003c/code\u003e. We may enable it by default again once compatibility improves in the future.\u003c/p\u003e\n\u003cp\u003eAdditionally, when the environment variable \u003ccode\u003eTERM\u003c/code\u003e is \u003ccode\u003edumb\u003c/code\u003e, the escape codes are no longer emitted, even if the plugin is enabled.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13904\"\u003e#13904\u003c/a\u003e: Fixed the TOML type of the \u003ccode\u003etmp_path_retention_count\u003c/code\u003e settings in the API reference from number to string.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13946\"\u003e#13946\u003c/a\u003e: The private \u003ccode\u003econfig.inicfg\u003c/code\u003e attribute was changed in a breaking manner in pytest 9.0.0.\nDue to its usage in the ecosystem, it is now restored to working order using a compatibility shim.\nIt will be deprecated in pytest 9.1 and removed in pytest 10.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13965\"\u003e#13965\u003c/a\u003e: Fixed quadratic-time behavior when handling \u003ccode\u003eunittest\u003c/code\u003e subtests in Python 3.10.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/4492\"\u003e#4492\u003c/a\u003e: The API Reference now contains cross-reference-able documentation of \u003ccode\u003epytest's command-line flags \u0026lt;command-line-flags\u0026gt;\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/pytest-dev/pytest/commit/3d10b5148e03eb82b3ee29181dbdc73cf82699e2\"\u003e\u003ccode\u003e3d10b51\u003c/code\u003e\u003c/a\u003e Prepare release version 9.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/188750b725add8c3400eee6fbb6b80559c296d69\"\u003e\u003ccode\u003e188750b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14030\"\u003e#14030\u003c/a\u003e from pytest-dev/patchback/backports/9.0.x/1e4b01d1f...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7d7bef90cb9a6db8ac1d3dd5b9ae0eb9abd6c58\"\u003e\u003ccode\u003eb7d7bef\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14014\"\u003e#14014\u003c/a\u003e from bluetech/compat-note\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bd08e85ac76614ff5ca9ae338aee8d8b06c8fae0\"\u003e\u003ccode\u003ebd08e85\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14013\"\u003e#14013\u003c/a\u003e from pytest-dev/patchback/backports/9.0.x/922b60377...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bc783862991241c442c9f9c068e51737ec15ea10\"\u003e\u003ccode\u003ebc78386\u003c/code\u003e\u003c/a\u003e Add CLI options reference documentation (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13930\"\u003e#13930\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/5a4e398ce89bc23d2cf3fd98c042fdffb6fa8afa\"\u003e\u003ccode\u003e5a4e398\u003c/code\u003e\u003c/a\u003e Fix docs typo (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14005\"\u003e#14005\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14008\"\u003e#14008\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/d7ae6df394398168bf9d926f803c26849c8f07ee\"\u003e\u003ccode\u003ed7ae6df\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14006\"\u003e#14006\u003c/a\u003e from pytest-dev/maintenance/update-plugin-list-tmpl...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/556f6a22e12d13d1ffeceaf64424eb95d5e0fb87\"\u003e\u003ccode\u003e556f6a2\u003c/code\u003e\u003c/a\u003e pre-commit: fix rst-lint after new release (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13999\"\u003e#13999\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14001\"\u003e#14001\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c60fbe63a26f64a42738e3f3527a8f79024fdf50\"\u003e\u003ccode\u003ec60fbe6\u003c/code\u003e\u003c/a\u003e Fix quadratic-time behavior when handling \u003ccode\u003eunittest\u003c/code\u003e subtests in Python 3.10 ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/73d9b011183d9a1c4a7007c1119d97a6e627788e\"\u003e\u003ccode\u003e73d9b01\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13995\"\u003e#13995\u003c/a\u003e from nicoddemus/patchback/backports/9.0.x/1b5200c0f...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/1.0.0b3...9.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-rerunfailures` from 15.1 to 16.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/blob/master/CHANGES.rst\"\u003epytest-rerunfailures's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e16.1 (2025-10-10)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eDrop support for Python 3.9.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eChanged \u0026quot;localhost\u0026quot; to \u0026quot;127.0.0.1\u0026quot; to avoid bad hostname resolution.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003e--force-reruns\u003c/code\u003e to override rerun count globally.\nFixes \u003ccode\u003e[#306](https://github.com/pytest-dev/pytest-rerunfailures/issues/306) \u0026lt;https://github.com/pytest-dev/pytest-rerunfailures/issues/306\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e16.0.1 (2025-09-02)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eReverted the ability to access error attributes because of an incompatibility\nwith \u003ccode\u003epytest-xdist \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/843\u0026gt;\u003c/code\u003e\u003cem\u003e.\nFixes \u003ccode\u003e[#302](https://github.com/pytest-dev/pytest-rerunfailures/issues/302) \u0026lt;https://github.com/pytest-dev/pytest-rerunfailures/issues/302\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#303](https://github.com/pytest-dev/pytest-rerunfailures/issues/303) \u0026lt;https://github.com/pytest-dev/pytest-rerunfailures/issues/303\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e16.0 (2025-08-29)\u003c/h2\u003e\n\u003cp\u003eBreaking changes\n++++++++++++++++\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for pytest \u0026lt; 8.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFeatures\n++++++++\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for pytest 8.4.x.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for upcoming Python 3.14.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAllow \u003ccode\u003e@pytest.mark.flaky(condition)\u003c/code\u003e to accept a callable or a string\nto be evaluated. The evaluated string has access to the exception instance\nvia the \u003ccode\u003eerror\u003c/code\u003e object.\n(\u003ccode\u003e[#230](https://github.com/pytest-dev/pytest-rerunfailures/issues/230) \u0026lt;https://github.com/pytest-dev/pytest-rerunfailures/issues/230\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/b01509200f8f782e5666011932886758a50a32c1\"\u003e\u003ccode\u003eb015092\u003c/code\u003e\u003c/a\u003e Preparing release 16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/c1666dd7e53e98228c6fe18f83d23bc3c6b71aa7\"\u003e\u003ccode\u003ec1666dd\u003c/code\u003e\u003c/a\u003e Prepare release.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/8d04ad96399ccf16575e3395968e957552f98b98\"\u003e\u003ccode\u003e8d04ad9\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003eNotImplementedError\u003c/code\u003e crash when using xdist schedulers without `mark_tes...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/cb8ede70437ef33a14e4fe2ed612f5f96883d6b2\"\u003e\u003ccode\u003ecb8ede7\u003c/code\u003e\u003c/a\u003e Add a \u003ccode\u003e--force-reruns\u003c/code\u003e to override rerun count globally (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-rerunfailures/issues/307\"\u003e#307\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/5e011325322460d3340a5b60ddf7bd2f434ff6d0\"\u003e\u003ccode\u003e5e01132\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5 to 6 in the actions group (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-rerunfailures/issues/310\"\u003e#310\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/88e002332ed92dad8d912f31cbd6d82bb8d6c4dd\"\u003e\u003ccode\u003e88e0023\u003c/code\u003e\u003c/a\u003e Drop support for Python 3.9. (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-rerunfailures/issues/308\"\u003e#308\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/df47974727f53b902df4545fc67b0e5862f17c2f\"\u003e\u003ccode\u003edf47974\u003c/code\u003e\u003c/a\u003e Change 'localhost' to '127.0.0.1' (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-rerunfailures/issues/305\"\u003e#305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/f149c7dcc7878b2d92b24f860e6e0ff88c7e3f1e\"\u003e\u003ccode\u003ef149c7d\u003c/code\u003e\u003c/a\u003e Back to development: 16.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/f97618f95c630af28bbecacc83fc8715146bfa57\"\u003e\u003ccode\u003ef97618f\u003c/code\u003e\u003c/a\u003e Preparing release 16.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/commit/c60d17dee372d5ad935d6da35c6e13ba2d34018d\"\u003e\u003ccode\u003ec60d17d\u003c/code\u003e\u003c/a\u003e Prepare release.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-rerunfailures/compare/15.1...16.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `scikit-learn` from 1.7.1 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/scikit-learn/scikit-learn/releases\"\u003escikit-learn's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 1.8.0\u003c/h2\u003e\n\u003cp\u003eWe're happy to announce the 1.8.0 release.\u003c/p\u003e\n\u003cp\u003eYou can read the release highlights under \u003ca href=\"https://scikit-learn.org/stable/auto_examples/release_highlights/plot_release_highlights_1_8_0.html\"\u003ehttps://scikit-learn.org/stable/auto_examples/release_highlights/plot_release_highlights_1_8_0.html\u003c/a\u003e and the long version of the change log under \u003ca href=\"https://scikit-learn.org/stable/whats_new/v1.8.html\"\u003ehttps://scikit-learn.org/stable/whats_new/v1.8.html\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis version supports Python versions 3.11 to 3.14 and features support of free-threaded CPython.\u003c/p\u003e\n\u003cp\u003eYou can upgrade with pip as usual:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epip install -U scikit-learn\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eThe conda-forge builds can be installed using:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge scikit-learn\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003ch2\u003eScikit-learn 1.7.2\u003c/h2\u003e\n\u003cp\u003eWe're happy to announce the 1.7.2 release.\u003c/p\u003e\n\u003cp\u003eThis release contains a few bug fixes and is the first version supporting Python 3.14.\u003c/p\u003e\n\u003cp\u003eYou can see the changelog here: \u003ca href=\"https://scikit-learn.org/stable/whats_new/v1.7.html#version-1-7-2\"\u003ehttps://scikit-learn.org/stable/whats_new/v1.7.html#version-1-7-2\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eYou can upgrade with pip as usual:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epip install -U scikit-learn\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eThe conda-forge builds can be installed using:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install -c conda-forge scikit-learn\r\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eThanks to everyone who contributed to this release !\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/scikit-learn/scikit-learn/commit/646da0f072a8afef6a980aa427a710311e67eb9d\"\u003e\u003ccode\u003e646da0f\u003c/code\u003e\u003c/a\u003e [cd build]\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/4f4f2831de348859efc5d8298cbf37e212a1efac\"\u003e\u003ccode\u003e4f4f283\u003c/code\u003e\u003c/a\u003e Generate changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/967dcde6dae92a6f9eafa804b5d93e8fdfd08f26\"\u003e\u003ccode\u003e967dcde\u003c/code\u003e\u003c/a\u003e Set version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/cb1424bf0d548d6fa9fdef2f91bb00636f484f10\"\u003e\u003ccode\u003ecb1424b\u003c/code\u003e\u003c/a\u003e DOC Release highlights for 1.8 (\u003ca href=\"https://redirect.github.com/scikit-learn/scikit-learn/issues/32809\"\u003e#32809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/5645b27b985486d6b75bb75e4929faa4da574173\"\u003e\u003ccode\u003e5645b27\u003c/code\u003e\u003c/a\u003e :lock: :robot: CI Update lock files for main CI build(s) :lock: :robot: (\u003ca href=\"https://redirect.github.com/scikit-learn/scikit-learn/issues/32859\"\u003e#32859\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/6b9fb1189957962cd0e4988d137af312ad09008f\"\u003e\u003ccode\u003e6b9fb11\u003c/code\u003e\u003c/a\u003e :lock: :robot: CI Update lock files for free-threaded CI build(s) :lock: :rob...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/a0f6d88d05d52594785455b570ed142c912568e7\"\u003e\u003ccode\u003ea0f6d88\u003c/code\u003e\u003c/a\u003e :lock: :robot: CI Update lock files for array-api CI build(s) :lock: :robot: ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/c1de8fc595fce930c5ce1792faeab8d80a4fecc2\"\u003e\u003ccode\u003ec1de8fc\u003c/code\u003e\u003c/a\u003e FIX Make \u003ccode\u003eget_namespace\u003c/code\u003e handle pandas dataframe input (\u003ca href=\"https://redirect.github.com/scikit-learn/scikit-learn/issues/32838\"\u003e#32838\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/764249a255ba4110685a772836f06477c40cf8a3\"\u003e\u003ccode\u003e764249a\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003e_safe_indexing\u003c/code\u003e with non integer arrays on array API inputs (\u003ca href=\"https://redirect.github.com/scikit-learn/scikit-learn/issues/32840\"\u003e#32840\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/scikit-learn/scikit-learn/commit/eca5e0ab2a16844c57fff675c2d017af2d8a570b\"\u003e\u003ccode\u003eeca5e0a\u003c/code\u003e\u003c/a\u003e FIX Add new default max_samples=None in Bagging estimators (\u003ca href=\"https://redirect.github.com/scikit-learn/scikit-learn/issues/32825\"\u003e#32825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/scikit-learn/scikit-learn/compare/1.7.1...1.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `datasets` from 4.3.0 ...\n\n_Description has been truncated_","html_url":"https://github.com/unslothai/unsloth-staging-1/pull/21","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/unslothai%2Funsloth-staging-1/issues/21","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/21/packages"}},{"old_version":"9.2.2","new_version":"10.0.5","update_type":"major","path":null,"pr_created_at":"2026-04-01T10:46:32.000Z","version_change":"9.2.2 → 10.0.5","issue":{"uuid":"4185949671","node_id":"PR_kwDOOTmIKM7PN8uv","number":49,"state":"open","title":"Bump setuptools-scm from 9.2.2 to 10.0.5","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-04-01T10:46:32.000Z","updated_at":"2026-04-01T10:49:38.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"setuptools-scm","old_version":"9.2.2","new_version":"10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"}],"path":null,"ecosystem":"pip"},"body":"Bumps [setuptools-scm](https://github.com/pypa/setuptools-scm) from 9.2.2 to 10.0.5.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAnchor \u003ccode\u003eget_version\u003c/code\u003e in \u003ccode\u003esetup.py\u003c/code\u003e with \u003ccode\u003erelative_to\u003c/code\u003e and \u003ccode\u003efallback_root\u003c/code\u003e so SCM fallbacks (e.g. \u003ccode\u003ePKG-INFO\u003c/code\u003e) do not resolve against the wrong directory when the build cwd is the workspace or repo root. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1302\"\u003e#1302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnter \u003ccode\u003eGlobalOverrides\u003c/code\u003e for \u003ccode\u003eSETUPTOOLS_SCM\u003c/code\u003e when using \u003ccode\u003esetuptools_scm.get_version\u003c/code\u003e / \u003ccode\u003e_get_version\u003c/code\u003e, avoiding implicit context warnings for direct API callers. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1314\"\u003e#1314\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade pre-commit hooks (Ruff, mypy, codespell), align locked Ruff with hooks, and add Ruff per-file configuration for setuptools_scm re-export modules. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1311\"\u003e#1311\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove monorepo-only \u003ccode\u003e../vcs-versioning/src\u003c/code\u003e from \u003ccode\u003ebuild-system.backend-path\u003c/code\u003e so sdists install under PEP 517 (paths must stay inside the source tree). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1306\"\u003e#1306\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003egriffecli\u003c/code\u003e to test dependencies so the API stability check keeps working after the Griffe CLI was split into a separate package. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1310\"\u003e#1310\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix version file not generated for editable installs. Version files are now written to the source tree by default during inference (restoring pre-10.x behavior), and also registered as \u003ccode\u003ebuild_py\u003c/code\u003e outputs so strict editable installs include them in the persistent auxiliary directory. Set \u003ccode\u003eSETUPTOOLS_SCM_WRITE_TO_SOURCE=0\u003c/code\u003e to disable source-tree writing (e.g., for read-only source directories). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1298\"\u003e#1298\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.1\u003c/h2\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSimplify release tag creation to use a single \u003ccode\u003ecreateRelease\u003c/code\u003e API call instead of separate \u003ccode\u003ecreateTag\u003c/code\u003e/\u003ccode\u003ecreateRef\u003c/code\u003e/\u003ccode\u003ecreateRelease\u003c/code\u003e calls, avoiding dangling tag objects on partial failures. (\u003ca href=\"https://github.com/pypa/setuptools-scm/issues/release-pipeline\"\u003e#release-pipeline\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.0\u003c/h2\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 and 3.9 support. Minimum Python version is now 3.10. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esetuptools-scm now depends on vcs-versioning for core version inference logic. This enables other build backends to use the same version inference without setuptools dependency. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eVersion files (\u003ccode\u003ewrite_to\u003c/code\u003e and \u003ccode\u003eversion_file\u003c/code\u003e) are now written to the build directory\nduring \u003ccode\u003ebuild_py\u003c/code\u003e instead of the source tree during version inference.\nThis enables installing packages from read-only source directories (e.g., Bazel builds).\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/v9.2.2...setuptools-scm-v10.0.5\"\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=setuptools-scm\u0026package-manager=pip\u0026previous-version=9.2.2\u0026new-version=10.0.5)](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/ssec-jhu/fim/pull/49","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ssec-jhu%2Ffim/issues/49","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/49/packages"}},{"old_version":"9.2.2","new_version":"10.0.5","update_type":"major","path":null,"pr_created_at":"2026-03-30T22:32:23.000Z","version_change":"9.2.2 → 10.0.5","issue":{"uuid":"4174470796","node_id":"PR_kwDOD385987Oxisk","number":3054,"state":"closed","title":"Bump the pip-deps group across 1 directory with 13 updates","user":"dependabot[bot]","labels":["major","bumpless"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-03-30T22:34:19.000Z","author_association":null,"state_reason":null,"created_at":"2026-03-30T22:32:23.000Z","updated_at":"2026-03-30T22:34:21.000Z","time_to_close":116,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"pip-deps","update_count":13,"packages":[{"name":"boto3","old_version":"1.42.46","new_version":"1.42.79","repository_url":"https://github.com/boto/boto3"},{"name":"asf-search","old_version":"11.0.3","new_version":"12.0.6","repository_url":"https://github.com/asfadmin/Discovery-asf_search"},{"name":"flask","old_version":"3.1.2","new_version":"3.1.3","repository_url":"https://github.com/pallets/flask"},{"name":"openapi-core","old_version":"0.22.0","new_version":"0.23.0","repository_url":"https://github.com/python-openapi/openapi-core"},{"name":"pyjwt","old_version":"2.12.0","new_version":"2.12.1","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"requests","old_version":"2.33.0","new_version":"2.33.1","repository_url":"https://github.com/psf/requests"},{"name":"moto","old_version":"5.1.21","new_version":"5.1.22","repository_url":"https://github.com/getmoto/moto"},{"name":"responses","old_version":"0.25.8","new_version":"0.26.0","repository_url":"https://github.com/getsentry/responses"},{"name":"ruff","old_version":"0.15.0","new_version":"0.15.8","repository_url":"https://github.com/astral-sh/ruff"},{"name":"setuptools","old_version":"82.0.0","new_version":"82.0.1","repository_url":"https://github.com/pypa/setuptools"},{"name":"setuptools-scm","old_version":"9.2.2","new_version":"10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"},{"name":"openapi-spec-validator","old_version":"0.7.2","new_version":"0.8.4","repository_url":"https://github.com/python-openapi/openapi-spec-validator"},{"name":"cfn-lint","old_version":"1.44.0","new_version":"1.47.1","repository_url":"https://github.com/aws-cloudformation/cfn-lint"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-deps group with 13 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [boto3](https://github.com/boto/boto3) | `1.42.46` | `1.42.79` |\n| [asf-search](https://github.com/asfadmin/Discovery-asf_search) | `11.0.3` | `12.0.6` |\n| [flask](https://github.com/pallets/flask) | `3.1.2` | `3.1.3` |\n| [openapi-core](https://github.com/python-openapi/openapi-core) | `0.22.0` | `0.23.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.12.0` | `2.12.1` |\n| [requests](https://github.com/psf/requests) | `2.33.0` | `2.33.1` |\n| [moto](https://github.com/getmoto/moto) | `5.1.21` | `5.1.22` |\n| [responses](https://github.com/getsentry/responses) | `0.25.8` | `0.26.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.0` | `0.15.8` |\n| [setuptools](https://github.com/pypa/setuptools) | `82.0.0` | `82.0.1` |\n| [setuptools-scm](https://github.com/pypa/setuptools-scm) | `9.2.2` | `10.0.5` |\n| [openapi-spec-validator](https://github.com/python-openapi/openapi-spec-validator) | `0.7.2` | `0.8.4` |\n| [cfn-lint](https://github.com/aws-cloudformation/cfn-lint) | `1.44.0` | `1.47.1` |\n\n\nUpdates `boto3` from 1.42.46 to 1.42.79\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/79b815be1d502ab09b61fa24f1f989688a34eab8\"\u003e\u003ccode\u003e79b815b\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.79'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b11c6f7427b3920c8a8e1e0c3d1da7bbcf350b6a\"\u003e\u003ccode\u003eb11c6f7\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.79\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/98fabce7eb69aefa313721c11293a7c1eef51bc6\"\u003e\u003ccode\u003e98fabce\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b5acf8b4da83625fe3a4bbc37f44d3563a90bedb\"\u003e\u003ccode\u003eb5acf8b\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.78'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/6b3713da80c9f7ca1477741de612c020e9403128\"\u003e\u003ccode\u003e6b3713d\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.78' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/1da17a5f5f168ca19917cb3b5c1389b1918c1a6e\"\u003e\u003ccode\u003e1da17a5\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.78\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/e298b6480047c39f047a9805ce5a69654eda2c2b\"\u003e\u003ccode\u003ee298b64\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/48369eaf9203ac46d0621f2a6506cbfa369c3cff\"\u003e\u003ccode\u003e48369ea\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.77'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/8c30411a442a21b8bccc9eb2fde60ab76751ef35\"\u003e\u003ccode\u003e8c30411\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.77' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/4398c8e0aee88fe1c5aacb415683e75ccde1b3a3\"\u003e\u003ccode\u003e4398c8e\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.77\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.42.46...1.42.79\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asf-search` from 11.0.3 to 12.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/releases\"\u003easf-search's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev12.0.6\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.5...v12.0.6\"\u003ev12.0.6\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e module added as top level module\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_nisar_orbit_ephemeras()\u003c/code\u003e method returns dictionary with latest \u003ccode\u003eNISAR\u003c/code\u003e \u003ccode\u003ePOE\u003c/code\u003e, \u003ccode\u003eMOE\u003c/code\u003e, \u003ccode\u003eNOE\u003c/code\u003e, and \u003ccode\u003eFOE\u003c/code\u003e orbit ephemeras\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix track based searches when \u003ccode\u003eprocessingLevel\u003c/code\u003e specified on \u003ccode\u003eNISAR\u003c/code\u003e dataset searches\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.5\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.4...v12.0.5\"\u003ev12.0.5\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDIST-ALERT-S1 product type to OPERA dataset\n\u003cul\u003e\n\u003cli\u003eTileID searchable attribute\u003c/li\u003e\n\u003cli\u003eproductVersion attribute\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix edge-case with \u003ccode\u003eplatform\u003c/code\u003e \u0026amp; \u003ccode\u003eprocessingLevel\u003c/code\u003e concept-id aliasing\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.3...v12.0.4\"\u003ev12.0.4\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003eNISAR\u003c/code\u003e dataset/platform concept-ids\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.2...v12.0.3\"\u003ev12.0.3\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eariaVersion\u003c/code\u003e as a searchable attribute\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eorbitType\u003c/code\u003e to \u003ccode\u003eNISARProduct\u003c/code\u003e properties dictionary\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.1...v12.0.2\"\u003ev12.0.2\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eNISAR\u003c/code\u003e product type constants for ancillary/aux products, now useable with \u003ccode\u003esearch()\u003c/code\u003e methods. New constants:\n\u003ccode\u003eDCOP\u003c/code\u003e,\n\u003ccode\u003eOROST\u003c/code\u003e,\n\u003ccode\u003eSTUF\u003c/code\u003e,\n\u003ccode\u003eTEC\u003c/code\u003e,\n\u003ccode\u003eLRCLK_UTC\u003c/code\u003e,\n\u003ccode\u003eFOE\u003c/code\u003e,\n\u003ccode\u003eMOE\u003c/code\u003e,\n\u003ccode\u003eNOE\u003c/code\u003e,\n\u003ccode\u003ePOE\u003c/code\u003e,\n\u003ccode\u003eTSR_STATIC\u003c/code\u003e,\n\u003ccode\u003ePMI_STATIC\u003c/code\u003e,\n\u003ccode\u003eCORNER_REFL\u003c/code\u003e,\n\u003ccode\u003eLSAR_INT_CAL\u003c/code\u003e,\n\u003ccode\u003eLSAR_EXT_CAL\u003c/code\u003e,\n\u003ccode\u003eFT_WAVEFORM\u003c/code\u003e,\n\u003ccode\u003eFT_PARAM\u003c/code\u003e,\n\u003ccode\u003eANTPAT\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/blob/master/CHANGELOG.md\"\u003easf-search's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.5...v12.0.6\"\u003ev12.0.6\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e module added as top level module\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_nisar_orbit_ephemeras()\u003c/code\u003e method returns dictionary with latest \u003ccode\u003eNISAR\u003c/code\u003e \u003ccode\u003ePOE\u003c/code\u003e, \u003ccode\u003eMOE\u003c/code\u003e, \u003ccode\u003eNOE\u003c/code\u003e, and \u003ccode\u003eFOE\u003c/code\u003e orbit ephemeras\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix track based searches when \u003ccode\u003eprocessingLevel\u003c/code\u003e specified on \u003ccode\u003eNISAR\u003c/code\u003e dataset searches\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.4...v12.0.5\"\u003ev12.0.5\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDIST-ALERT-S1 product type to OPERA dataset\n\u003cul\u003e\n\u003cli\u003eTileID searchable attribute\u003c/li\u003e\n\u003cli\u003eproductVersion attribute\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix edge-case with \u003ccode\u003eplatform\u003c/code\u003e \u0026amp; \u003ccode\u003eprocessingLevel\u003c/code\u003e concept-id aliasing\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.3...v12.0.4\"\u003ev12.0.4\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003eNISAR\u003c/code\u003e dataset/platform concept-ids\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.2...v12.0.3\"\u003ev12.0.3\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eariaVersion\u003c/code\u003e as a searchable attribute\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eorbitType\u003c/code\u003e to \u003ccode\u003eNISARProduct\u003c/code\u003e properties dictionary\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.1...v12.0.2\"\u003ev12.0.2\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eNISAR\u003c/code\u003e product type constants for ancillary/aux products, now useable with \u003ccode\u003esearch()\u003c/code\u003e methods. New constants:\n\u003ccode\u003eDCOP\u003c/code\u003e,\n\u003ccode\u003eOROST\u003c/code\u003e,\n\u003ccode\u003eSTUF\u003c/code\u003e,\n\u003ccode\u003eTEC\u003c/code\u003e,\n\u003ccode\u003eLRCLK_UTC\u003c/code\u003e,\n\u003ccode\u003eFOE\u003c/code\u003e,\n\u003ccode\u003eMOE\u003c/code\u003e,\n\u003ccode\u003eNOE\u003c/code\u003e,\n\u003ccode\u003ePOE\u003c/code\u003e,\n\u003ccode\u003eTSR_STATIC\u003c/code\u003e,\n\u003ccode\u003ePMI_STATIC\u003c/code\u003e,\n\u003ccode\u003eCORNER_REFL\u003c/code\u003e,\n\u003ccode\u003eLSAR_INT_CAL\u003c/code\u003e,\n\u003ccode\u003eLSAR_EXT_CAL\u003c/code\u003e,\n\u003ccode\u003eFT_WAVEFORM\u003c/code\u003e,\n\u003ccode\u003eFT_PARAM\u003c/code\u003e,\n\u003ccode\u003eANTPAT\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/asfadmin/Discovery-asf_search/commit/0f8226f7d7f36fcca5bb28d111636d6e7abbbfc8\"\u003e\u003ccode\u003e0f8226f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/440\"\u003e#440\u003c/a\u003e from asfadmin/feat-nisar-oe-helper\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/47e6593b8ee5530077022f43a0600e7c421350db\"\u003e\u003ccode\u003e47e6593\u003c/code\u003e\u003c/a\u003e feat: adds utils module with get_nisar_orbit_ephemeras() method.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/66fadbb5bc968acec0f095b565dccc244879c79e\"\u003e\u003ccode\u003e66fadbb\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/439\"\u003e#439\u003c/a\u003e from asfadmin/bug-nisar-track-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/95cc06762259f72db17381748091aa54eb658c72\"\u003e\u003ccode\u003e95cc067\u003c/code\u003e\u003c/a\u003e chore: update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/1f601edbe40ce14756c3c98cb853e35e8e5761c1\"\u003e\u003ccode\u003e1f601ed\u003c/code\u003e\u003c/a\u003e bug: fix regression with frame search\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/bb7dfaaae1dc35449a6e7369f3e7726d2969fb03\"\u003e\u003ccode\u003ebb7dfaa\u003c/code\u003e\u003c/a\u003e chore: add todo comment for nsiar frame bug\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/6ec9957bbff797283f820fd3f90dcab6cd1b0335\"\u003e\u003ccode\u003e6ec9957\u003c/code\u003e\u003c/a\u003e fix: fix track not working when only specificying nisar dataset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/3efaa2862ac61c9bd1fcbfcea6bca5d472f90656\"\u003e\u003ccode\u003e3efaa28\u003c/code\u003e\u003c/a\u003e test: update authenticated NISAR test case\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/3e3d5777440aaff9303a247dbfa8c7f3b5c04078\"\u003e\u003ccode\u003e3e3d577\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/437\"\u003e#437\u003c/a\u003e from asfadmin/feat-opera-dist\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/9e0f3e86acfd67a0483f3e01e3de2909ac64f5b5\"\u003e\u003ccode\u003e9e0f3e8\u003c/code\u003e\u003c/a\u003e fix: add tileID to search.py\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v11.0.3...v12.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flask` from 3.1.2 to 3.1.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/flask/releases\"\u003eflask's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.1.3\u003c/h2\u003e\n\u003cp\u003eThis is the Flask 3.1.3 security fix release, which fixes a security issue but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.\u003c/p\u003e\n\u003cp\u003ePyPI: \u003ca href=\"https://pypi.org/project/Flask/3.1.3/\"\u003ehttps://pypi.org/project/Flask/3.1.3/\u003c/a\u003e\nChanges: \u003ca href=\"https://flask.palletsprojects.com/page/changes/#version-3-1-3\"\u003ehttps://flask.palletsprojects.com/page/changes/#version-3-1-3\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe session is marked as accessed for operations that only access the keys but not the values, such as \u003ccode\u003ein\u003c/code\u003e and \u003ccode\u003elen\u003c/code\u003e. \u003ca href=\"https://github.com/pallets/flask/security/advisories/GHSA-68rp-wp8r-4726\"\u003eGHSA-68rp-wp8r-4726\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/flask/blob/main/CHANGES.rst\"\u003eflask's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.1.3\u003c/h2\u003e\n\u003cp\u003eReleased 2026-02-18\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe session is marked as accessed for operations that only access the keys\nbut not the values, such as \u003ccode\u003ein\u003c/code\u003e and \u003ccode\u003elen\u003c/code\u003e. :ghsa:\u003ccode\u003e68rp-wp8r-4726\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/22d924701a6ae2e4cd01e9a15bbaf3946094af65\"\u003e\u003ccode\u003e22d9247\u003c/code\u003e\u003c/a\u003e release version 3.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/089cb86dd22bff589a4eafb7ab8e42dc357623b4\"\u003e\u003ccode\u003e089cb86\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/c17f379390731543eea33a570a47bd4ef76a54fa\"\u003e\u003ccode\u003ec17f379\u003c/code\u003e\u003c/a\u003e request context tracks session access\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/27be9338405382445a7cb01151e084559b98d602\"\u003e\u003ccode\u003e27be933\u003c/code\u003e\u003c/a\u003e start version 3.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/4e652d3f68b90d50aa2301d3b7e68c3fafd9251d\"\u003e\u003ccode\u003e4e652d3\u003c/code\u003e\u003c/a\u003e Abort if the instance folder cannot be created (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5903\"\u003e#5903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/3d03098a97ddc6a908aa4a50c2ef7381f8297d0a\"\u003e\u003ccode\u003e3d03098\u003c/code\u003e\u003c/a\u003e Abort if the instance folder cannot be created\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/407eb76b27884848383a37c7274654f0271e4bc4\"\u003e\u003ccode\u003e407eb76\u003c/code\u003e\u003c/a\u003e document using gevent for async (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/ac5664d2281533eacafd64f5cc7d5edcdaccab60\"\u003e\u003ccode\u003eac5664d\u003c/code\u003e\u003c/a\u003e document using gevent for async\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/4f79d5b59a56bc4356a97f2e81a35f98cb18d7b3\"\u003e\u003ccode\u003e4f79d5b\u003c/code\u003e\u003c/a\u003e Increase required flit_core version to 3.11 (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5865\"\u003e#5865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/fe3b215d3ade4db68262dae1a3cdc464a1fc524f\"\u003e\u003ccode\u003efe3b215\u003c/code\u003e\u003c/a\u003e Increase required flit_core version to 3.11\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets/flask/compare/3.1.2...3.1.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `openapi-core` from 0.22.0 to 0.23.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python-openapi/openapi-core/releases\"\u003eopenapi-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.23.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd OpenAPI 3.2 support and move V3 aliases to V32 \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1121\"\u003e#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd opt-in strict mode for omitted additionalProperties \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1124\"\u003e#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd explicit Falcon WSGI/ASGI middleware with dual-mode compatibility \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1122\"\u003e#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd structured details for validation errors \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1129\"\u003e#1129\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDialect-aware schema validators factory \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1135\"\u003e#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport parameter casting in composite schemas \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1136\"\u003e#1136\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken contributing guidelines link \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1098\"\u003e#1098\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix swapped operation/path order in request-parameters flows \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1120\"\u003e#1120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix deprecation warnings for omitted params and headers \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1125\"\u003e#1125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInclude root cause in request body validation errors \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1128\"\u003e#1128\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eUpgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDjango 6 support \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1103\"\u003e#1103\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade jsonschema-path 0.4 openapi-schema-validator 0.7 and openapi-spec-validator 0.8 \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1105\"\u003e#1105\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBackward incompatibilities\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.9 support dropped \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1091\"\u003e#1091\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eV3 aliases point to V32 \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1121\"\u003e#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove deprecated Spec \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1002\"\u003e#1002\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.23.0b1\u003c/h2\u003e\n\u003ch2\u003eUpgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade jsonschema-path 0.4.0b8 and openapi-spec-validator 0.8.0b3 \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1002\"\u003e#1002\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken contributing guidelines link \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1098\"\u003e#1098\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBackward incompatibilities\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.9 support dropped \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1091\"\u003e#1091\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/520650b97d9fa02f15edeee4cc3f13a91980de68\"\u003e\u003ccode\u003e520650b\u003c/code\u003e\u003c/a\u003e Version 0.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/beec2f2a5ef5cffe1a020095d5e24e79f4c809ad\"\u003e\u003ccode\u003ebeec2f2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1138\"\u003e#1138\u003c/a\u003e from python-openapi/dependabot/pip/openapi-spec-vali...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/b6be01025df31aa93cf19c8e9aa6c833aca254b5\"\u003e\u003ccode\u003eb6be010\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1137\"\u003e#1137\u003c/a\u003e from python-openapi/dependabot/pip/markdown-3.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/408242af08ff378b7f32bde7cf5a3aaf1c9b7295\"\u003e\u003ccode\u003e408242a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1139\"\u003e#1139\u003c/a\u003e from python-openapi/dependabot/pip/mkdocs-material-9...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/9bcbf2fd11e6d759ae28b735b066aaa4f611ba41\"\u003e\u003ccode\u003e9bcbf2f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1140\"\u003e#1140\u003c/a\u003e from python-openapi/dependabot/pip/pytest-9.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/2cfefe40310e0a636bd54a2bae65e35582dc55b2\"\u003e\u003ccode\u003e2cfefe4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1141\"\u003e#1141\u003c/a\u003e from python-openapi/dependabot/pip/tornado-6.5.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/ca92806f3fc5e6976aac6b504c7e480b1937f59b\"\u003e\u003ccode\u003eca92806\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1136\"\u003e#1136\u003c/a\u003e from python-openapi/fix/composite-schema-casting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/4a57f278f902634e4dd8913c1f94ff7ed771cca9\"\u003e\u003ccode\u003e4a57f27\u003c/code\u003e\u003c/a\u003e Bump tornado from 6.5.4 to 6.5.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/81ff1c6e139aa61c911be6adabd1c8144143284d\"\u003e\u003ccode\u003e81ff1c6\u003c/code\u003e\u003c/a\u003e Bump pytest from 8.4.2 to 9.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/480a3622bdfbc85d899873fed0a991b1ff9c73cf\"\u003e\u003ccode\u003e480a362\u003c/code\u003e\u003c/a\u003e Bump mkdocs-material from 9.7.3 to 9.7.4\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python-openapi/openapi-core/compare/0.22.0...0.23.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyjwt` from 2.12.0 to 2.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jpadilla/pyjwt/releases\"\u003epyjwt's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.12.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd typing_extensions dependency for Python \u0026lt; 3.11 by \u003ca href=\"https://github.com/jpadilla\"\u003e\u003ccode\u003e@​jpadilla\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jpadilla/pyjwt/pull/1151\"\u003ejpadilla/pyjwt#1151\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1\"\u003ehttps://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jpadilla/pyjwt/blob/master/CHANGELOG.rst\"\u003epyjwt's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003ev2.12.1 \u0026lt;https://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1\u0026gt;\u003c/code\u003e__\u003c/h2\u003e\n\u003cp\u003eFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Add missing ``typing_extensions`` dependency for Python \u0026lt; 3.11 in `[#1150](https://github.com/jpadilla/pyjwt/issues/1150) \u0026lt;https://github.com/jpadilla/pyjwt/issues/1150\u0026gt;`__\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jpadilla/pyjwt/commit/a4e1a3d1218b01c5806420b8f16d9308ac4adc30\"\u003e\u003ccode\u003ea4e1a3d\u003c/code\u003e\u003c/a\u003e Add typing_extensions dependency for Python \u0026lt; 3.11 (\u003ca href=\"https://redirect.github.com/jpadilla/pyjwt/issues/1151\"\u003e#1151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.33.0 to 2.33.1\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.33.1\u003c/h2\u003e\n\u003ch2\u003e2.33.1 (2026-03-30)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed test cleanup for CVE-2026-25645 to avoid leaving unnecessary\nfiles in the tmp directory. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed Content-Type header parsing for malformed values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved error consistency for malformed header values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\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/ferdnyc\"\u003e\u003ccode\u003e@​ferdnyc\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7277\"\u003epsf/requests#7277\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#2331-2026-03-30\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2331-2026-03-30\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/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.33.1 (2026-03-30)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed test cleanup for CVE-2026-25645 to avoid leaving unnecessary\nfiles in the tmp directory. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed Content-Type header parsing for malformed values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved error consistency for malformed header values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\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/psf/requests/commit/111d2b77790bf49943c0dfa09b365371c24aec7e\"\u003e\u003ccode\u003e111d2b7\u003c/code\u003e\u003c/a\u003e v2.33.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/f0198e6dfc431a2293dc16e1b1e8fcddc910a7f3\"\u003e\u003ccode\u003ef0198e6\u003c/code\u003e\u003c/a\u003e Fix malformed value parsing for Content-Type (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/bc7dd0fc4d56e808bcdd85ac2d797b3107c89259\"\u003e\u003ccode\u003ebc7dd0f\u003c/code\u003e\u003c/a\u003e Fix cosmetic header validity parsing regex (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4443b1a847b190010c2972a658924b98b5db6360\"\u003e\u003ccode\u003e4443b1a\u003c/code\u003e\u003c/a\u003e Fix unintended test extra (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7306\"\u003e#7306\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/389eea58dfb2f2ee096421a812e3af29c0298951\"\u003e\u003ccode\u003e389eea5\u003c/code\u003e\u003c/a\u003e Cleanup extracted file after extract_zipped_path test (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7407309c8a8a73aa2f4337184025d440bbedab7a\"\u003e\u003ccode\u003e7407309\u003c/code\u003e\u003c/a\u003e Packaging: DRY out extras definition (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7277\"\u003e#7277\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/psf/requests/compare/v2.33.0...v2.33.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `moto` from 5.1.21 to 5.1.22\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getmoto/moto/blob/master/CHANGELOG.md\"\u003emoto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.1.22\u003c/h2\u003e\n\u003cp\u003eDocker Digest for 5.1.22: \u003cem\u003esha256:1e3802c95726373544967b428201c548f0247c15b00db2d96a5ba0a77d8643b8\u003c/em\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew Methods:\n    * APIGateway:\n        * delete_model()\n\u003cpre\u003e\u003ccode\u003e* Athena:\n    * tag_resource()\n    * untag_resource()\n\n* Pipes:\n    * list_tags_for_resource()\n\n* OSIS:\n    * delete_resource_policy()\n    * get_resource_policy()\n    * put_resource_policy()\n\n* RDS:\n    * copy_db_cluster_parameter_group()\n\n* STS:\n    * get_access_key_info()\n\n* Transfer:\n    * list_servers()\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eMiscellaneous:\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::CloudWatch::Dashboard resources\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::KMS::Alias resources\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::SSM::Document resources\u003cbr /\u003e\n* EC2: create_fleet() now supports the parameters DryRun and LaunchTemplateConfigs.Overrides\u003cbr /\u003e\n* EC2: describe_network_interfaces() now supports the 'attachment.attachment-id'-filter\u003cbr /\u003e\n* EC2: Instances created from a LaunchTemplate now have the 'aws:ec2launchtemplate:id' and 'aws:ec2launchtemplate:version' tags\u003cbr /\u003e\n* RDS: create_db_cluster_parameter_group() now validates the provided group name/description/familiy\u003cbr /\u003e\n* RDS: delete_db_cluster_parameter_group() now validates that the provided group exists\u003cbr /\u003e\n* S3: delete_object() now supports IfMatch\u003cbr /\u003e\n* SecretsManager: create-secret() now throw ResourceExistsException for duplicate requests with different token (broken since 5.1.11)\u003cbr /\u003e\n* SQS: send_message() now returns the SequenceNumber-attribute\u003cbr /\u003e\n* VPCLattice: list_access_log_subscriptions() now also supports arns as resourceIdentifiers\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\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/getmoto/moto/commit/28d5ca88d9df9ce3e94e2e8b1f1c584646339e61\"\u003e\u003ccode\u003e28d5ca8\u003c/code\u003e\u003c/a\u003e Pre-Release: Up Version Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/f58dc186374dcf3cd1282f4a5998fedfa2b658a9\"\u003e\u003ccode\u003ef58dc18\u003c/code\u003e\u003c/a\u003e Prep release 5.1.22 (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/84cbb40725122bf252b766a0f601358bedcad6d1\"\u003e\u003ccode\u003e84cbb40\u003c/code\u003e\u003c/a\u003e chore: update SSM default parameters (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9828\"\u003e#9828\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/2f32dc1e3d25998340e1e59fc1145b3f1afc4b55\"\u003e\u003ccode\u003e2f32dc1\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9827\"\u003e#9827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/2a1c7ca7259747d1792dfa055b8433d313af581e\"\u003e\u003ccode\u003e2a1c7ca\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Offerings (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9826\"\u003e#9826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/e063c5a0e91c8afb49e2ccde47ff07c9448db09c\"\u003e\u003ccode\u003ee063c5a\u003c/code\u003e\u003c/a\u003e chore: update EMR Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/681b47aab458d90a8deb4ddbe86ef26695526218\"\u003e\u003ccode\u003e681b47a\u003c/code\u003e\u003c/a\u003e API Gateway: implement DeleteModel operation (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9823\"\u003e#9823\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/d652e4ad38ab382e32ab61cf2b319d033cfb6f4a\"\u003e\u003ccode\u003ed652e4a\u003c/code\u003e\u003c/a\u003e STS: implement GetAccessKeyInfo operation (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/40a65202b922fd78c4f4724f34f03cdc1172377d\"\u003e\u003ccode\u003e40a6520\u003c/code\u003e\u003c/a\u003e Implement Athena \u003ccode\u003eTagResource\u003c/code\u003e and \u003ccode\u003eUntagResource\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9796\"\u003e#9796\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/dc425e8b3d56b7ad84bf9d2820ae89e72d10a4a9\"\u003e\u003ccode\u003edc425e8\u003c/code\u003e\u003c/a\u003e Modernize Java tests (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9817\"\u003e#9817\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getmoto/moto/compare/5.1.21...5.1.22\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `responses` from 0.25.8 to 0.26.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/responses/releases\"\u003eresponses's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.26.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWhen using \u003ccode\u003eassert_all_requests_are_fired=True\u003c/code\u003e, assertions about\nunfired requests are now raised even when an exception occurs in the context manager or\ndecorated function. Previously, these assertions were suppressed when exceptions occurred.\nThis new behavior provides valuable debugging context about which mocked requests were\nor weren't called.\u003c/li\u003e\n\u003cli\u003eConsider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/responses/blob/master/CHANGES\"\u003eresponses's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.26.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWhen using \u003ccode\u003eassert_all_requests_are_fired=True\u003c/code\u003e, assertions about\nunfired requests are now raised even when an exception occurs in the context manager or\ndecorated function. Previously, these assertions were suppressed when exceptions occurred.\nThis new behavior provides valuable debugging context about which mocked requests were\nor weren't called.\u003c/li\u003e\n\u003cli\u003eConsider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/94913d0580377591350e69732df72f946d77b8c5\"\u003e\u003ccode\u003e94913d0\u003c/code\u003e\u003c/a\u003e release: 0.26.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/051b79e7fc9f5209fd351ee20288640a8fcd2265\"\u003e\u003ccode\u003e051b79e\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eassert_all_requests_are_fired\u003c/code\u003e always assert on exception (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/782\"\u003e#782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/0905cb8bd56b78f4d735d6db28ee4f12386ba4e8\"\u003e\u003ccode\u003e0905cb8\u003c/code\u003e\u003c/a\u003e Fix query_param_matcher not matching empty query parameter values (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/787\"\u003e#787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/e0c6faab419f902d6b646a902b7049196d64f68c\"\u003e\u003ccode\u003ee0c6faa\u003c/code\u003e\u003c/a\u003e ci(release): Switch from action-prepare-release to Craft (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/785\"\u003e#785\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/1be3a737b70a34d7f6a68a6f385c88af1f3e2df8\"\u003e\u003ccode\u003e1be3a73\u003c/code\u003e\u003c/a\u003e fix: Consider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/784\"\u003e#784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/c6730fbc87bf397c7fc798ec7573e6089ba877b6\"\u003e\u003ccode\u003ec6730fb\u003c/code\u003e\u003c/a\u003e Merge branch 'release/0.25.8'\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/getsentry/responses/compare/0.25.8...0.26.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.15.0 to 0.15.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.8\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-26.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003eunnecessary-if\u003c/code\u003e (\u003ccode\u003eRUF050\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24114\"\u003e#24114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003euseless-finally\u003c/code\u003e (\u003ccode\u003eRUF072\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24165\"\u003e#24165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003ef-string-percent-format\u003c/code\u003e (\u003ccode\u003eRUF073\u003c/code\u003e): warn when using \u003ccode\u003e%\u003c/code\u003e operator on an f-string (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24162\"\u003e#24162\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Recognize \u003ccode\u003efrozendict\u003c/code\u003e as a builtin for Python 3.15+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24100\"\u003e#24100\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] Use fully-qualified \u003ccode\u003eanyio.lowlevel\u003c/code\u003e import in autofix (\u003ccode\u003eASYNC115\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24166\"\u003e#24166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Check tuple arguments for partial paths in \u003ccode\u003eS607\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24080\"\u003e#24080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Skip \u003ccode\u003eundefined-name\u003c/code\u003e (\u003ccode\u003eF821\u003c/code\u003e) for conditionally deleted variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24088\"\u003e#24088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eE501\u003c/code\u003e/\u003ccode\u003eW505\u003c/code\u003e/formatter: Exclude nested pragma comments from line width calculation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24071\"\u003e#24071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e%foo?\u003c/code\u003e parsing in IPython assignment expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24152\"\u003e#24152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eanalyze graph\u003c/code\u003e: resolve string imports that reference attributes, not just modules (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24058\"\u003e#24058\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eeradicate\u003c/code\u003e] ignore \u003ccode\u003ety: ignore\u003c/code\u003e comments in \u003ccode\u003eERA001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24192\"\u003e#24192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Treat \u003ccode\u003esys.executable\u003c/code\u003e as trusted input in \u003ccode\u003eS603\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24106\"\u003e#24106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Recognize \u003ccode\u003eSelf\u003c/code\u003e annotation and \u003ccode\u003eself\u003c/code\u003e assignment in \u003ccode\u003eSLF001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24144\"\u003e#24144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] \u003ccode\u003eF507\u003c/code\u003e: Fix false negative for non-tuple RHS in \u003ccode\u003e%\u003c/code\u003e-formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24142\"\u003e#24142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Parenthesize generator arguments in \u003ccode\u003eFURB142\u003c/code\u003e fixer (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24200\"\u003e#24200\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up diagnostic rendering (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24146\"\u003e#24146\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWarn when Markdown files are skipped due to preview being disabled (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24150\"\u003e#24150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eClarify \u003ccode\u003eextend-ignore\u003c/code\u003e and \u003ccode\u003eextend-select\u003c/code\u003e settings documentation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24064\"\u003e#24064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMention AI policy in PR template (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24198\"\u003e#24198\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse trusted publishing for NPM packages (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24171\"\u003e#24171\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/bitloi\"\u003e\u003ccode\u003e@​bitloi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Sim-hu\"\u003e\u003ccode\u003e@​Sim-hu\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.15.8\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-26.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003eunnecessary-if\u003c/code\u003e (\u003ccode\u003eRUF050\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24114\"\u003e#24114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003euseless-finally\u003c/code\u003e (\u003ccode\u003eRUF072\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24165\"\u003e#24165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003ef-string-percent-format\u003c/code\u003e (\u003ccode\u003eRUF073\u003c/code\u003e): warn when using \u003ccode\u003e%\u003c/code\u003e operator on an f-string (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24162\"\u003e#24162\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Recognize \u003ccode\u003efrozendict\u003c/code\u003e as a builtin for Python 3.15+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24100\"\u003e#24100\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] Use fully-qualified \u003ccode\u003eanyio.lowlevel\u003c/code\u003e import in autofix (\u003ccode\u003eASYNC115\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24166\"\u003e#24166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Check tuple arguments for partial paths in \u003ccode\u003eS607\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24080\"\u003e#24080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Skip \u003ccode\u003eundefined-name\u003c/code\u003e (\u003ccode\u003eF821\u003c/code\u003e) for conditionally deleted variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24088\"\u003e#24088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eE501\u003c/code\u003e/\u003ccode\u003eW505\u003c/code\u003e/formatter: Exclude nested pragma comments from line width calculation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24071\"\u003e#24071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e%foo?\u003c/code\u003e parsing in IPython assignment expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24152\"\u003e#24152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eanalyze graph\u003c/code\u003e: resolve string imports that reference attributes, not just modules (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24058\"\u003e#24058\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eeradicate\u003c/code\u003e] ignore \u003ccode\u003ety: ignore\u003c/code\u003e comments in \u003ccode\u003eERA001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24192\"\u003e#24192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Treat \u003ccode\u003esys.executable\u003c/code\u003e as trusted input in \u003ccode\u003eS603\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24106\"\u003e#24106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Recognize \u003ccode\u003eSelf\u003c/code\u003e annotation and \u003ccode\u003eself\u003c/code\u003e assignment in \u003ccode\u003eSLF001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24144\"\u003e#24144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] \u003ccode\u003eF507\u003c/code\u003e: Fix false negative for non-tuple RHS in \u003ccode\u003e%\u003c/code\u003e-formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24142\"\u003e#24142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Parenthesize generator arguments in \u003ccode\u003eFURB142\u003c/code\u003e fixer (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24200\"\u003e#24200\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up diagnostic rendering (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24146\"\u003e#24146\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWarn when Markdown files are skipped due to preview being disabled (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24150\"\u003e#24150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eClarify \u003ccode\u003eextend-ignore\u003c/code\u003e and \u003ccode\u003eextend-select\u003c/code\u003e settings documentation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24064\"\u003e#24064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMention AI policy in PR template (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24198\"\u003e#24198\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse trusted publishing for NPM packages (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24171\"\u003e#24171\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/bitloi\"\u003e\u003ccode\u003e@​bitloi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Sim-hu\"\u003e\u003ccode\u003e@​Sim-hu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\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/c2a8815842f9dc5d24ec19385eae0f1a7188b0d9\"\u003e\u003ccode\u003ec2a8815\u003c/code\u003e\u003c/a\u003e Release 0.15.8 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24217\"\u003e#24217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d444d52e2b9cc8bc9a078c2bd4ff6ff993290209\"\u003e\u003ccode\u003ed444d52\u003c/code\u003e\u003c/a\u003e [ty] Infer lambda expressions with \u003ccode\u003eCallable\u003c/code\u003e type context (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/22633\"\u003e#22633\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/9622285ed0081fc688149f6efca87f127d9b18dd\"\u003e\u003ccode\u003e9622285\u003c/code\u003e\u003c/a\u003e [ty] Autocomplete arguments if in arguments node (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24167\"\u003e#24167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d81266252aaf0820346d55edbed79c4f25ba13d2\"\u003e\u003ccode\u003ed812662\u003c/code\u003e\u003c/a\u003e Use the \u003ccode\u003erelease\u003c/code\u003e environment in \u003ccode\u003epublish-docs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24214\"\u003e#24214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/eda2355832f7a9c58aef6febd3e061dc9c87509a\"\u003e\u003ccode\u003eeda2355\u003c/code\u003e\u003c/a\u003e [ty] Show \u003ccode\u003eFinal\u003c/code\u003e source in final assignment diagnostic (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24194\"\u003e#24194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/929eb5238c82bfadad4549ff526f02efc0163dd0\"\u003e\u003ccode\u003e929eb52\u003c/code\u003e\u003c/a\u003e [ty] Enforce Final attribute assignment rules for annotated and augmented wri...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/34998be22ec3a77d398bbd55234ef8740f768329\"\u003e\u003ccode\u003e34998be\u003c/code\u003e\u003c/a\u003e [ty] Fix typo in comment (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24211\"\u003e#24211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/560aca0b2828ee2ff1b4bcc5c5ef1ef4ced229d2\"\u003e\u003ccode\u003e560aca0\u003c/code\u003e\u003c/a\u003e [ty] Minor simplifications to some benchmark code (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24209\"\u003e#24209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/683bae512d03d3727a7bcdbc5a0170dafa049583\"\u003e\u003ccode\u003e683bae5\u003c/code\u003e\u003c/a\u003e [ty] Track non-terminal-call constraints in global scope (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23245\"\u003e#23245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/4704c2a4ff3dde2fd29324346720e9516b4fe387\"\u003e\u003ccode\u003e4704c2a\u003c/code\u003e\u003c/a\u003e [ty] Remove unnecessary intermediate collection in `StaticClassLiteral::field...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.15.0...0.15.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools` from 82.0.0 to 82.0.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools/blob/main/NEWS.rst\"\u003esetuptools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ev82.0.1\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the loading of \u003ccode\u003elauncher manifest.xml\u003c/code\u003e file. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5047\"\u003e#5047\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplaced deprecated \u003ccode\u003ejson.__version__\u003c/code\u003e with fixture in tests. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5186\"\u003e#5186\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd advice about how to improve predictability when installing sdists. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5168\"\u003e#5168\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4941\"\u003e#4941\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\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/pypa/setuptools/commit/5a13876673a41e3cd21d4d6e587f53d0fb4fd8e5\"\u003e\u003ccode\u003e5a13876\u003c/code\u003e\u003c/a\u003e Bump version: 82.0.0 → 82.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/51ab8f183f1c4112675d8d6ec6b004406d518ee8\"\u003e\u003ccode\u003e51ab8f1\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5194\"\u003e#5194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/f9c37b20bb0ed11203f676f9683452a4c3ace6f6\"\u003e\u003ccode\u003ef9c37b2\u003c/code\u003e\u003c/a\u003e Docs/CI: Fix intersphinx references (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5195\"\u003e#5195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/8173db2a4fc0f6cb28926b3dba59116b79f435c8\"\u003e\u003ccode\u003e8173db2\u003c/code\u003e\u003c/a\u003e Docs: Fix intersphinx references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/09bafbc74923f2a3591b5b098be75d6af6ca5141\"\u003e\u003ccode\u003e09bafbc\u003c/code\u003e\u003c/a\u003e Fix past tense on newsfragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/461ea56c8e629819a23920f44d9298d4f041abde\"\u003e\u003ccode\u003e461ea56\u003c/code\u003e\u003c/a\u003e Add news fragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/c4ffe535b58235ff9f9ebe90d24a2cffb57e70ae\"\u003e\u003ccode\u003ec4ffe53\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/749258b1a96c7accc05ea7d842fb19fc378866fe\"\u003e\u003ccode\u003e749258b\u003c/code\u003e\u003c/a\u003e Cleanup \u003ccode\u003epkg_resources\u003c/code\u003e dependencies and configuration (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/2019c16701667db1010c62ec11c6ef78c2e58206\"\u003e\u003ccode\u003e2019c16\u003c/code\u003e\u003c/a\u003e Parse \u003ccode\u003eext-module.define-macros\u003c/code\u003e from \u003ccode\u003epyproject.toml\u003c/code\u003e as list of tuples (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/b809c86a37d97fcce290d5f51d4c293ab40bc685\"\u003e\u003ccode\u003eb809c86\u003c/code\u003e\u003c/a\u003e Sync setuptools schema with validate-pyproject (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools/compare/v82.0.0...v82.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools-scm` from 9.2.2 to 10.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAnchor \u003ccode\u003eget_version\u003c/code\u003e in \u003ccode\u003esetup.py\u003c/code\u003e with \u003ccode\u003erelative_to\u003c/code\u003e and \u003ccode\u003efallback_root\u003c/code\u003e so SCM fallbacks (e.g. \u003ccode\u003ePKG-INFO\u003c/code\u003e) do not resolve against the wrong directory when the build cwd is the workspace or repo root. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1302\"\u003e#1302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnter \u003ccode\u003eGlobalOverrides\u003c/code\u003e for \u003ccode\u003eSETUPTOOLS_SCM\u003c/code\u003e when using \u003ccode\u003esetuptools_scm.get_version\u003c/code\u003e / \u003ccode\u003e_get_version\u003c/code\u003e, avoiding implicit context warnings for direct API callers. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1314\"\u003e#1314\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade pre-commit hooks (Ruff, mypy, codespell), align locked Ruff with hooks, and add Ruff per-file configuration for setuptools_scm re-export modules. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1311\"\u003e#1311\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove monorepo-only \u003ccode\u003e../vcs-versioning/src\u003c/code\u003e from \u003ccode\u003ebuild-system.backend-path\u003c/code\u003e so sdists install under PEP 517 (paths must stay inside the source tree). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1306\"\u003e#1306\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003egriffecli\u003c/code\u003e to test dependencies so the API stability check keeps working after the Griffe CLI was split into a separate package. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1310\"\u003e#1310\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix version file not generated for editable installs. Version files are now written to the source tree by default during inference (restoring pre-10.x behavior), and also registered as \u003ccode\u003ebuild_py\u003c/code\u003e outputs so strict editable installs include them in the persistent auxiliary directory. Set \u003ccode\u003eSETUPTOOLS_SCM_WRITE_TO_SOURCE=0\u003c/code\u003e to disable source-tree writing (e.g., for read-only source directories). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1298\"\u003e#1298\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.1\u003c/h2\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSimplify release tag creation to use a single \u003ccode\u003ecreateRelease\u003c/code\u003e API call instead of separate \u003ccode\u003ecreateTag\u003c/code\u003e/\u003ccode\u003ecreateRef\u003c/code\u003e/\u003ccode\u003ecreateRelease\u003c/code\u003e calls, avoiding dangling tag objects on partial failures. (\u003ca href=\"https://github.com/pypa/setuptools-scm/issues/release-pipeline\"\u003e#release-pipeline\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.0\u003c/h2\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 and 3.9 support. Minimum Python version is now 3.10. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esetuptools-scm now depends on vcs-versioning for core version inference logic. This enables other build backends to use the same version inference without setuptools dependency. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eVersion files (\u003ccode\u003ewrite_to\u003c/code\u003e and \u003ccode\u003eversion_file\u003c/code\u003e) are now written to the build directory\nduring \u003ccode\u003ebuild_py\u003c/code\u003e instead of the source tree during version inference.\nThis enables installing packages from read-only source directories (e.g., Bazel builds).\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/v9.2.2...setuptools-scm-v10.0.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `openapi-spec-validator` from 0.7.2 to 0.8.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/releases\"\u003eopenapi-spec-validator's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.8.4\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eJsonschema-rs backend \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/478\"\u003e#478\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.3\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUse resolved cache feature of jsonschema-path \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/479\"\u003e#479\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.2\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eOpenAPI 3.2 support \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/472\"\u003e#472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd OAS 3.1 jsonSchemaDialect-aware schema meta-validation \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/471\"\u003e#471\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.1\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI version option \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/466\"\u003e#466\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSplit CLI error controls into validation and subschema modes \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/469\"\u003e#469\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix malformed schema traversal to report validation errors instead of internal exceptions \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/467\"\u003e#467\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eValidate declared path parameters against path template \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/470\"\u003e#470\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDeprecations\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecates \u003ccode\u003e--error\u003c/code\u003e/\u003ccode\u003e--errors\u003c/code\u003e CLI options \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/469\"\u003e#469\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.0\u003c/h2\u003e\n\u003ch2\u003eUpgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eJsonschema-path 0.4 and openapi-schema-validator 0.7 upgrades \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/459\"\u003e#459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePython 3.13 and 3.14 support \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/392\"\u003e#392\u003c/a\u003e \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/457\"\u003e#457\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate openapi-schema-validator version constraint \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/439\"\u003e#439\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBackward incompatibilities\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 and 3.9 drop \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/392\"\u003e#392\u003c/a\u003e \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/456\"\u003e#456\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.0b3\u003c/h2\u003e\n\u003ch2\u003eUpgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eJsonschema-path 0.4.0b8 upgrade \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/455\"\u003e#455\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/python-openapi/openapi-spec-validator/commit/cca400fbe29ebaea5c3b3e7db04548db260690ea\"\u003e\u003ccode\u003ecca400f\u003c/code\u003e\u003c/a\u003e Version 0.8.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/33585eab47df9c3d6bd18479463da15fb0007f36\"\u003e\u003ccode\u003e33585ea\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/478\"\u003e#478\u003c/a\u003e from python-openapi/poc/rust-backend\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/a10dfe6ce166865eb36c75b2a473d470cc5bb0e1\"\u003e\u003ccode\u003ea10dfe6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/480\"\u003e#480\u003c/a\u003e from python-openapi/copilot/sub-pr-478\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/da9c9cbce67e12764db36886a850eb5a9017dc51\"\u003e\u003ccode\u003eda9c9cb\u003c/code\u003e\u003c/a\u003e Address review feedback: fix docstring, trailing whitespace, f-string, instal...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/629f4e2bdfe60ce54c51f8e8cdce54f6f83f1da7\"\u003e\u003ccode\u003e629f4e2\u003c/code\u003e\u003c/a\u003e Initial plan\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/df9ba9b77384f1102e98033219feddb64b4e85fa\"\u003e\u003ccode\u003edf9ba9b\u003c/code\u003e\u003c/a\u003e Rust backend\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/a093f9c4783792da2b181c03e718844b57cdb19c\"\u003e\u003ccode\u003ea093f9c\u003c/code\u003e\u003c/a\u003e Version 0.8.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/0d757b58adc86d3b939b048aa4263ddea6462fd3\"\u003e\u003ccode\u003e0d757b5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/479\"\u003e#479\u003c/a\u003e from python-openapi/feature/upgrade-jsonschema-path-0...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/0bbd76166fcd1833dcbe63cf335a3da26fdc9015\"\u003e\u003ccode\u003e0bbd761\u003c/code\u003e\u003c/a\u003e Expose resolved cache\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/023da9563279a37bcedb5ffb6208f663e46a53cc\"\u003e\u003ccode\u003e023da95\u003c/code\u003e\u003c/a\u003e Upgrade jsonschema-path 0.4.3\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/compare/0.7.2...0.8.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cfn-lint` from 1.44.0 to 1.47.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/releases\"\u003ecfn-lint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v1.47.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ca href=\"https://github.com/aws-cloudformation/cfn-python-lint/blob/main/docs/rules.md#E3677\"\u003eE3063\u003c/a\u003e false positive when Code is a string (aws-cli pattern) by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4399\"\u003eaws-cloudformation/cfn-lint#4399\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCap resolve_value permutations to prevent exponential blowup by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4394\"\u003eaws-cloudformation/cfn-lint#4394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: maintenance guardduty policy by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4400\"\u003eaws-cloudformation/cfn-lint#4400\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eEngineVersion\u003c/code\u003e of \u003ccode\u003e8.0.0\u003c/code\u003e to DocDB Cluster by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4401\"\u003eaws-cloudformation/cfn-lint#4401\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport multi-attribute composite keys in DynamoDB GSI KeySchema by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4402\"\u003eaws-cloudformation/cfn-lint#4402\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow JSONata string expressions for Arguments in Step Functions by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4403\"\u003eaws-cloudformation/cfn-lint#4403\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-24\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4404\"\u003eaws-cloudformation/cfn-lint#4404\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/compare/v1.47.0...v1.47.1\"\u003ehttps://github.com/aws-cloudformation/cfn-lint/compare/v1.47.0...v1.47.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease v1.47.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove Python 3.9 support (EOL October 2025) by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4383\"\u003eaws-cloudformation/cfn-lint#4383\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add region filtering to --update-specs by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4382\"\u003eaws-cloudformation/cfn-lint#4382\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd unknown validation state for intrinsic functions in composite validators by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4384\"\u003eaws-cloudformation/cfn-lint#4384\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-10\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4381\"\u003eaws-cloudformation/cfn-lint#4381\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix/skip resolve unconstrained schema by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4388\"\u003eaws-cloudformation/cfn-lint#4388\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump setuptools from 82.0.0 to 82.0.1 in /requirements 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/aws-cloudformation/cfn-lint/pull/4385\"\u003eaws-cloudformation/cfn-lint#4385\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-13\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4386\"\u003eaws-cloudformation/cfn-lint#4386\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/compare/v1.46.0...v1.47.0\"\u003ehttps://github.com/aws-cloudformation/cfn-lint/compare/v1.46.0...v1.47.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease v1.46.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd rule \u003ca href=\"https://github.com/aws-cloudformation/cfn-python-lint/blob/main/docs/rules.md#E3063\"\u003eE3063\u003c/a\u003e to validate GuardDuty Detector property exclusivity by \u003ca href=\"https://github.com/JuanHPassos\"\u003e\u003ccode\u003e@​JuanHPassos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4364\"\u003eaws-cloudformation/cfn-lint#4364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-02\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4375\"\u003eaws-cloudformation/cfn-lint#4375\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/JuanHPassos\"\u003e\u003ccode\u003e@​JuanHPassos\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4364\"\u003eaws-cloudformation/cfn-lint#4364\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/compare/v1.45.0...v1.46.0\"\u003ehttps://github.com/aws-cloudformation/cfn-lint/compare/v1.45.0...v1.46.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease v1.45.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): bump setuptools from \u003ccode\u003e80.10.2\u003c/code\u003e to \u003ccode\u003e82.0.0\u003c/code\u003e in /requirements 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/aws-cloudformation/cfn-lint/pull/4366\"\u003eaws-cloudformation/cfn-lint#4366\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd rule \u003ca href=\"https://github.com/aws-cloudformation/cfn-python-lint/blob/main/docs/rules.md#E3685\"\u003eE3685\u003c/a\u003e to validate container image functions cannot use \u003ccode\u003eHandler\u003c/code\u003e, \u003ccode\u003eRuntime\u003c/code\u003e, or \u003ccode\u003eLayers\u003c/code\u003e by \u003ca href=\"https://github.com/chrisqm-dev\"\u003e\u003ccode\u003e@​chrisqm-dev\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4372\"\u003eaws-cloudformation/cfn-lint#4372\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd rule \u003ca href=\"https://github.com/aws-cloudformation/cfn-python-lint/blob/main/docs/rules.md#E3696\"\u003eE3696\u003c/a\u003e to validate \u003ccode\u003eLogLevel\u003c/code\u003e is not supported when \u003ccode\u003eLogFormat\u003c/code\u003e is set to \u003ccode\u003eText\u003c/code\u003e by \u003ca href=\"https://github.com/chrisqm-dev\"\u003e\u003ccode\u003e@​chrisqm-dev\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4372\"\u003eaws-cloudformation/cfn-lint#4372\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump pyinstaller from \u003ccode\u003e6.18.0\u003c/code\u003e to \u003ccode\u003e6.19.0\u003c/code\u003e in /requirements by \u003ca href=\"https://github.com/dependabot\"\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/ASFHyP3/hyp3/pull/3054","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ASFHyP3%2Fhyp3/issues/3054","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/3054/packages"}},{"old_version":"9.2.2","new_version":"10.0.5","update_type":"major","path":null,"pr_created_at":"2026-03-30T20:53:29.000Z","version_change":"9.2.2 → 10.0.5","issue":{"uuid":"4174018823","node_id":"PR_kwDOD385987OwSfx","number":3052,"state":"closed","title":"Bump the pip-deps group across 1 directory with 14 updates","user":"dependabot[bot]","labels":["major","bumpless"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-03-30T22:31:26.000Z","author_association":null,"state_reason":null,"created_at":"2026-03-30T20:53:29.000Z","updated_at":"2026-03-30T22:31:28.000Z","time_to_close":5877,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"pip-deps","update_count":14,"packages":[{"name":"boto3","old_version":"1.42.46","new_version":"1.42.79","repository_url":"https://github.com/boto/boto3"},{"name":"asf-search","old_version":"11.0.3","new_version":"12.0.6","repository_url":"https://github.com/asfadmin/Discovery-asf_search"},{"name":"flask","old_version":"3.1.2","new_version":"3.1.3","repository_url":"https://github.com/pallets/flask"},{"name":"openapi-core","old_version":"0.22.0","new_version":"0.23.0","repository_url":"https://github.com/python-openapi/openapi-core"},{"name":"pyjwt","old_version":"2.12.0","new_version":"2.12.1","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"requests","old_version":"2.32.5","new_version":"2.33.1","repository_url":"https://github.com/psf/requests"},{"name":"cryptography","old_version":"46.0.5","new_version":"46.0.6","repository_url":"https://github.com/pyca/cryptography"},{"name":"moto","old_version":"5.1.21","new_version":"5.1.22","repository_url":"https://github.com/getmoto/moto"},{"name":"responses","old_version":"0.25.8","new_version":"0.26.0","repository_url":"https://github.com/getsentry/responses"},{"name":"ruff","old_version":"0.15.0","new_version":"0.15.8","repository_url":"https://github.com/astral-sh/ruff"},{"name":"setuptools","old_version":"82.0.0","new_version":"82.0.1","repository_url":"https://github.com/pypa/setuptools"},{"name":"setuptools-scm","old_version":"9.2.2","new_version":"10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"},{"name":"openapi-spec-validator","old_version":"0.7.2","new_version":"0.8.4","repository_url":"https://github.com/python-openapi/openapi-spec-validator"},{"name":"cfn-lint","old_version":"1.44.0","new_version":"1.47.1","repository_url":"https://github.com/aws-cloudformation/cfn-lint"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-deps group with 14 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [boto3](https://github.com/boto/boto3) | `1.42.46` | `1.42.79` |\n| [asf-search](https://github.com/asfadmin/Discovery-asf_search) | `11.0.3` | `12.0.6` |\n| [flask](https://github.com/pallets/flask) | `3.1.2` | `3.1.3` |\n| [openapi-core](https://github.com/python-openapi/openapi-core) | `0.22.0` | `0.23.0` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.12.0` | `2.12.1` |\n| [requests](https://github.com/psf/requests) | `2.32.5` | `2.33.1` |\n| [cryptography](https://github.com/pyca/cryptography) | `46.0.5` | `46.0.6` |\n| [moto](https://github.com/getmoto/moto) | `5.1.21` | `5.1.22` |\n| [responses](https://github.com/getsentry/responses) | `0.25.8` | `0.26.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.0` | `0.15.8` |\n| [setuptools](https://github.com/pypa/setuptools) | `82.0.0` | `82.0.1` |\n| [setuptools-scm](https://github.com/pypa/setuptools-scm) | `9.2.2` | `10.0.5` |\n| [openapi-spec-validator](https://github.com/python-openapi/openapi-spec-validator) | `0.7.2` | `0.8.4` |\n| [cfn-lint](https://github.com/aws-cloudformation/cfn-lint) | `1.44.0` | `1.47.1` |\n\n\nUpdates `boto3` from 1.42.46 to 1.42.79\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/79b815be1d502ab09b61fa24f1f989688a34eab8\"\u003e\u003ccode\u003e79b815b\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.79'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b11c6f7427b3920c8a8e1e0c3d1da7bbcf350b6a\"\u003e\u003ccode\u003eb11c6f7\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.79\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/98fabce7eb69aefa313721c11293a7c1eef51bc6\"\u003e\u003ccode\u003e98fabce\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b5acf8b4da83625fe3a4bbc37f44d3563a90bedb\"\u003e\u003ccode\u003eb5acf8b\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.78'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/6b3713da80c9f7ca1477741de612c020e9403128\"\u003e\u003ccode\u003e6b3713d\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.78' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/1da17a5f5f168ca19917cb3b5c1389b1918c1a6e\"\u003e\u003ccode\u003e1da17a5\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.78\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/e298b6480047c39f047a9805ce5a69654eda2c2b\"\u003e\u003ccode\u003ee298b64\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/48369eaf9203ac46d0621f2a6506cbfa369c3cff\"\u003e\u003ccode\u003e48369ea\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.77'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/8c30411a442a21b8bccc9eb2fde60ab76751ef35\"\u003e\u003ccode\u003e8c30411\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.77' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/4398c8e0aee88fe1c5aacb415683e75ccde1b3a3\"\u003e\u003ccode\u003e4398c8e\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.77\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.42.46...1.42.79\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asf-search` from 11.0.3 to 12.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/releases\"\u003easf-search's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev12.0.6\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.5...v12.0.6\"\u003ev12.0.6\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e module added as top level module\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_nisar_orbit_ephemeras()\u003c/code\u003e method returns dictionary with latest \u003ccode\u003eNISAR\u003c/code\u003e \u003ccode\u003ePOE\u003c/code\u003e, \u003ccode\u003eMOE\u003c/code\u003e, \u003ccode\u003eNOE\u003c/code\u003e, and \u003ccode\u003eFOE\u003c/code\u003e orbit ephemeras\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix track based searches when \u003ccode\u003eprocessingLevel\u003c/code\u003e specified on \u003ccode\u003eNISAR\u003c/code\u003e dataset searches\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.5\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.4...v12.0.5\"\u003ev12.0.5\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDIST-ALERT-S1 product type to OPERA dataset\n\u003cul\u003e\n\u003cli\u003eTileID searchable attribute\u003c/li\u003e\n\u003cli\u003eproductVersion attribute\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix edge-case with \u003ccode\u003eplatform\u003c/code\u003e \u0026amp; \u003ccode\u003eprocessingLevel\u003c/code\u003e concept-id aliasing\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.3...v12.0.4\"\u003ev12.0.4\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003eNISAR\u003c/code\u003e dataset/platform concept-ids\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.2...v12.0.3\"\u003ev12.0.3\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eariaVersion\u003c/code\u003e as a searchable attribute\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eorbitType\u003c/code\u003e to \u003ccode\u003eNISARProduct\u003c/code\u003e properties dictionary\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.1...v12.0.2\"\u003ev12.0.2\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eNISAR\u003c/code\u003e product type constants for ancillary/aux products, now useable with \u003ccode\u003esearch()\u003c/code\u003e methods. New constants:\n\u003ccode\u003eDCOP\u003c/code\u003e,\n\u003ccode\u003eOROST\u003c/code\u003e,\n\u003ccode\u003eSTUF\u003c/code\u003e,\n\u003ccode\u003eTEC\u003c/code\u003e,\n\u003ccode\u003eLRCLK_UTC\u003c/code\u003e,\n\u003ccode\u003eFOE\u003c/code\u003e,\n\u003ccode\u003eMOE\u003c/code\u003e,\n\u003ccode\u003eNOE\u003c/code\u003e,\n\u003ccode\u003ePOE\u003c/code\u003e,\n\u003ccode\u003eTSR_STATIC\u003c/code\u003e,\n\u003ccode\u003ePMI_STATIC\u003c/code\u003e,\n\u003ccode\u003eCORNER_REFL\u003c/code\u003e,\n\u003ccode\u003eLSAR_INT_CAL\u003c/code\u003e,\n\u003ccode\u003eLSAR_EXT_CAL\u003c/code\u003e,\n\u003ccode\u003eFT_WAVEFORM\u003c/code\u003e,\n\u003ccode\u003eFT_PARAM\u003c/code\u003e,\n\u003ccode\u003eANTPAT\u003c/code\u003e,\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/blob/master/CHANGELOG.md\"\u003easf-search's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.5...v12.0.6\"\u003ev12.0.6\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e module added as top level module\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_nisar_orbit_ephemeras()\u003c/code\u003e method returns dictionary with latest \u003ccode\u003eNISAR\u003c/code\u003e \u003ccode\u003ePOE\u003c/code\u003e, \u003ccode\u003eMOE\u003c/code\u003e, \u003ccode\u003eNOE\u003c/code\u003e, and \u003ccode\u003eFOE\u003c/code\u003e orbit ephemeras\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix track based searches when \u003ccode\u003eprocessingLevel\u003c/code\u003e specified on \u003ccode\u003eNISAR\u003c/code\u003e dataset searches\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.4...v12.0.5\"\u003ev12.0.5\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDIST-ALERT-S1 product type to OPERA dataset\n\u003cul\u003e\n\u003cli\u003eTileID searchable attribute\u003c/li\u003e\n\u003cli\u003eproductVersion attribute\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix edge-case with \u003ccode\u003eplatform\u003c/code\u003e \u0026amp; \u003ccode\u003eprocessingLevel\u003c/code\u003e concept-id aliasing\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.3...v12.0.4\"\u003ev12.0.4\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003eNISAR\u003c/code\u003e dataset/platform concept-ids\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.2...v12.0.3\"\u003ev12.0.3\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eariaVersion\u003c/code\u003e as a searchable attribute\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eorbitType\u003c/code\u003e to \u003ccode\u003eNISARProduct\u003c/code\u003e properties dictionary\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.1...v12.0.2\"\u003ev12.0.2\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eNISAR\u003c/code\u003e product type constants for ancillary/aux products, now useable with \u003ccode\u003esearch()\u003c/code\u003e methods. New constants:\n\u003ccode\u003eDCOP\u003c/code\u003e,\n\u003ccode\u003eOROST\u003c/code\u003e,\n\u003ccode\u003eSTUF\u003c/code\u003e,\n\u003ccode\u003eTEC\u003c/code\u003e,\n\u003ccode\u003eLRCLK_UTC\u003c/code\u003e,\n\u003ccode\u003eFOE\u003c/code\u003e,\n\u003ccode\u003eMOE\u003c/code\u003e,\n\u003ccode\u003eNOE\u003c/code\u003e,\n\u003ccode\u003ePOE\u003c/code\u003e,\n\u003ccode\u003eTSR_STATIC\u003c/code\u003e,\n\u003ccode\u003ePMI_STATIC\u003c/code\u003e,\n\u003ccode\u003eCORNER_REFL\u003c/code\u003e,\n\u003ccode\u003eLSAR_INT_CAL\u003c/code\u003e,\n\u003ccode\u003eLSAR_EXT_CAL\u003c/code\u003e,\n\u003ccode\u003eFT_WAVEFORM\u003c/code\u003e,\n\u003ccode\u003eFT_PARAM\u003c/code\u003e,\n\u003ccode\u003eANTPAT\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/asfadmin/Discovery-asf_search/commit/0f8226f7d7f36fcca5bb28d111636d6e7abbbfc8\"\u003e\u003ccode\u003e0f8226f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/440\"\u003e#440\u003c/a\u003e from asfadmin/feat-nisar-oe-helper\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/47e6593b8ee5530077022f43a0600e7c421350db\"\u003e\u003ccode\u003e47e6593\u003c/code\u003e\u003c/a\u003e feat: adds utils module with get_nisar_orbit_ephemeras() method.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/66fadbb5bc968acec0f095b565dccc244879c79e\"\u003e\u003ccode\u003e66fadbb\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/439\"\u003e#439\u003c/a\u003e from asfadmin/bug-nisar-track-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/95cc06762259f72db17381748091aa54eb658c72\"\u003e\u003ccode\u003e95cc067\u003c/code\u003e\u003c/a\u003e chore: update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/1f601edbe40ce14756c3c98cb853e35e8e5761c1\"\u003e\u003ccode\u003e1f601ed\u003c/code\u003e\u003c/a\u003e bug: fix regression with frame search\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/bb7dfaaae1dc35449a6e7369f3e7726d2969fb03\"\u003e\u003ccode\u003ebb7dfaa\u003c/code\u003e\u003c/a\u003e chore: add todo comment for nsiar frame bug\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/6ec9957bbff797283f820fd3f90dcab6cd1b0335\"\u003e\u003ccode\u003e6ec9957\u003c/code\u003e\u003c/a\u003e fix: fix track not working when only specificying nisar dataset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/3efaa2862ac61c9bd1fcbfcea6bca5d472f90656\"\u003e\u003ccode\u003e3efaa28\u003c/code\u003e\u003c/a\u003e test: update authenticated NISAR test case\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/3e3d5777440aaff9303a247dbfa8c7f3b5c04078\"\u003e\u003ccode\u003e3e3d577\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/437\"\u003e#437\u003c/a\u003e from asfadmin/feat-opera-dist\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/9e0f3e86acfd67a0483f3e01e3de2909ac64f5b5\"\u003e\u003ccode\u003e9e0f3e8\u003c/code\u003e\u003c/a\u003e fix: add tileID to search.py\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v11.0.3...v12.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flask` from 3.1.2 to 3.1.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/flask/releases\"\u003eflask's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.1.3\u003c/h2\u003e\n\u003cp\u003eThis is the Flask 3.1.3 security fix release, which fixes a security issue but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.\u003c/p\u003e\n\u003cp\u003ePyPI: \u003ca href=\"https://pypi.org/project/Flask/3.1.3/\"\u003ehttps://pypi.org/project/Flask/3.1.3/\u003c/a\u003e\nChanges: \u003ca href=\"https://flask.palletsprojects.com/page/changes/#version-3-1-3\"\u003ehttps://flask.palletsprojects.com/page/changes/#version-3-1-3\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe session is marked as accessed for operations that only access the keys but not the values, such as \u003ccode\u003ein\u003c/code\u003e and \u003ccode\u003elen\u003c/code\u003e. \u003ca href=\"https://github.com/pallets/flask/security/advisories/GHSA-68rp-wp8r-4726\"\u003eGHSA-68rp-wp8r-4726\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/flask/blob/main/CHANGES.rst\"\u003eflask's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.1.3\u003c/h2\u003e\n\u003cp\u003eReleased 2026-02-18\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe session is marked as accessed for operations that only access the keys\nbut not the values, such as \u003ccode\u003ein\u003c/code\u003e and \u003ccode\u003elen\u003c/code\u003e. :ghsa:\u003ccode\u003e68rp-wp8r-4726\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/22d924701a6ae2e4cd01e9a15bbaf3946094af65\"\u003e\u003ccode\u003e22d9247\u003c/code\u003e\u003c/a\u003e release version 3.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/089cb86dd22bff589a4eafb7ab8e42dc357623b4\"\u003e\u003ccode\u003e089cb86\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/c17f379390731543eea33a570a47bd4ef76a54fa\"\u003e\u003ccode\u003ec17f379\u003c/code\u003e\u003c/a\u003e request context tracks session access\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/27be9338405382445a7cb01151e084559b98d602\"\u003e\u003ccode\u003e27be933\u003c/code\u003e\u003c/a\u003e start version 3.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/4e652d3f68b90d50aa2301d3b7e68c3fafd9251d\"\u003e\u003ccode\u003e4e652d3\u003c/code\u003e\u003c/a\u003e Abort if the instance folder cannot be created (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5903\"\u003e#5903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/3d03098a97ddc6a908aa4a50c2ef7381f8297d0a\"\u003e\u003ccode\u003e3d03098\u003c/code\u003e\u003c/a\u003e Abort if the instance folder cannot be created\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/407eb76b27884848383a37c7274654f0271e4bc4\"\u003e\u003ccode\u003e407eb76\u003c/code\u003e\u003c/a\u003e document using gevent for async (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5900\"\u003e#5900\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/ac5664d2281533eacafd64f5cc7d5edcdaccab60\"\u003e\u003ccode\u003eac5664d\u003c/code\u003e\u003c/a\u003e document using gevent for async\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/4f79d5b59a56bc4356a97f2e81a35f98cb18d7b3\"\u003e\u003ccode\u003e4f79d5b\u003c/code\u003e\u003c/a\u003e Increase required flit_core version to 3.11 (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5865\"\u003e#5865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/fe3b215d3ade4db68262dae1a3cdc464a1fc524f\"\u003e\u003ccode\u003efe3b215\u003c/code\u003e\u003c/a\u003e Increase required flit_core version to 3.11\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets/flask/compare/3.1.2...3.1.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `openapi-core` from 0.22.0 to 0.23.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python-openapi/openapi-core/releases\"\u003eopenapi-core's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.23.0\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd OpenAPI 3.2 support and move V3 aliases to V32 \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1121\"\u003e#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd opt-in strict mode for omitted additionalProperties \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1124\"\u003e#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd explicit Falcon WSGI/ASGI middleware with dual-mode compatibility \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1122\"\u003e#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd structured details for validation errors \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1129\"\u003e#1129\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDialect-aware schema validators factory \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1135\"\u003e#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport parameter casting in composite schemas \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1136\"\u003e#1136\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken contributing guidelines link \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1098\"\u003e#1098\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix swapped operation/path order in request-parameters flows \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1120\"\u003e#1120\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix deprecation warnings for omitted params and headers \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1125\"\u003e#1125\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInclude root cause in request body validation errors \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1128\"\u003e#1128\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eUpgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDjango 6 support \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1103\"\u003e#1103\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade jsonschema-path 0.4 openapi-schema-validator 0.7 and openapi-spec-validator 0.8 \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1105\"\u003e#1105\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBackward incompatibilities\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.9 support dropped \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1091\"\u003e#1091\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eV3 aliases point to V32 \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1121\"\u003e#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove deprecated Spec \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1002\"\u003e#1002\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.23.0b1\u003c/h2\u003e\n\u003ch2\u003eUpgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade jsonschema-path 0.4.0b8 and openapi-spec-validator 0.8.0b3 \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1002\"\u003e#1002\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken contributing guidelines link \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1098\"\u003e#1098\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBackward incompatibilities\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.9 support dropped \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1091\"\u003e#1091\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/520650b97d9fa02f15edeee4cc3f13a91980de68\"\u003e\u003ccode\u003e520650b\u003c/code\u003e\u003c/a\u003e Version 0.23.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/beec2f2a5ef5cffe1a020095d5e24e79f4c809ad\"\u003e\u003ccode\u003ebeec2f2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1138\"\u003e#1138\u003c/a\u003e from python-openapi/dependabot/pip/openapi-spec-vali...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/b6be01025df31aa93cf19c8e9aa6c833aca254b5\"\u003e\u003ccode\u003eb6be010\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1137\"\u003e#1137\u003c/a\u003e from python-openapi/dependabot/pip/markdown-3.8.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/408242af08ff378b7f32bde7cf5a3aaf1c9b7295\"\u003e\u003ccode\u003e408242a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1139\"\u003e#1139\u003c/a\u003e from python-openapi/dependabot/pip/mkdocs-material-9...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/9bcbf2fd11e6d759ae28b735b066aaa4f611ba41\"\u003e\u003ccode\u003e9bcbf2f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1140\"\u003e#1140\u003c/a\u003e from python-openapi/dependabot/pip/pytest-9.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/2cfefe40310e0a636bd54a2bae65e35582dc55b2\"\u003e\u003ccode\u003e2cfefe4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1141\"\u003e#1141\u003c/a\u003e from python-openapi/dependabot/pip/tornado-6.5.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/ca92806f3fc5e6976aac6b504c7e480b1937f59b\"\u003e\u003ccode\u003eca92806\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-core/issues/1136\"\u003e#1136\u003c/a\u003e from python-openapi/fix/composite-schema-casting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/4a57f278f902634e4dd8913c1f94ff7ed771cca9\"\u003e\u003ccode\u003e4a57f27\u003c/code\u003e\u003c/a\u003e Bump tornado from 6.5.4 to 6.5.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/81ff1c6e139aa61c911be6adabd1c8144143284d\"\u003e\u003ccode\u003e81ff1c6\u003c/code\u003e\u003c/a\u003e Bump pytest from 8.4.2 to 9.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-core/commit/480a3622bdfbc85d899873fed0a991b1ff9c73cf\"\u003e\u003ccode\u003e480a362\u003c/code\u003e\u003c/a\u003e Bump mkdocs-material from 9.7.3 to 9.7.4\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python-openapi/openapi-core/compare/0.22.0...0.23.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyjwt` from 2.12.0 to 2.12.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jpadilla/pyjwt/releases\"\u003epyjwt's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.12.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd typing_extensions dependency for Python \u0026lt; 3.11 by \u003ca href=\"https://github.com/jpadilla\"\u003e\u003ccode\u003e@​jpadilla\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/jpadilla/pyjwt/pull/1151\"\u003ejpadilla/pyjwt#1151\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1\"\u003ehttps://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jpadilla/pyjwt/blob/master/CHANGELOG.rst\"\u003epyjwt's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ccode\u003ev2.12.1 \u0026lt;https://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1\u0026gt;\u003c/code\u003e__\u003c/h2\u003e\n\u003cp\u003eFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Add missing ``typing_extensions`` dependency for Python \u0026lt; 3.11 in `[#1150](https://github.com/jpadilla/pyjwt/issues/1150) \u0026lt;https://github.com/jpadilla/pyjwt/issues/1150\u0026gt;`__\n\u003c/code\u003e\u003c/pre\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jpadilla/pyjwt/commit/a4e1a3d1218b01c5806420b8f16d9308ac4adc30\"\u003e\u003ccode\u003ea4e1a3d\u003c/code\u003e\u003c/a\u003e Add typing_extensions dependency for Python \u0026lt; 3.11 (\u003ca href=\"https://redirect.github.com/jpadilla/pyjwt/issues/1151\"\u003e#1151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/jpadilla/pyjwt/compare/2.12.0...2.12.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.32.5 to 2.33.1\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.33.1\u003c/h2\u003e\n\u003ch2\u003e2.33.1 (2026-03-30)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed test cleanup for CVE-2026-25645 to avoid leaving unnecessary\nfiles in the tmp directory. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed Content-Type header parsing for malformed values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved error consistency for malformed header values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\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/ferdnyc\"\u003e\u003ccode\u003e@​ferdnyc\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7277\"\u003epsf/requests#7277\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#2331-2026-03-30\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2331-2026-03-30\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.33.0\u003c/h2\u003e\n\u003ch2\u003e2.33.0 (2026-03-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e📣 Requests is adding inline types. If you have a typed code base that uses Requests, please take a look at \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003e#7271\u003c/a\u003e. Give it a try, and report any gaps or feedback you may have in the issue. 📣\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2026-25645 \u003ccode\u003erequests.utils.extract_zipped_paths\u003c/code\u003e now extracts contents to a non-deterministic location to prevent malicious file replacement. This does not affect default usage of Requests, only applications calling the utility function directly.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated to a PEP 517 build system using setuptools. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7012\"\u003e#7012\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\u003eFixed an issue where an empty netrc entry could cause malformed authentication to be applied to Requests on Python 3.11+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7205\"\u003e#7205\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for Python 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7196\"\u003e#7196\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDocumentation\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eVarious typo fixes and doc improvements.\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/M0d3v1\"\u003e\u003ccode\u003e@​M0d3v1\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/6865\"\u003epsf/requests#6865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aminvakil\"\u003e\u003ccode\u003e@​aminvakil\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7220\"\u003epsf/requests#7220\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/E8Price\"\u003e\u003ccode\u003e@​E8Price\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/6960\"\u003epsf/requests#6960\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitre88\"\u003e\u003ccode\u003e@​mitre88\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7244\"\u003epsf/requests#7244\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/magsen\"\u003e\u003ccode\u003e@​magsen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/6553\"\u003epsf/requests#6553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rohan5commit\"\u003e\u003ccode\u003e@​Rohan5commit\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7227\"\u003epsf/requests#7227\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#2330-2026-03-25\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2330-2026-03-25\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/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.33.1 (2026-03-30)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed test cleanup for CVE-2026-25645 to avoid leaving unnecessary\nfiles in the tmp directory. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed Content-Type header parsing for malformed values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved error consistency for malformed header values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.33.0 (2026-03-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e📣 Requests is adding inline types. If you have a typed code base that\nuses Requests, please take a look at \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003e#7271\u003c/a\u003e. Give it a try, and report\nany gaps or feedback you may have in the issue. 📣\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2026-25645 \u003ccode\u003erequests.utils.extract_zipped_paths\u003c/code\u003e now extracts\ncontents to a non-deterministic location to prevent malicious file\nreplacement. This does not affect default usage of Requests, only\napplications calling the utility function directly.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated to a PEP 517 build system using setuptools. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7012\"\u003e#7012\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\u003eFixed an issue where an empty netrc entry could cause\nmalformed authentication to be applied to Requests on\nPython 3.11+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7205\"\u003e#7205\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for Python 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7196\"\u003e#7196\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDocumentation\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eVarious typo fixes and doc improvements.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/111d2b77790bf49943c0dfa09b365371c24aec7e\"\u003e\u003ccode\u003e111d2b7\u003c/code\u003e\u003c/a\u003e v2.33.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/f0198e6dfc431a2293dc16e1b1e8fcddc910a7f3\"\u003e\u003ccode\u003ef0198e6\u003c/code\u003e\u003c/a\u003e Fix malformed value parsing for Content-Type (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/bc7dd0fc4d56e808bcdd85ac2d797b3107c89259\"\u003e\u003ccode\u003ebc7dd0f\u003c/code\u003e\u003c/a\u003e Fix cosmetic header validity parsing regex (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4443b1a847b190010c2972a658924b98b5db6360\"\u003e\u003ccode\u003e4443b1a\u003c/code\u003e\u003c/a\u003e Fix unintended test extra (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7306\"\u003e#7306\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/389eea58dfb2f2ee096421a812e3af29c0298951\"\u003e\u003ccode\u003e389eea5\u003c/code\u003e\u003c/a\u003e Cleanup extracted file after extract_zipped_path test (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7407309c8a8a73aa2f4337184025d440bbedab7a\"\u003e\u003ccode\u003e7407309\u003c/code\u003e\u003c/a\u003e Packaging: DRY out extras definition (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7277\"\u003e#7277\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/bc04dfd6dad4cb02cd92f5daa81eb562d280a761\"\u003e\u003ccode\u003ebc04dfd\u003c/code\u003e\u003c/a\u003e v2.33.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/66d21cb07bd6255b1280291c4fafb71803cdb3b7\"\u003e\u003ccode\u003e66d21cb\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/8b9bc8fc0f63be84602387913c4b689f19efd028\"\u003e\u003ccode\u003e8b9bc8f\u003c/code\u003e\u003c/a\u003e Move badges to top of README (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7293\"\u003e#7293\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e331a288f369973f5de0ec8901c94cae4fa87286\"\u003e\u003ccode\u003ee331a28\u003c/code\u003e\u003c/a\u003e Remove unused extraction call (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7292\"\u003e#7292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.5...v2.33.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cryptography` from 46.0.5 to 46.0.6\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst\"\u003ecryptography's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e46.0.6 - 2026-03-25\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* **SECURITY ISSUE**: Fixed a bug where name constraints were not applied\n  to peer names during verification when the leaf certificate contains a\n  wildcard DNS SAN. Ordinary X.509 topologies are not affected by this bug,\n  including those used by the Web PKI. Credit to **Oleh Konko (1seal)** for\n  reporting the issue. **CVE-2026-34073**\n\u003cp\u003e.. _v46-0-5:\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\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/pyca/cryptography/commit/91d728897bdad30cd5c79a2b23e207f1f050d587\"\u003e\u003ccode\u003e91d7288\u003c/code\u003e\u003c/a\u003e Cherry-pick \u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/14542\"\u003e#14542\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/14543\"\u003e#14543\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/pyca/cryptography/compare/46.0.5...46.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `moto` from 5.1.21 to 5.1.22\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getmoto/moto/blob/master/CHANGELOG.md\"\u003emoto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.1.22\u003c/h2\u003e\n\u003cp\u003eDocker Digest for 5.1.22: \u003cem\u003esha256:1e3802c95726373544967b428201c548f0247c15b00db2d96a5ba0a77d8643b8\u003c/em\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew Methods:\n    * APIGateway:\n        * delete_model()\n\u003cpre\u003e\u003ccode\u003e* Athena:\n    * tag_resource()\n    * untag_resource()\n\n* Pipes:\n    * list_tags_for_resource()\n\n* OSIS:\n    * delete_resource_policy()\n    * get_resource_policy()\n    * put_resource_policy()\n\n* RDS:\n    * copy_db_cluster_parameter_group()\n\n* STS:\n    * get_access_key_info()\n\n* Transfer:\n    * list_servers()\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eMiscellaneous:\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::CloudWatch::Dashboard resources\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::KMS::Alias resources\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::SSM::Document resources\u003cbr /\u003e\n* EC2: create_fleet() now supports the parameters DryRun and LaunchTemplateConfigs.Overrides\u003cbr /\u003e\n* EC2: describe_network_interfaces() now supports the 'attachment.attachment-id'-filter\u003cbr /\u003e\n* EC2: Instances created from a LaunchTemplate now have the 'aws:ec2launchtemplate:id' and 'aws:ec2launchtemplate:version' tags\u003cbr /\u003e\n* RDS: create_db_cluster_parameter_group() now validates the provided group name/description/familiy\u003cbr /\u003e\n* RDS: delete_db_cluster_parameter_group() now validates that the provided group exists\u003cbr /\u003e\n* S3: delete_object() now supports IfMatch\u003cbr /\u003e\n* SecretsManager: create-secret() now throw ResourceExistsException for duplicate requests with different token (broken since 5.1.11)\u003cbr /\u003e\n* SQS: send_message() now returns the SequenceNumber-attribute\u003cbr /\u003e\n* VPCLattice: list_access_log_subscriptions() now also supports arns as resourceIdentifiers\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\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/getmoto/moto/commit/28d5ca88d9df9ce3e94e2e8b1f1c584646339e61\"\u003e\u003ccode\u003e28d5ca8\u003c/code\u003e\u003c/a\u003e Pre-Release: Up Version Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/f58dc186374dcf3cd1282f4a5998fedfa2b658a9\"\u003e\u003ccode\u003ef58dc18\u003c/code\u003e\u003c/a\u003e Prep release 5.1.22 (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/84cbb40725122bf252b766a0f601358bedcad6d1\"\u003e\u003ccode\u003e84cbb40\u003c/code\u003e\u003c/a\u003e chore: update SSM default parameters (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9828\"\u003e#9828\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/2f32dc1e3d25998340e1e59fc1145b3f1afc4b55\"\u003e\u003ccode\u003e2f32dc1\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9827\"\u003e#9827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/2a1c7ca7259747d1792dfa055b8433d313af581e\"\u003e\u003ccode\u003e2a1c7ca\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Offerings (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9826\"\u003e#9826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/e063c5a0e91c8afb49e2ccde47ff07c9448db09c\"\u003e\u003ccode\u003ee063c5a\u003c/code\u003e\u003c/a\u003e chore: update EMR Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/681b47aab458d90a8deb4ddbe86ef26695526218\"\u003e\u003ccode\u003e681b47a\u003c/code\u003e\u003c/a\u003e API Gateway: implement DeleteModel operation (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9823\"\u003e#9823\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/d652e4ad38ab382e32ab61cf2b319d033cfb6f4a\"\u003e\u003ccode\u003ed652e4a\u003c/code\u003e\u003c/a\u003e STS: implement GetAccessKeyInfo operation (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/40a65202b922fd78c4f4724f34f03cdc1172377d\"\u003e\u003ccode\u003e40a6520\u003c/code\u003e\u003c/a\u003e Implement Athena \u003ccode\u003eTagResource\u003c/code\u003e and \u003ccode\u003eUntagResource\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9796\"\u003e#9796\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/dc425e8b3d56b7ad84bf9d2820ae89e72d10a4a9\"\u003e\u003ccode\u003edc425e8\u003c/code\u003e\u003c/a\u003e Modernize Java tests (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9817\"\u003e#9817\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getmoto/moto/compare/5.1.21...5.1.22\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `responses` from 0.25.8 to 0.26.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/responses/releases\"\u003eresponses's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.26.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWhen using \u003ccode\u003eassert_all_requests_are_fired=True\u003c/code\u003e, assertions about\nunfired requests are now raised even when an exception occurs in the context manager or\ndecorated function. Previously, these assertions were suppressed when exceptions occurred.\nThis new behavior provides valuable debugging context about which mocked requests were\nor weren't called.\u003c/li\u003e\n\u003cli\u003eConsider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/responses/blob/master/CHANGES\"\u003eresponses's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.26.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWhen using \u003ccode\u003eassert_all_requests_are_fired=True\u003c/code\u003e, assertions about\nunfired requests are now raised even when an exception occurs in the context manager or\ndecorated function. Previously, these assertions were suppressed when exceptions occurred.\nThis new behavior provides valuable debugging context about which mocked requests were\nor weren't called.\u003c/li\u003e\n\u003cli\u003eConsider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/94913d0580377591350e69732df72f946d77b8c5\"\u003e\u003ccode\u003e94913d0\u003c/code\u003e\u003c/a\u003e release: 0.26.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/051b79e7fc9f5209fd351ee20288640a8fcd2265\"\u003e\u003ccode\u003e051b79e\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eassert_all_requests_are_fired\u003c/code\u003e always assert on exception (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/782\"\u003e#782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/0905cb8bd56b78f4d735d6db28ee4f12386ba4e8\"\u003e\u003ccode\u003e0905cb8\u003c/code\u003e\u003c/a\u003e Fix query_param_matcher not matching empty query parameter values (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/787\"\u003e#787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/e0c6faab419f902d6b646a902b7049196d64f68c\"\u003e\u003ccode\u003ee0c6faa\u003c/code\u003e\u003c/a\u003e ci(release): Switch from action-prepare-release to Craft (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/785\"\u003e#785\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/1be3a737b70a34d7f6a68a6f385c88af1f3e2df8\"\u003e\u003ccode\u003e1be3a73\u003c/code\u003e\u003c/a\u003e fix: Consider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/784\"\u003e#784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/c6730fbc87bf397c7fc798ec7573e6089ba877b6\"\u003e\u003ccode\u003ec6730fb\u003c/code\u003e\u003c/a\u003e Merge branch 'release/0.25.8'\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/getsentry/responses/compare/0.25.8...0.26.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.15.0 to 0.15.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.8\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-26.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003eunnecessary-if\u003c/code\u003e (\u003ccode\u003eRUF050\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24114\"\u003e#24114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003euseless-finally\u003c/code\u003e (\u003ccode\u003eRUF072\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24165\"\u003e#24165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003ef-string-percent-format\u003c/code\u003e (\u003ccode\u003eRUF073\u003c/code\u003e): warn when using \u003ccode\u003e%\u003c/code\u003e operator on an f-string (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24162\"\u003e#24162\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Recognize \u003ccode\u003efrozendict\u003c/code\u003e as a builtin for Python 3.15+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24100\"\u003e#24100\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] Use fully-qualified \u003ccode\u003eanyio.lowlevel\u003c/code\u003e import in autofix (\u003ccode\u003eASYNC115\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24166\"\u003e#24166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Check tuple arguments for partial paths in \u003ccode\u003eS607\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24080\"\u003e#24080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Skip \u003ccode\u003eundefined-name\u003c/code\u003e (\u003ccode\u003eF821\u003c/code\u003e) for conditionally deleted variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24088\"\u003e#24088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eE501\u003c/code\u003e/\u003ccode\u003eW505\u003c/code\u003e/formatter: Exclude nested pragma comments from line width calculation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24071\"\u003e#24071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e%foo?\u003c/code\u003e parsing in IPython assignment expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24152\"\u003e#24152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eanalyze graph\u003c/code\u003e: resolve string imports that reference attributes, not just modules (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24058\"\u003e#24058\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eeradicate\u003c/code\u003e] ignore \u003ccode\u003ety: ignore\u003c/code\u003e comments in \u003ccode\u003eERA001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24192\"\u003e#24192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Treat \u003ccode\u003esys.executable\u003c/code\u003e as trusted input in \u003ccode\u003eS603\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24106\"\u003e#24106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Recognize \u003ccode\u003eSelf\u003c/code\u003e annotation and \u003ccode\u003eself\u003c/code\u003e assignment in \u003ccode\u003eSLF001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24144\"\u003e#24144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] \u003ccode\u003eF507\u003c/code\u003e: Fix false negative for non-tuple RHS in \u003ccode\u003e%\u003c/code\u003e-formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24142\"\u003e#24142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Parenthesize generator arguments in \u003ccode\u003eFURB142\u003c/code\u003e fixer (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24200\"\u003e#24200\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up diagnostic rendering (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24146\"\u003e#24146\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWarn when Markdown files are skipped due to preview being disabled (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24150\"\u003e#24150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eClarify \u003ccode\u003eextend-ignore\u003c/code\u003e and \u003ccode\u003eextend-select\u003c/code\u003e settings documentation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24064\"\u003e#24064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMention AI policy in PR template (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24198\"\u003e#24198\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse trusted publishing for NPM packages (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24171\"\u003e#24171\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/bitloi\"\u003e\u003ccode\u003e@​bitloi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Sim-hu\"\u003e\u003ccode\u003e@​Sim-hu\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.15.8\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-26.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003eunnecessary-if\u003c/code\u003e (\u003ccode\u003eRUF050\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24114\"\u003e#24114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003euseless-finally\u003c/code\u003e (\u003ccode\u003eRUF072\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24165\"\u003e#24165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003ef-string-percent-format\u003c/code\u003e (\u003ccode\u003eRUF073\u003c/code\u003e): warn when using \u003ccode\u003e%\u003c/code\u003e operator on an f-string (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24162\"\u003e#24162\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Recognize \u003ccode\u003efrozendict\u003c/code\u003e as a builtin for Python 3.15+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24100\"\u003e#24100\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] Use fully-qualified \u003ccode\u003eanyio.lowlevel\u003c/code\u003e import in autofix (\u003ccode\u003eASYNC115\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24166\"\u003e#24166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Check tuple arguments for partial paths in \u003ccode\u003eS607\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24080\"\u003e#24080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Skip \u003ccode\u003eundefined-name\u003c/code\u003e (\u003ccode\u003eF821\u003c/code\u003e) for conditionally deleted variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24088\"\u003e#24088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eE501\u003c/code\u003e/\u003ccode\u003eW505\u003c/code\u003e/formatter: Exclude nested pragma comments from line width calculation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24071\"\u003e#24071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e%foo?\u003c/code\u003e parsing in IPython assignment expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24152\"\u003e#24152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eanalyze graph\u003c/code\u003e: resolve string imports that reference attributes, not just modules (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24058\"\u003e#24058\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eeradicate\u003c/code\u003e] ignore \u003ccode\u003ety: ignore\u003c/code\u003e comments in \u003ccode\u003eERA001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24192\"\u003e#24192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Treat \u003ccode\u003esys.executable\u003c/code\u003e as trusted input in \u003ccode\u003eS603\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24106\"\u003e#24106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Recognize \u003ccode\u003eSelf\u003c/code\u003e annotation and \u003ccode\u003eself\u003c/code\u003e assignment in \u003ccode\u003eSLF001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24144\"\u003e#24144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] \u003ccode\u003eF507\u003c/code\u003e: Fix false negative for non-tuple RHS in \u003ccode\u003e%\u003c/code\u003e-formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24142\"\u003e#24142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Parenthesize generator arguments in \u003ccode\u003eFURB142\u003c/code\u003e fixer (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24200\"\u003e#24200\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up diagnostic rendering (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24146\"\u003e#24146\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWarn when Markdown files are skipped due to preview being disabled (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24150\"\u003e#24150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eClarify \u003ccode\u003eextend-ignore\u003c/code\u003e and \u003ccode\u003eextend-select\u003c/code\u003e settings documentation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24064\"\u003e#24064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMention AI policy in PR template (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24198\"\u003e#24198\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse trusted publishing for NPM packages (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24171\"\u003e#24171\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/bitloi\"\u003e\u003ccode\u003e@​bitloi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Sim-hu\"\u003e\u003ccode\u003e@​Sim-hu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\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/c2a8815842f9dc5d24ec19385eae0f1a7188b0d9\"\u003e\u003ccode\u003ec2a8815\u003c/code\u003e\u003c/a\u003e Release 0.15.8 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24217\"\u003e#24217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d444d52e2b9cc8bc9a078c2bd4ff6ff993290209\"\u003e\u003ccode\u003ed444d52\u003c/code\u003e\u003c/a\u003e [ty] Infer lambda expressions with \u003ccode\u003eCallable\u003c/code\u003e type context (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/22633\"\u003e#22633\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/9622285ed0081fc688149f6efca87f127d9b18dd\"\u003e\u003ccode\u003e9622285\u003c/code\u003e\u003c/a\u003e [ty] Autocomplete arguments if in arguments node (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24167\"\u003e#24167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d81266252aaf0820346d55edbed79c4f25ba13d2\"\u003e\u003ccode\u003ed812662\u003c/code\u003e\u003c/a\u003e Use the \u003ccode\u003erelease\u003c/code\u003e environment in \u003ccode\u003epublish-docs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24214\"\u003e#24214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/eda2355832f7a9c58aef6febd3e061dc9c87509a\"\u003e\u003ccode\u003eeda2355\u003c/code\u003e\u003c/a\u003e [ty] Show \u003ccode\u003eFinal\u003c/code\u003e source in final assignment diagnostic (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24194\"\u003e#24194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/929eb5238c82bfadad4549ff526f02efc0163dd0\"\u003e\u003ccode\u003e929eb52\u003c/code\u003e\u003c/a\u003e [ty] Enforce Final attribute assignment rules for annotated and augmented wri...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/34998be22ec3a77d398bbd55234ef8740f768329\"\u003e\u003ccode\u003e34998be\u003c/code\u003e\u003c/a\u003e [ty] Fix typo in comment (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24211\"\u003e#24211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/560aca0b2828ee2ff1b4bcc5c5ef1ef4ced229d2\"\u003e\u003ccode\u003e560aca0\u003c/code\u003e\u003c/a\u003e [ty] Minor simplifications to some benchmark code (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24209\"\u003e#24209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/683bae512d03d3727a7bcdbc5a0170dafa049583\"\u003e\u003ccode\u003e683bae5\u003c/code\u003e\u003c/a\u003e [ty] Track non-terminal-call constraints in global scope (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23245\"\u003e#23245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/4704c2a4ff3dde2fd29324346720e9516b4fe387\"\u003e\u003ccode\u003e4704c2a\u003c/code\u003e\u003c/a\u003e [ty] Remove unnecessary intermediate collection in `StaticClassLiteral::field...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.15.0...0.15.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools` from 82.0.0 to 82.0.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools/blob/main/NEWS.rst\"\u003esetuptools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ev82.0.1\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the loading of \u003ccode\u003elauncher manifest.xml\u003c/code\u003e file. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5047\"\u003e#5047\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplaced deprecated \u003ccode\u003ejson.__version__\u003c/code\u003e with fixture in tests. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5186\"\u003e#5186\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd advice about how to improve predictability when installing sdists. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5168\"\u003e#5168\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4941\"\u003e#4941\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\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/pypa/setuptools/commit/5a13876673a41e3cd21d4d6e587f53d0fb4fd8e5\"\u003e\u003ccode\u003e5a13876\u003c/code\u003e\u003c/a\u003e Bump version: 82.0.0 → 82.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/51ab8f183f1c4112675d8d6ec6b004406d518ee8\"\u003e\u003ccode\u003e51ab8f1\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5194\"\u003e#5194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/f9c37b20bb0ed11203f676f9683452a4c3ace6f6\"\u003e\u003ccode\u003ef9c37b2\u003c/code\u003e\u003c/a\u003e Docs/CI: Fix intersphinx references (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5195\"\u003e#5195\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/8173db2a4fc0f6cb28926b3dba59116b79f435c8\"\u003e\u003ccode\u003e8173db2\u003c/code\u003e\u003c/a\u003e Docs: Fix intersphinx references\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/09bafbc74923f2a3591b5b098be75d6af6ca5141\"\u003e\u003ccode\u003e09bafbc\u003c/code\u003e\u003c/a\u003e Fix past tense on newsfragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/461ea56c8e629819a23920f44d9298d4f041abde\"\u003e\u003ccode\u003e461ea56\u003c/code\u003e\u003c/a\u003e Add news fragment\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/c4ffe535b58235ff9f9ebe90d24a2cffb57e70ae\"\u003e\u003ccode\u003ec4ffe53\u003c/code\u003e\u003c/a\u003e Avoid using (deprecated) 'json.\u003cstrong\u003eversion\u003c/strong\u003e' in tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/749258b1a96c7accc05ea7d842fb19fc378866fe\"\u003e\u003ccode\u003e749258b\u003c/code\u003e\u003c/a\u003e Cleanup \u003ccode\u003epkg_resources\u003c/code\u003e dependencies and configuration (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5175\"\u003e#5175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/2019c16701667db1010c62ec11c6ef78c2e58206\"\u003e\u003ccode\u003e2019c16\u003c/code\u003e\u003c/a\u003e Parse \u003ccode\u003eext-module.define-macros\u003c/code\u003e from \u003ccode\u003epyproject.toml\u003c/code\u003e as list of tuples (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5169\"\u003e#5169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/b809c86a37d97fcce290d5f51d4c293ab40bc685\"\u003e\u003ccode\u003eb809c86\u003c/code\u003e\u003c/a\u003e Sync setuptools schema with validate-pyproject (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5157\"\u003e#5157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools/compare/v82.0.0...v82.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools-scm` from 9.2.2 to 10.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAnchor \u003ccode\u003eget_version\u003c/code\u003e in \u003ccode\u003esetup.py\u003c/code\u003e with \u003ccode\u003erelative_to\u003c/code\u003e and \u003ccode\u003efallback_root\u003c/code\u003e so SCM fallbacks (e.g. \u003ccode\u003ePKG-INFO\u003c/code\u003e) do not resolve against the wrong directory when the build cwd is the workspace or repo root. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1302\"\u003e#1302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnter \u003ccode\u003eGlobalOverrides\u003c/code\u003e for \u003ccode\u003eSETUPTOOLS_SCM\u003c/code\u003e when using \u003ccode\u003esetuptools_scm.get_version\u003c/code\u003e / \u003ccode\u003e_get_version\u003c/code\u003e, avoiding implicit context warnings for direct API callers. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1314\"\u003e#1314\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade pre-commit hooks (Ruff, mypy, codespell), align locked Ruff with hooks, and add Ruff per-file configuration for setuptools_scm re-export modules. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1311\"\u003e#1311\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove monorepo-only \u003ccode\u003e../vcs-versioning/src\u003c/code\u003e from \u003ccode\u003ebuild-system.backend-path\u003c/code\u003e so sdists install under PEP 517 (paths must stay inside the source tree). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1306\"\u003e#1306\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003egriffecli\u003c/code\u003e to test dependencies so the API stability check keeps working after the Griffe CLI was split into a separate package. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1310\"\u003e#1310\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix version file not generated for editable installs. Version files are now written to the source tree by default during inference (restoring pre-10.x behavior), and also registered as \u003ccode\u003ebuild_py\u003c/code\u003e outputs so strict editable installs include them in the persistent auxiliary directory. Set \u003ccode\u003eSETUPTOOLS_SCM_WRITE_TO_SOURCE=0\u003c/code\u003e to disable source-tree writing (e.g., for read-only source directories). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1298\"\u003e#1298\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.1\u003c/h2\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSimplify release tag creation to use a single \u003ccode\u003ecreateRelease\u003c/code\u003e API call instead of separate \u003ccode\u003ecreateTag\u003c/code\u003e/\u003ccode\u003ecreateRef\u003c/code\u003e/\u003ccode\u003ecreateRelease\u003c/code\u003e calls, avoiding dangling tag objects on partial failures. (\u003ca href=\"https://github.com/pypa/setuptools-scm/issues/release-pipeline\"\u003e#release-pipeline\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.0\u003c/h2\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 and 3.9 support. Minimum Python version is now 3.10. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esetuptools-scm now depends on vcs-versioning for core version inference logic. This enables other build backends to use the same version inference without setuptools dependency. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eVersion files (\u003ccode\u003ewrite_to\u003c/code\u003e and \u003ccode\u003eversion_file\u003c/code\u003e) are now written to the build directory\nduring \u003ccode\u003ebuild_py\u003c/code\u003e instead of the source tree during version inference.\nThis enables installing packages from read-only source directories (e.g., Bazel builds).\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/v9.2.2...setuptools-scm-v10.0.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `openapi-spec-validator` from 0.7.2 to 0.8.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/releases\"\u003eopenapi-spec-validator's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.8.4\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eJsonschema-rs backend \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/478\"\u003e#478\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.3\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUse resolved cache feature of jsonschema-path \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/479\"\u003e#479\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.2\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eOpenAPI 3.2 support \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/472\"\u003e#472\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd OAS 3.1 jsonSchemaDialect-aware schema meta-validation \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/471\"\u003e#471\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.1\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eCLI version option \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/466\"\u003e#466\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSplit CLI error controls into validation and subschema modes \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/469\"\u003e#469\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix malformed schema traversal to report validation errors instead of internal exceptions \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/467\"\u003e#467\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eValidate declared path parameters against path template \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/470\"\u003e#470\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDeprecations\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecates \u003ccode\u003e--error\u003c/code\u003e/\u003ccode\u003e--errors\u003c/code\u003e CLI options \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/469\"\u003e#469\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.0\u003c/h2\u003e\n\u003ch2\u003eUpgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eJsonschema-path 0.4 and openapi-schema-validator 0.7 upgrades \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/459\"\u003e#459\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePython 3.13 and 3.14 support \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/392\"\u003e#392\u003c/a\u003e \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/457\"\u003e#457\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate openapi-schema-validator version constraint \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/439\"\u003e#439\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBackward incompatibilities\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 and 3.9 drop \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/392\"\u003e#392\u003c/a\u003e \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/456\"\u003e#456\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.8.0b3\u003c/h2\u003e\n\u003ch2\u003eUpgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eJsonschema-path 0.4.0b8 upgrade \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/455\"\u003e#455\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/python-openapi/openapi-spec-validator/commit/cca400fbe29ebaea5c3b3e7db04548db260690ea\"\u003e\u003ccode\u003ecca400f\u003c/code\u003e\u003c/a\u003e Version 0.8.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/33585eab47df9c3d6bd18479463da15fb0007f36\"\u003e\u003ccode\u003e33585ea\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/478\"\u003e#478\u003c/a\u003e from python-openapi/poc/rust-backend\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/a10dfe6ce166865eb36c75b2a473d470cc5bb0e1\"\u003e\u003ccode\u003ea10dfe6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/480\"\u003e#480\u003c/a\u003e from python-openapi/copilot/sub-pr-478\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/da9c9cbce67e12764db36886a850eb5a9017dc51\"\u003e\u003ccode\u003eda9c9cb\u003c/code\u003e\u003c/a\u003e Address review feedback: fix docstring, trailing whitespace, f-string, instal...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/629f4e2bdfe60ce54c51f8e8cdce54f6f83f1da7\"\u003e\u003ccode\u003e629f4e2\u003c/code\u003e\u003c/a\u003e Initial plan\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/df9ba9b77384f1102e98033219feddb64b4e85fa\"\u003e\u003ccode\u003edf9ba9b\u003c/code\u003e\u003c/a\u003e Rust backend\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/a093f9c4783792da2b181c03e718844b57cdb19c\"\u003e\u003ccode\u003ea093f9c\u003c/code\u003e\u003c/a\u003e Version 0.8.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/0d757b58adc86d3b939b048aa4263ddea6462fd3\"\u003e\u003ccode\u003e0d757b5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/python-openapi/openapi-spec-validator/issues/479\"\u003e#479\u003c/a\u003e from python-openapi/feature/upgrade-jsonschema-path-0...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/0bbd76166fcd1833dcbe63cf335a3da26fdc9015\"\u003e\u003ccode\u003e0bbd761\u003c/code\u003e\u003c/a\u003e Expose resolved cache\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/commit/023da9563279a37bcedb5ffb6208f663e46a53cc\"\u003e\u003ccode\u003e023da95\u003c/code\u003e\u003c/a\u003e Upgrade jsonschema-path 0.4.3\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python-openapi/openapi-spec-validator/compare/0.7.2...0.8.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cfn-lint` from 1.44.0 to 1.47.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/releases\"\u003ecfn-lint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v1.47.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ca href=\"https://github.com/aws-cloudformation/cfn-python-lint/blob/main/docs/rules.md#E3677\"\u003eE3063\u003c/a\u003e false positive when Code is a string (aws-cli pattern) by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4399\"\u003eaws-cloudformation/cfn-lint#4399\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCap resolve_value permutations to prevent exponential blowup by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca ...\n\n_Description has been truncated_","html_url":"https://github.com/ASFHyP3/hyp3/pull/3052","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ASFHyP3%2Fhyp3/issues/3052","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/3052/packages"}},{"old_version":"9.2.2","new_version":"10.0.5","update_type":"major","path":null,"pr_created_at":"2026-03-30T19:28:17.000Z","version_change":"9.2.2 → 10.0.5","issue":{"uuid":"4173494499","node_id":"PR_kwDOLZhmmc7Ouwbr","number":352,"state":"closed","title":"Bump the pip-deps group across 1 directory with 10 updates","user":"dependabot[bot]","labels":["bumpless","major"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-03-31T22:43:17.000Z","author_association":null,"state_reason":null,"created_at":"2026-03-30T19:28:17.000Z","updated_at":"2026-03-31T22:43:18.000Z","time_to_close":98100,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"pip-deps","update_count":10,"packages":[{"name":"setuptools-scm","old_version":"9.2.2","new_version":"10.0.5","repository_url":"https://github.com/pypa/setuptools-scm"},{"name":"geopandas","old_version":"1.1.2","new_version":"1.1.3","repository_url":"https://github.com/geopandas/geopandas"},{"name":"requests","old_version":"2.32.5","new_version":"2.33.1","repository_url":"https://github.com/psf/requests"},{"name":"numpy","old_version":"2.4.2","new_version":"2.4.4","repository_url":"https://github.com/numpy/numpy"},{"name":"boto3","old_version":"1.42.61","new_version":"1.42.78","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.42.61","new_version":"1.42.78","repository_url":"https://github.com/boto/botocore"},{"name":"asf-search","old_version":"12.0.2","new_version":"12.0.6","repository_url":"https://github.com/asfadmin/Discovery-asf_search"},{"name":"cfn-lint","old_version":"1.46.0","new_version":"1.47.1","repository_url":"https://github.com/aws-cloudformation/cfn-lint"},{"name":"ruff","old_version":"0.15.4","new_version":"0.15.8","repository_url":"https://github.com/astral-sh/ruff"},{"name":"moto","old_version":"5.1.21","new_version":"5.1.22","repository_url":"https://github.com/getmoto/moto"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-deps group with 10 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [setuptools-scm](https://github.com/pypa/setuptools-scm) | `9.2.2` | `10.0.5` |\n| [geopandas](https://github.com/geopandas/geopandas) | `1.1.2` | `1.1.3` |\n| [requests](https://github.com/psf/requests) | `2.32.5` | `2.33.1` |\n| [numpy](https://github.com/numpy/numpy) | `2.4.2` | `2.4.4` |\n| [boto3](https://github.com/boto/boto3) | `1.42.61` | `1.42.78` |\n| [botocore](https://github.com/boto/botocore) | `1.42.61` | `1.42.78` |\n| [asf-search](https://github.com/asfadmin/Discovery-asf_search) | `12.0.2` | `12.0.6` |\n| [cfn-lint](https://github.com/aws-cloudformation/cfn-lint) | `1.46.0` | `1.47.1` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.4` | `0.15.8` |\n| [moto](https://github.com/getmoto/moto) | `5.1.21` | `5.1.22` |\n\n\nUpdates `setuptools-scm` from 9.2.2 to 10.0.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools-scm/releases\"\u003esetuptools-scm's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esetuptools-scm v10.0.5\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003edump_version()\u003c/code\u003e deprecation warning to be silenced by passing \u003ccode\u003escm_version=None\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e[tool.uv.sources]\u003c/code\u003e from \u003ccode\u003esetuptools-scm/pyproject.toml\u003c/code\u003e to fix sdist builds outside the workspace — the workspace root already declares the source mapping for development. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.4\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAnchor \u003ccode\u003eget_version\u003c/code\u003e in \u003ccode\u003esetup.py\u003c/code\u003e with \u003ccode\u003erelative_to\u003c/code\u003e and \u003ccode\u003efallback_root\u003c/code\u003e so SCM fallbacks (e.g. \u003ccode\u003ePKG-INFO\u003c/code\u003e) do not resolve against the wrong directory when the build cwd is the workspace or repo root. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1302\"\u003e#1302\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnter \u003ccode\u003eGlobalOverrides\u003c/code\u003e for \u003ccode\u003eSETUPTOOLS_SCM\u003c/code\u003e when using \u003ccode\u003esetuptools_scm.get_version\u003c/code\u003e / \u003ccode\u003e_get_version\u003c/code\u003e, avoiding implicit context warnings for direct API callers. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1314\"\u003e#1314\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpgrade pre-commit hooks (Ruff, mypy, codespell), align locked Ruff with hooks, and add Ruff per-file configuration for setuptools_scm re-export modules. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1311\"\u003e#1311\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.3\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove monorepo-only \u003ccode\u003e../vcs-versioning/src\u003c/code\u003e from \u003ccode\u003ebuild-system.backend-path\u003c/code\u003e so sdists install under PEP 517 (paths must stay inside the source tree). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1306\"\u003e#1306\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003egriffecli\u003c/code\u003e to test dependencies so the API stability check keeps working after the Griffe CLI was split into a separate package. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1310\"\u003e#1310\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix version file not generated for editable installs. Version files are now written to the source tree by default during inference (restoring pre-10.x behavior), and also registered as \u003ccode\u003ebuild_py\u003c/code\u003e outputs so strict editable installs include them in the persistent auxiliary directory. Set \u003ccode\u003eSETUPTOOLS_SCM_WRITE_TO_SOURCE=0\u003c/code\u003e to disable source-tree writing (e.g., for read-only source directories). (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1298\"\u003e#1298\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.1\u003c/h2\u003e\n\u003ch3\u003eMiscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSimplify release tag creation to use a single \u003ccode\u003ecreateRelease\u003c/code\u003e API call instead of separate \u003ccode\u003ecreateTag\u003c/code\u003e/\u003ccode\u003ecreateRef\u003c/code\u003e/\u003ccode\u003ecreateRelease\u003c/code\u003e calls, avoiding dangling tag objects on partial failures. (\u003ca href=\"https://github.com/pypa/setuptools-scm/issues/release-pipeline\"\u003e#release-pipeline\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003esetuptools-scm v10.0.0\u003c/h2\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 and 3.9 support. Minimum Python version is now 3.10. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esetuptools-scm now depends on vcs-versioning for core version inference logic. This enables other build backends to use the same version inference without setuptools dependency. (\u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1228\"\u003e#1228\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eVersion files (\u003ccode\u003ewrite_to\u003c/code\u003e and \u003ccode\u003eversion_file\u003c/code\u003e) are now written to the build directory\nduring \u003ccode\u003ebuild_py\u003c/code\u003e instead of the source tree during version inference.\nThis enables installing packages from read-only source directories (e.g., Bazel builds).\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/pypa/setuptools-scm/commit/e2ba34f52b5d375d680c069bc3fa89c4056a9347\"\u003e\u003ccode\u003ee2ba34f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1328\"\u003e#1328\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/d34d072641504a2283ceaea21c14cae250e721c6\"\u003e\u003ccode\u003ed34d072\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/7c62809afdef4e0fa7f702840183e888d4fa2378\"\u003e\u003ccode\u003e7c62809\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1332\"\u003e#1332\u003c/a\u003e from RonnyPfannschmidt/fix/1330-remove-workspace-sou...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f600a2929dd25c4f9b06c2716ff06af09920572c\"\u003e\u003ccode\u003ef600a29\u003c/code\u003e\u003c/a\u003e fix: remove workspace source override from setuptools-scm member (fixes \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1330\"\u003e#1330\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/f76244eb6974b0e5f7991c5e62425b3ce295630c\"\u003e\u003ccode\u003ef76244e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1327\"\u003e#1327\u003c/a\u003e from RonnyPfannschmidt/update-classifiers-python-3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/8c23c5b878856e27c50c87e352fa1a78a19e58cc\"\u003e\u003ccode\u003e8c23c5b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1286\"\u003e#1286\u003c/a\u003e from effigies/scm_version_sentinel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/629842a6018c5966ab70a84c8e973fbc46c65fb1\"\u003e\u003ccode\u003e629842a\u003c/code\u003e\u003c/a\u003e build: update trove classifiers and add Python 3.14 support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/6a1fc3b37555b3a42dcfdfc467f0d32cb30d8809\"\u003e\u003ccode\u003e6a1fc3b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1318\"\u003e#1318\u003c/a\u003e from pypa/release/main\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/a63b13afea203ffc031891e2149ca4b67c00cbd1\"\u003e\u003ccode\u003ea63b13a\u003c/code\u003e\u003c/a\u003e Prepare release: setuptools-scm v10.0.4, vcs-versioning v1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools-scm/commit/59275f77f198cceb8cde47dddc2e4b9d4500edfe\"\u003e\u003ccode\u003e59275f7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools-scm/issues/1325\"\u003e#1325\u003c/a\u003e from RonnyPfannschmidt/issue-1302-setuptools-build-b...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools-scm/compare/v9.2.2...setuptools-scm-v10.0.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `geopandas` from 1.1.2 to 1.1.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/geopandas/geopandas/releases\"\u003egeopandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.1.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eThis release addresses a handful of small compatibility issues with pandas 3.0 and backports some bugfixes.\u003c/p\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImproved compatibility with pandas 3.0 Copy-on-Write feature, making use of deferred copies where possible (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3298\"\u003e#3298\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3711\"\u003e#3711\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eGeoSeries.sample_points\u003c/code\u003e not accepting list-like \u003ccode\u003esize\u003c/code\u003e when generating points using\n\u003ccode\u003epointpaterns\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3710\"\u003e#3710\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efrom_wkt/wkb\u003c/code\u003e to correctly handle missing values with pandas 3 (where the new \u003ccode\u003estr\u003c/code\u003e dtype is used) (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3714\"\u003e#3714\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eto_postgis\u003c/code\u003e to correctly handle missing values with pandas 3 (where the new \u003ccode\u003estr\u003c/code\u003e dtype is used) (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3722\"\u003e#3722\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUsing \u003ccode\u003eloc\u003c/code\u003e to assign column values to a new row index now correctly preserves the column CRS and geometry dtype\non pandas 3.1, due to an upstream bug fix (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3741\"\u003e#3741\u003c/a\u003e, Pandas \u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/62523\"\u003e#62523\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRandom states in \u003ccode\u003epointpats\u003c/code\u003e methods of \u003ccode\u003esample_points\u003c/code\u003e can now be fixed with \u003ccode\u003erng\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3737\"\u003e#3737\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/geopandas/geopandas/compare/v1.1.2...v1.1.3\"\u003ehttps://github.com/geopandas/geopandas/compare/v1.1.2...v1.1.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/geopandas/geopandas/blob/main/CHANGELOG.md\"\u003egeopandas's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.1.3 (March 10, 2026)\u003c/h2\u003e\n\u003cp\u003eThis release addresses a handful of small compatibility issues with pandas 3.0 and backports some bugfixes.\u003c/p\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eImproved compatibility with pandas 3.0 Copy-on-Write feature, making use of deferred copies where possible (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3298\"\u003e#3298\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3711\"\u003e#3711\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eGeoSeries.sample_points\u003c/code\u003e not accepting list-like \u003ccode\u003esize\u003c/code\u003e when generating points using\n\u003ccode\u003epointpaterns\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3710\"\u003e#3710\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efrom_wkt/wkb\u003c/code\u003e to correctly handle missing values with pandas 3 (where the new \u003ccode\u003estr\u003c/code\u003e dtype is used) (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3714\"\u003e#3714\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eto_postgis\u003c/code\u003e to correctly handle missing values with pandas 3 (where the new \u003ccode\u003estr\u003c/code\u003e dtype is used) (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3722\"\u003e#3722\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eUsing \u003ccode\u003eloc\u003c/code\u003e to assign column values to a new row index now correctly preserves the column CRS and geometry dtype\non pandas 3.1, due to an upstream bug fix (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3741\"\u003e#3741\u003c/a\u003e, Pandas \u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/62523\"\u003e#62523\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRandom states in \u003ccode\u003epointpats\u003c/code\u003e methods of \u003ccode\u003esample_points`` can now be fixed with \u003c/code\u003erng` (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3737\"\u003e#3737\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/geopandas/geopandas/commit/f5fe3ff5f0e473603cd0e81673d9f1f300f4975d\"\u003e\u003ccode\u003ef5fe3ff\u003c/code\u003e\u003c/a\u003e RLS: v1.1.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/c1046702f4444659cb9cf3d8cb389ecd45c35e3c\"\u003e\u003ccode\u003ec104670\u003c/code\u003e\u003c/a\u003e pointpats \u0026lt;2.5.3 test compat\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/af36b140f911641e9a7909e3be76e766d7383c22\"\u003e\u003ccode\u003eaf36b14\u003c/code\u003e\u003c/a\u003e ENH: add \u003ccode\u003epointpats\u003c/code\u003e as an optional dependency \u0026amp; pass in \u003ccode\u003erng\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3737\"\u003e#3737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/d9ed84a9d4e33524498eac197d11ece3ba67637e\"\u003e\u003ccode\u003ed9ed84a\u003c/code\u003e\u003c/a\u003e COMPAT: fix failing test for loc concatenation crs preservation with pandas 3...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/1b1ddc23796bbe06589f2262d548219d0b065daf\"\u003e\u003ccode\u003e1b1ddc2\u003c/code\u003e\u003c/a\u003e MAINT: use trusted publishing for releasing to PyPI (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3734\"\u003e#3734\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/8d0c05dbd588031f9c10913b3302b2d347dc9e8e\"\u003e\u003ccode\u003e8d0c05d\u003c/code\u003e\u003c/a\u003e changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/a424f1750945bcc9a6c6122c7aca8b0829202201\"\u003e\u003ccode\u003ea424f17\u003c/code\u003e\u003c/a\u003e Avoid returning deep copies with pandas 3.0 (with Copy-on-Write) (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3298\"\u003e#3298\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/03fa43e9029ced09314b915277309e7fee7097ba\"\u003e\u003ccode\u003e03fa43e\u003c/code\u003e\u003c/a\u003e MAINT: cleanup release warning for project.license table (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3603\"\u003e#3603\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/29fdb3057195aa4cb7adbd771425e3a47ad52b66\"\u003e\u003ccode\u003e29fdb30\u003c/code\u003e\u003c/a\u003e CI: remove usage of PANDAS_FUTURE_INFER_STRINGS=0 (\u003ca href=\"https://redirect.github.com/geopandas/geopandas/issues/3715\"\u003e#3715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/geopandas/geopandas/commit/9070e1346fc070ee077cb7027f6fa7737391402e\"\u003e\u003ccode\u003e9070e13\u003c/code\u003e\u003c/a\u003e missing changelog entries\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/geopandas/geopandas/compare/v1.1.2...v1.1.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.5 to 2.33.1\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.33.1\u003c/h2\u003e\n\u003ch2\u003e2.33.1 (2026-03-30)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed test cleanup for CVE-2026-25645 to avoid leaving unnecessary\nfiles in the tmp directory. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed Content-Type header parsing for malformed values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved error consistency for malformed header values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\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/ferdnyc\"\u003e\u003ccode\u003e@​ferdnyc\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7277\"\u003epsf/requests#7277\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#2331-2026-03-30\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2331-2026-03-30\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.33.0\u003c/h2\u003e\n\u003ch2\u003e2.33.0 (2026-03-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e📣 Requests is adding inline types. If you have a typed code base that uses Requests, please take a look at \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003e#7271\u003c/a\u003e. Give it a try, and report any gaps or feedback you may have in the issue. 📣\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2026-25645 \u003ccode\u003erequests.utils.extract_zipped_paths\u003c/code\u003e now extracts contents to a non-deterministic location to prevent malicious file replacement. This does not affect default usage of Requests, only applications calling the utility function directly.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated to a PEP 517 build system using setuptools. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7012\"\u003e#7012\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\u003eFixed an issue where an empty netrc entry could cause malformed authentication to be applied to Requests on Python 3.11+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7205\"\u003e#7205\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for Python 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7196\"\u003e#7196\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDocumentation\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eVarious typo fixes and doc improvements.\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/M0d3v1\"\u003e\u003ccode\u003e@​M0d3v1\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/6865\"\u003epsf/requests#6865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aminvakil\"\u003e\u003ccode\u003e@​aminvakil\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7220\"\u003epsf/requests#7220\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/E8Price\"\u003e\u003ccode\u003e@​E8Price\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/6960\"\u003epsf/requests#6960\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mitre88\"\u003e\u003ccode\u003e@​mitre88\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7244\"\u003epsf/requests#7244\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/magsen\"\u003e\u003ccode\u003e@​magsen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/6553\"\u003epsf/requests#6553\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Rohan5commit\"\u003e\u003ccode\u003e@​Rohan5commit\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/psf/requests/pull/7227\"\u003epsf/requests#7227\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#2330-2026-03-25\"\u003ehttps://github.com/psf/requests/blob/main/HISTORY.md#2330-2026-03-25\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/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.33.1 (2026-03-30)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed test cleanup for CVE-2026-25645 to avoid leaving unnecessary\nfiles in the tmp directory. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed Content-Type header parsing for malformed values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved error consistency for malformed header values. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.33.0 (2026-03-25)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eAnnouncements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e📣 Requests is adding inline types. If you have a typed code base that\nuses Requests, please take a look at \u003ca href=\"https://redirect.github.com/psf/requests/issues/7271\"\u003e#7271\u003c/a\u003e. Give it a try, and report\nany gaps or feedback you may have in the issue. 📣\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2026-25645 \u003ccode\u003erequests.utils.extract_zipped_paths\u003c/code\u003e now extracts\ncontents to a non-deterministic location to prevent malicious file\nreplacement. This does not affect default usage of Requests, only\napplications calling the utility function directly.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eMigrated to a PEP 517 build system using setuptools. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7012\"\u003e#7012\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\u003eFixed an issue where an empty netrc entry could cause\nmalformed authentication to be applied to Requests on\nPython 3.11+. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7205\"\u003e#7205\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for Python 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7196\"\u003e#7196\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDocumentation\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eVarious typo fixes and doc improvements.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/111d2b77790bf49943c0dfa09b365371c24aec7e\"\u003e\u003ccode\u003e111d2b7\u003c/code\u003e\u003c/a\u003e v2.33.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/f0198e6dfc431a2293dc16e1b1e8fcddc910a7f3\"\u003e\u003ccode\u003ef0198e6\u003c/code\u003e\u003c/a\u003e Fix malformed value parsing for Content-Type (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7309\"\u003e#7309\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/bc7dd0fc4d56e808bcdd85ac2d797b3107c89259\"\u003e\u003ccode\u003ebc7dd0f\u003c/code\u003e\u003c/a\u003e Fix cosmetic header validity parsing regex (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7308\"\u003e#7308\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4443b1a847b190010c2972a658924b98b5db6360\"\u003e\u003ccode\u003e4443b1a\u003c/code\u003e\u003c/a\u003e Fix unintended test extra (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7306\"\u003e#7306\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/389eea58dfb2f2ee096421a812e3af29c0298951\"\u003e\u003ccode\u003e389eea5\u003c/code\u003e\u003c/a\u003e Cleanup extracted file after extract_zipped_path test (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7305\"\u003e#7305\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7407309c8a8a73aa2f4337184025d440bbedab7a\"\u003e\u003ccode\u003e7407309\u003c/code\u003e\u003c/a\u003e Packaging: DRY out extras definition (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7277\"\u003e#7277\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/bc04dfd6dad4cb02cd92f5daa81eb562d280a761\"\u003e\u003ccode\u003ebc04dfd\u003c/code\u003e\u003c/a\u003e v2.33.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/66d21cb07bd6255b1280291c4fafb71803cdb3b7\"\u003e\u003ccode\u003e66d21cb\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/8b9bc8fc0f63be84602387913c4b689f19efd028\"\u003e\u003ccode\u003e8b9bc8f\u003c/code\u003e\u003c/a\u003e Move badges to top of README (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7293\"\u003e#7293\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/e331a288f369973f5de0ec8901c94cae4fa87286\"\u003e\u003ccode\u003ee331a28\u003c/code\u003e\u003c/a\u003e Remove unused extraction call (\u003ca href=\"https://redirect.github.com/psf/requests/issues/7292\"\u003e#7292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.5...v2.33.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `numpy` from 2.4.2 to 2.4.4\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\u003e2.4.4 (Mar 29, 2026)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.4.4 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.4.4 is a patch release that fixes bugs discovered after the 2.4.3\nrelease. It should finally close issue \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30816\"\u003e#30816\u003c/a\u003e, the OpenBLAS threading problem\non ARM.\u003c/p\u003e\n\u003cp\u003eThis release supports Python versions 3.11-3.14\u003c/p\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eA total of 8 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\u003eCharles Harris\u003c/li\u003e\n\u003cli\u003eDaniel Haag +\u003c/li\u003e\n\u003cli\u003eDenis Prokopenko +\u003c/li\u003e\n\u003cli\u003eHarshith J +\u003c/li\u003e\n\u003cli\u003eKoki Watanabe\u003c/li\u003e\n\u003cli\u003eMarten van Kerkwijk\u003c/li\u003e\n\u003cli\u003eMatti Picus\u003c/li\u003e\n\u003cli\u003eNathan Goldbaum\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ePull requests merged\u003c/h2\u003e\n\u003cp\u003eA total of 7 pull requests were merged for this release.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30978\"\u003e#30978\u003c/a\u003e: MAINT: Prepare 2.4.x for further development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31049\"\u003e#31049\u003c/a\u003e: BUG: Add test to reproduce problem described in \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30816\"\u003e#30816\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30818\"\u003e#30818\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31052\"\u003e#31052\u003c/a\u003e: BUG: fix FNV-1a 64-bit selection by using NPY_SIZEOF_UINTP (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31035\"\u003e#31035\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31053\"\u003e#31053\u003c/a\u003e: BUG: avoid warning on ufunc with where=True and no output\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31058\"\u003e#31058\u003c/a\u003e: DOC: document caveats of ndarray.resize on 3.14 and newer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31079\"\u003e#31079\u003c/a\u003e: TST: fix POWER VSX feature mapping (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30801\"\u003e#30801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/31084\"\u003e#31084\u003c/a\u003e: MAINT: numpy.i: Replace deprecated \u003ccode\u003esprintf\u003c/code\u003e with \u003ccode\u003esnprintf\u003c/code\u003e...\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.4.3 (Mar 9, 2026)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.4.3 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.4.3 is a patch release that fixes bugs discovered after the\n2.4.2 release. The most user visible fix may be a threading fix for\nOpenBLAS on ARM, closing issue \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30816\"\u003e#30816\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis release supports Python versions 3.11-3.14\u003c/p\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eA total of 11 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\u003eAntareep Sarkar +\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/be93fe2960dbf49b4647f5783c66d967fb2c65b5\"\u003e\u003ccode\u003ebe93fe2\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31090\"\u003e#31090\u003c/a\u003e from charris/prepare-2.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/f5245dc7ea5c6279c59cb0d5de81113229841290\"\u003e\u003ccode\u003ef5245dc\u003c/code\u003e\u003c/a\u003e REL: Prepare for the NumPy 2.4.4 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/02e838ba270a5ca3dd8afc5a31c090cd34a56615\"\u003e\u003ccode\u003e02e838b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31084\"\u003e#31084\u003c/a\u003e from charris/backport-31056\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/fa74b2d05f8f7604bf6635d5280c3216c8ec667f\"\u003e\u003ccode\u003efa74b2d\u003c/code\u003e\u003c/a\u003e MAINT: numpy.i: Replace deprecated \u003ccode\u003esprintf\u003c/code\u003e with \u003ccode\u003esnprintf\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31056\"\u003e#31056\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/533a6db96dfa2556a61102a58c35fd64eaf3fa2b\"\u003e\u003ccode\u003e533a6db\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31079\"\u003e#31079\u003c/a\u003e from charris/backport-20801\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/9e496cbd0a281195bd779ae1833f2a8f4a1d46a7\"\u003e\u003ccode\u003e9e496cb\u003c/code\u003e\u003c/a\u003e TST: fix POWER VSX feature mapping (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30801\"\u003e#30801\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/8052c4b69ef18e582709af946f93f9e58b848f39\"\u003e\u003ccode\u003e8052c4b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/31058\"\u003e#31058\u003c/a\u003e from charris/backport-31021\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/7f13b5ad2b69fd6ea6aa3af7036b2dcf98e96486\"\u003e\u003ccode\u003e7f13b5a\u003c/code\u003e\u003c/a\u003e MAINT: Skip test on PyPy.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/4c5fdd66c8f379a1e2b3f40fa62bd0b87769d1c7\"\u003e\u003ccode\u003e4c5fdd6\u003c/code\u003e\u003c/a\u003e MAINT: Remove unused import of tracemalloc.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/a3ca5ed354b26e0fd6e35bf29765a24271ed7c3a\"\u003e\u003ccode\u003ea3ca5ed\u003c/code\u003e\u003c/a\u003e Update numpy/_core/src/multiarray/shape.c\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/numpy/numpy/compare/v2.4.2...v2.4.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.42.61 to 1.42.78\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b5acf8b4da83625fe3a4bbc37f44d3563a90bedb\"\u003e\u003ccode\u003eb5acf8b\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.78'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/1da17a5f5f168ca19917cb3b5c1389b1918c1a6e\"\u003e\u003ccode\u003e1da17a5\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.78\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/e298b6480047c39f047a9805ce5a69654eda2c2b\"\u003e\u003ccode\u003ee298b64\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/48369eaf9203ac46d0621f2a6506cbfa369c3cff\"\u003e\u003ccode\u003e48369ea\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.77'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/8c30411a442a21b8bccc9eb2fde60ab76751ef35\"\u003e\u003ccode\u003e8c30411\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.77' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/4398c8e0aee88fe1c5aacb415683e75ccde1b3a3\"\u003e\u003ccode\u003e4398c8e\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.77\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/7c449e2e3bfea638a8cf9892ba8096ec1ff4d565\"\u003e\u003ccode\u003e7c449e2\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/ee6c3e4e4ccc20774293d6b4022a17abe495a28f\"\u003e\u003ccode\u003eee6c3e4\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.76'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/a5ad9c3e75cf3ace6b3368c60c9b325d33ca2975\"\u003e\u003ccode\u003ea5ad9c3\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.76' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/1abf6403e3a0a63520ca4b3db62428061ef17cf2\"\u003e\u003ccode\u003e1abf640\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.76\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.42.61...1.42.78\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `botocore` from 1.42.61 to 1.42.78\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/08282cde6cf5488e3b424166280fdb6e68b01c35\"\u003e\u003ccode\u003e08282cd\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.78'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/059d997154533c9d417daebe977cdf2df46b94ef\"\u003e\u003ccode\u003e059d997\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.78\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/9e1c51150b220d32bff523011a69619be1b94d7c\"\u003e\u003ccode\u003e9e1c511\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/a42e6cf913b10093f670945aaf4c6096c729bdeb\"\u003e\u003ccode\u003ea42e6cf\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.77'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/ea561b33ce319983952f5b5e4d56d51785a933e8\"\u003e\u003ccode\u003eea561b3\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.77' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/7906a347486cf8213b27fbf0ffd7620ae181efec\"\u003e\u003ccode\u003e7906a34\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.77\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/7f9c3cd08ae7e1780d56b9402aa9738e6af881e4\"\u003e\u003ccode\u003e7f9c3cd\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/1db4cef12c3f2e2aad98468af231dc0bcbf95353\"\u003e\u003ccode\u003e1db4cef\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/eded7cee23beeb96b4bb2ab47c0ab97c6312e87f\"\u003e\u003ccode\u003eeded7ce\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.76'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/85f623c331079298dd89aafd75ad33626d2a15b5\"\u003e\u003ccode\u003e85f623c\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.76' into develop\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/botocore/compare/1.42.61...1.42.78\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asf-search` from 12.0.2 to 12.0.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/releases\"\u003easf-search's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev12.0.6\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.5...v12.0.6\"\u003ev12.0.6\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e module added as top level module\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_nisar_orbit_ephemeras()\u003c/code\u003e method returns dictionary with latest \u003ccode\u003eNISAR\u003c/code\u003e \u003ccode\u003ePOE\u003c/code\u003e, \u003ccode\u003eMOE\u003c/code\u003e, \u003ccode\u003eNOE\u003c/code\u003e, and \u003ccode\u003eFOE\u003c/code\u003e orbit ephemeras\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix track based searches when \u003ccode\u003eprocessingLevel\u003c/code\u003e specified on \u003ccode\u003eNISAR\u003c/code\u003e dataset searches\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.5\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.4...v12.0.5\"\u003ev12.0.5\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDIST-ALERT-S1 product type to OPERA dataset\n\u003cul\u003e\n\u003cli\u003eTileID searchable attribute\u003c/li\u003e\n\u003cli\u003eproductVersion attribute\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix edge-case with \u003ccode\u003eplatform\u003c/code\u003e \u0026amp; \u003ccode\u003eprocessingLevel\u003c/code\u003e concept-id aliasing\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.3...v12.0.4\"\u003ev12.0.4\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003eNISAR\u003c/code\u003e dataset/platform concept-ids\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev12.0.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.2...v12.0.3\"\u003ev12.0.3\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eariaVersion\u003c/code\u003e as a searchable attribute\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eorbitType\u003c/code\u003e to \u003ccode\u003eNISARProduct\u003c/code\u003e properties dictionary\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/asfadmin/Discovery-asf_search/blob/master/CHANGELOG.md\"\u003easf-search's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.5...v12.0.6\"\u003ev12.0.6\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eutils\u003c/code\u003e module added as top level module\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_nisar_orbit_ephemeras()\u003c/code\u003e method returns dictionary with latest \u003ccode\u003eNISAR\u003c/code\u003e \u003ccode\u003ePOE\u003c/code\u003e, \u003ccode\u003eMOE\u003c/code\u003e, \u003ccode\u003eNOE\u003c/code\u003e, and \u003ccode\u003eFOE\u003c/code\u003e orbit ephemeras\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix track based searches when \u003ccode\u003eprocessingLevel\u003c/code\u003e specified on \u003ccode\u003eNISAR\u003c/code\u003e dataset searches\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.4...v12.0.5\"\u003ev12.0.5\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDIST-ALERT-S1 product type to OPERA dataset\n\u003cul\u003e\n\u003cli\u003eTileID searchable attribute\u003c/li\u003e\n\u003cli\u003eproductVersion attribute\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix edge-case with \u003ccode\u003eplatform\u003c/code\u003e \u0026amp; \u003ccode\u003eprocessingLevel\u003c/code\u003e concept-id aliasing\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.3...v12.0.4\"\u003ev12.0.4\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated \u003ccode\u003eNISAR\u003c/code\u003e dataset/platform concept-ids\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.2...v12.0.3\"\u003ev12.0.3\u003c/a\u003e\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eariaVersion\u003c/code\u003e as a searchable attribute\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eorbitType\u003c/code\u003e to \u003ccode\u003eNISARProduct\u003c/code\u003e properties dictionary\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/0f8226f7d7f36fcca5bb28d111636d6e7abbbfc8\"\u003e\u003ccode\u003e0f8226f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/440\"\u003e#440\u003c/a\u003e from asfadmin/feat-nisar-oe-helper\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/47e6593b8ee5530077022f43a0600e7c421350db\"\u003e\u003ccode\u003e47e6593\u003c/code\u003e\u003c/a\u003e feat: adds utils module with get_nisar_orbit_ephemeras() method.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/66fadbb5bc968acec0f095b565dccc244879c79e\"\u003e\u003ccode\u003e66fadbb\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/439\"\u003e#439\u003c/a\u003e from asfadmin/bug-nisar-track-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/95cc06762259f72db17381748091aa54eb658c72\"\u003e\u003ccode\u003e95cc067\u003c/code\u003e\u003c/a\u003e chore: update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/1f601edbe40ce14756c3c98cb853e35e8e5761c1\"\u003e\u003ccode\u003e1f601ed\u003c/code\u003e\u003c/a\u003e bug: fix regression with frame search\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/bb7dfaaae1dc35449a6e7369f3e7726d2969fb03\"\u003e\u003ccode\u003ebb7dfaa\u003c/code\u003e\u003c/a\u003e chore: add todo comment for nsiar frame bug\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/6ec9957bbff797283f820fd3f90dcab6cd1b0335\"\u003e\u003ccode\u003e6ec9957\u003c/code\u003e\u003c/a\u003e fix: fix track not working when only specificying nisar dataset\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/3efaa2862ac61c9bd1fcbfcea6bca5d472f90656\"\u003e\u003ccode\u003e3efaa28\u003c/code\u003e\u003c/a\u003e test: update authenticated NISAR test case\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/3e3d5777440aaff9303a247dbfa8c7f3b5c04078\"\u003e\u003ccode\u003e3e3d577\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/asfadmin/Discovery-asf_search/issues/437\"\u003e#437\u003c/a\u003e from asfadmin/feat-opera-dist\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/commit/9e0f3e86acfd67a0483f3e01e3de2909ac64f5b5\"\u003e\u003ccode\u003e9e0f3e8\u003c/code\u003e\u003c/a\u003e fix: add tileID to search.py\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/asfadmin/Discovery-asf_search/compare/v12.0.2...v12.0.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cfn-lint` from 1.46.0 to 1.47.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/releases\"\u003ecfn-lint's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease v1.47.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ca href=\"https://github.com/aws-cloudformation/cfn-python-lint/blob/main/docs/rules.md#E3677\"\u003eE3063\u003c/a\u003e false positive when Code is a string (aws-cli pattern) by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4399\"\u003eaws-cloudformation/cfn-lint#4399\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCap resolve_value permutations to prevent exponential blowup by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4394\"\u003eaws-cloudformation/cfn-lint#4394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: maintenance guardduty policy by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4400\"\u003eaws-cloudformation/cfn-lint#4400\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eEngineVersion\u003c/code\u003e of \u003ccode\u003e8.0.0\u003c/code\u003e to DocDB Cluster by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4401\"\u003eaws-cloudformation/cfn-lint#4401\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport multi-attribute composite keys in DynamoDB GSI KeySchema by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4402\"\u003eaws-cloudformation/cfn-lint#4402\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow JSONata string expressions for Arguments in Step Functions by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4403\"\u003eaws-cloudformation/cfn-lint#4403\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-24\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4404\"\u003eaws-cloudformation/cfn-lint#4404\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/compare/v1.47.0...v1.47.1\"\u003ehttps://github.com/aws-cloudformation/cfn-lint/compare/v1.47.0...v1.47.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eRelease v1.47.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove Python 3.9 support (EOL October 2025) by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4383\"\u003eaws-cloudformation/cfn-lint#4383\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add region filtering to --update-specs by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4382\"\u003eaws-cloudformation/cfn-lint#4382\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd unknown validation state for intrinsic functions in composite validators by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4384\"\u003eaws-cloudformation/cfn-lint#4384\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-10\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4381\"\u003eaws-cloudformation/cfn-lint#4381\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix/skip resolve unconstrained schema by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4388\"\u003eaws-cloudformation/cfn-lint#4388\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump setuptools from 82.0.0 to 82.0.1 in /requirements 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/aws-cloudformation/cfn-lint/pull/4385\"\u003eaws-cloudformation/cfn-lint#4385\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-13\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4386\"\u003eaws-cloudformation/cfn-lint#4386\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/compare/v1.46.0...v1.47.0\"\u003ehttps://github.com/aws-cloudformation/cfn-lint/compare/v1.46.0...v1.47.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/aws-cloudformation/cfn-lint/blob/main/CHANGELOG.md\"\u003ecfn-lint's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003ev1.47.1\u003c/h3\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ca href=\"https://github.com/aws-cloudformation/cfn-python-lint/blob/main/docs/rules.md#E3677\"\u003eE3063\u003c/a\u003e false positive when Code is a string (aws-cli pattern) by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4399\"\u003eaws-cloudformation/cfn-lint#4399\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCap resolve_value permutations to prevent exponential blowup by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4394\"\u003eaws-cloudformation/cfn-lint#4394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: maintenance guardduty policy by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4400\"\u003eaws-cloudformation/cfn-lint#4400\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eEngineVersion\u003c/code\u003e of \u003ccode\u003e8.0.0\u003c/code\u003e to DocDB Cluster by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4401\"\u003eaws-cloudformation/cfn-lint#4401\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport multi-attribute composite keys in DynamoDB GSI KeySchema by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4402\"\u003eaws-cloudformation/cfn-lint#4402\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow JSONata string expressions for Arguments in Step Functions by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4403\"\u003eaws-cloudformation/cfn-lint#4403\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-24\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4404\"\u003eaws-cloudformation/cfn-lint#4404\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/compare/v1.47.0...v1.47.1\"\u003ehttps://github.com/aws-cloudformation/cfn-lint/compare/v1.47.0...v1.47.1\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003ev1.47.0\u003c/h3\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove Python 3.9 support (EOL October 2025) by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4383\"\u003eaws-cloudformation/cfn-lint#4383\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat: add region filtering to --update-specs by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4382\"\u003eaws-cloudformation/cfn-lint#4382\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd unknown validation state for intrinsic functions in composite validators by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4384\"\u003eaws-cloudformation/cfn-lint#4384\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-10\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4381\"\u003eaws-cloudformation/cfn-lint#4381\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix/skip resolve unconstrained schema by \u003ca href=\"https://github.com/kddejong\"\u003e\u003ccode\u003e@​kddejong\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4388\"\u003eaws-cloudformation/cfn-lint#4388\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): bump setuptools from 82.0.0 to 82.0.1 in /requirements 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/aws-cloudformation/cfn-lint/pull/4385\"\u003eaws-cloudformation/cfn-lint#4385\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CloudFormation schemas to \u003ccode\u003e2026-03-13\u003c/code\u003e by \u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/pull/4386\"\u003eaws-cloudformation/cfn-lint#4386\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/compare/v1.46.0...v1.47.0\"\u003ehttps://github.com/aws-cloudformation/cfn-lint/compare/v1.46.0...v1.47.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/aws-cloudformation/cfn-lint/commit/a35195334db17554ab3f899ef3ea875ff4dd3cbe\"\u003e\u003ccode\u003ea351953\u003c/code\u003e\u003c/a\u003e Release v1.47.1 (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4407\"\u003e#4407\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/753166bf1b0c38aeb5a71cfc12fe9e0b16f15dfc\"\u003e\u003ccode\u003e753166b\u003c/code\u003e\u003c/a\u003e Update CloudFormation schemas to 2026-03-24 (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/e0b701457e08db65d2b5307fbb7f02cb2da684d0\"\u003e\u003ccode\u003ee0b7014\u003c/code\u003e\u003c/a\u003e Allow JSONata string expressions for Arguments in Step Functions (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4403\"\u003e#4403\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/99dcefb6786f7e4b2447f7206836bb113d9c0fac\"\u003e\u003ccode\u003e99dcefb\u003c/code\u003e\u003c/a\u003e Support multi-attribute composite keys in DynamoDB GSI KeySchema (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4402\"\u003e#4402\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/001d1d178d685af19f91a55cd81fc418c236b7db\"\u003e\u003ccode\u003e001d1d1\u003c/code\u003e\u003c/a\u003e Add EngineVersion of 8.0.0 to DocDB Cluster (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/5d6f815ab3e7e13c96725236bca31f7d3d584d56\"\u003e\u003ccode\u003e5d6f815\u003c/code\u003e\u003c/a\u003e Fix KeyError when AmazonGuardDutyFullAccess policy no longer exists (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4400\"\u003e#4400\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/bb96eb39dd0093d73f9852c119fde00e8285db98\"\u003e\u003ccode\u003ebb96eb3\u003c/code\u003e\u003c/a\u003e Cap resolve_value permutations to prevent exponential blowup (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4394\"\u003e#4394\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/4aafe3a199eeddc1959d43cfeb836439d85fe9fe\"\u003e\u003ccode\u003e4aafe3a\u003c/code\u003e\u003c/a\u003e Fix E3677 false positive when Code is a string (aws-cli pattern) (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4399\"\u003e#4399\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/e69698a394daf7116d3ef585ac63b5e22956df6d\"\u003e\u003ccode\u003ee69698a\u003c/code\u003e\u003c/a\u003e Release v1.47.0 (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4391\"\u003e#4391\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/commit/d54d24bcb35043456dca0361076d5ee474f661ed\"\u003e\u003ccode\u003ed54d24b\u003c/code\u003e\u003c/a\u003e Update CloudFormation schemas to 2026-03-13 (\u003ca href=\"https://redirect.github.com/aws-cloudformation/cfn-lint/issues/4386\"\u003e#4386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws-cloudformation/cfn-lint/compare/v1.46.0...v1.47.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.15.4 to 0.15.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.8\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-26.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003eunnecessary-if\u003c/code\u003e (\u003ccode\u003eRUF050\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24114\"\u003e#24114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003euseless-finally\u003c/code\u003e (\u003ccode\u003eRUF072\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24165\"\u003e#24165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003ef-string-percent-format\u003c/code\u003e (\u003ccode\u003eRUF073\u003c/code\u003e): warn when using \u003ccode\u003e%\u003c/code\u003e operator on an f-string (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24162\"\u003e#24162\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Recognize \u003ccode\u003efrozendict\u003c/code\u003e as a builtin for Python 3.15+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24100\"\u003e#24100\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] Use fully-qualified \u003ccode\u003eanyio.lowlevel\u003c/code\u003e import in autofix (\u003ccode\u003eASYNC115\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24166\"\u003e#24166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Check tuple arguments for partial paths in \u003ccode\u003eS607\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24080\"\u003e#24080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Skip \u003ccode\u003eundefined-name\u003c/code\u003e (\u003ccode\u003eF821\u003c/code\u003e) for conditionally deleted variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24088\"\u003e#24088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eE501\u003c/code\u003e/\u003ccode\u003eW505\u003c/code\u003e/formatter: Exclude nested pragma comments from line width calculation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24071\"\u003e#24071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e%foo?\u003c/code\u003e parsing in IPython assignment expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24152\"\u003e#24152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eanalyze graph\u003c/code\u003e: resolve string imports that reference attributes, not just modules (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24058\"\u003e#24058\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eeradicate\u003c/code\u003e] ignore \u003ccode\u003ety: ignore\u003c/code\u003e comments in \u003ccode\u003eERA001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24192\"\u003e#24192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Treat \u003ccode\u003esys.executable\u003c/code\u003e as trusted input in \u003ccode\u003eS603\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24106\"\u003e#24106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Recognize \u003ccode\u003eSelf\u003c/code\u003e annotation and \u003ccode\u003eself\u003c/code\u003e assignment in \u003ccode\u003eSLF001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24144\"\u003e#24144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] \u003ccode\u003eF507\u003c/code\u003e: Fix false negative for non-tuple RHS in \u003ccode\u003e%\u003c/code\u003e-formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24142\"\u003e#24142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Parenthesize generator arguments in \u003ccode\u003eFURB142\u003c/code\u003e fixer (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24200\"\u003e#24200\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up diagnostic rendering (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24146\"\u003e#24146\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWarn when Markdown files are skipped due to preview being disabled (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24150\"\u003e#24150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eClarify \u003ccode\u003eextend-ignore\u003c/code\u003e and \u003ccode\u003eextend-select\u003c/code\u003e settings documentation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24064\"\u003e#24064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMention AI policy in PR template (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24198\"\u003e#24198\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse trusted publishing for NPM packages (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24171\"\u003e#24171\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/bitloi\"\u003e\u003ccode\u003e@​bitloi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Sim-hu\"\u003e\u003ccode\u003e@​Sim-hu\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.15.8\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-26.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003eunnecessary-if\u003c/code\u003e (\u003ccode\u003eRUF050\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24114\"\u003e#24114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003euseless-finally\u003c/code\u003e (\u003ccode\u003eRUF072\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24165\"\u003e#24165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] New rule \u003ccode\u003ef-string-percent-format\u003c/code\u003e (\u003ccode\u003eRUF073\u003c/code\u003e): warn when using \u003ccode\u003e%\u003c/code\u003e operator on an f-string (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24162\"\u003e#24162\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Recognize \u003ccode\u003efrozendict\u003c/code\u003e as a builtin for Python 3.15+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24100\"\u003e#24100\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] Use fully-qualified \u003ccode\u003eanyio.lowlevel\u003c/code\u003e import in autofix (\u003ccode\u003eASYNC115\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24166\"\u003e#24166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Check tuple arguments for partial paths in \u003ccode\u003eS607\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24080\"\u003e#24080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Skip \u003ccode\u003eundefined-name\u003c/code\u003e (\u003ccode\u003eF821\u003c/code\u003e) for conditionally deleted variables (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24088\"\u003e#24088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eE501\u003c/code\u003e/\u003ccode\u003eW505\u003c/code\u003e/formatter: Exclude nested pragma comments from line width calculation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24071\"\u003e#24071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e%foo?\u003c/code\u003e parsing in IPython assignment expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24152\"\u003e#24152\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eanalyze graph\u003c/code\u003e: resolve string imports that reference attributes, not just modules (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24058\"\u003e#24058\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eeradicate\u003c/code\u003e] ignore \u003ccode\u003ety: ignore\u003c/code\u003e comments in \u003ccode\u003eERA001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24192\"\u003e#24192\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Treat \u003ccode\u003esys.executable\u003c/code\u003e as trusted input in \u003ccode\u003eS603\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24106\"\u003e#24106\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-self\u003c/code\u003e] Recognize \u003ccode\u003eSelf\u003c/code\u003e annotation and \u003ccode\u003eself\u003c/code\u003e assignment in \u003ccode\u003eSLF001\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24144\"\u003e#24144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] \u003ccode\u003eF507\u003c/code\u003e: Fix false negative for non-tuple RHS in \u003ccode\u003e%\u003c/code\u003e-formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24142\"\u003e#24142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Parenthesize generator arguments in \u003ccode\u003eFURB142\u003c/code\u003e fixer (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24200\"\u003e#24200\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up diagnostic rendering (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24146\"\u003e#24146\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eServer\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eWarn when Markdown files are skipped due to preview being disabled (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24150\"\u003e#24150\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eClarify \u003ccode\u003eextend-ignore\u003c/code\u003e and \u003ccode\u003eextend-select\u003c/code\u003e settings documentation (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24064\"\u003e#24064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMention AI policy in PR template (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24198\"\u003e#24198\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse trusted publishing for NPM packages (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24171\"\u003e#24171\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/bitloi\"\u003e\u003ccode\u003e@​bitloi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Sim-hu\"\u003e\u003ccode\u003e@​Sim-hu\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\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/c2a8815842f9dc5d24ec19385eae0f1a7188b0d9\"\u003e\u003ccode\u003ec2a8815\u003c/code\u003e\u003c/a\u003e Release 0.15.8 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24217\"\u003e#24217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d444d52e2b9cc8bc9a078c2bd4ff6ff993290209\"\u003e\u003ccode\u003ed444d52\u003c/code\u003e\u003c/a\u003e [ty] Infer lambda expressions with \u003ccode\u003eCallable\u003c/code\u003e type context (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/22633\"\u003e#22633\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/9622285ed0081fc688149f6efca87f127d9b18dd\"\u003e\u003ccode\u003e9622285\u003c/code\u003e\u003c/a\u003e [ty] Autocomplete arguments if in arguments node (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24167\"\u003e#24167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d81266252aaf0820346d55edbed79c4f25ba13d2\"\u003e\u003ccode\u003ed812662\u003c/code\u003e\u003c/a\u003e Use the \u003ccode\u003erelease\u003c/code\u003e environment in \u003ccode\u003epublish-docs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24214\"\u003e#24214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/eda2355832f7a9c58aef6febd3e061dc9c87509a\"\u003e\u003ccode\u003eeda2355\u003c/code\u003e\u003c/a\u003e [ty] Show \u003ccode\u003eFinal\u003c/code\u003e source in final assignment diagnostic (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24194\"\u003e#24194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/929eb5238c82bfadad4549ff526f02efc0163dd0\"\u003e\u003ccode\u003e929eb52\u003c/code\u003e\u003c/a\u003e [ty] Enforce Final attribute assignment rules for annotated and augmented wri...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/34998be22ec3a77d398bbd55234ef8740f768329\"\u003e\u003ccode\u003e34998be\u003c/code\u003e\u003c/a\u003e [ty] Fix typo in comment (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24211\"\u003e#24211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/560aca0b2828ee2ff1b4bcc5c5ef1ef4ced229d2\"\u003e\u003ccode\u003e560aca0\u003c/code\u003e\u003c/a\u003e [ty] Minor simplifications to some benchmark code (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/24209\"\u003e#24209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/683bae512d03d3727a7bcdbc5a0170dafa049583\"\u003e\u003ccode\u003e683bae5\u003c/code\u003e\u003c/a\u003e [ty] Track non-terminal-call constraints in global scope (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23245\"\u003e#23245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/4704c2a4ff3dde2fd29324346720e9516b4fe387\"\u003e\u003ccode\u003e4704c2a\u003c/code\u003e\u003c/a\u003e [ty] Remove unnecessary intermediate collection in `StaticClassLiteral::field...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.15.4...0.15.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `moto` from 5.1.21 to 5.1.22\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getmoto/moto/blob/master/CHANGELOG.md\"\u003emoto's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.1.22\u003c/h2\u003e\n\u003cp\u003eDocker Digest for 5.1.22: \u003cem\u003esha256:1e3802c95726373544967b428201c548f0247c15b00db2d96a5ba0a77d8643b8\u003c/em\u003e\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eNew Methods:\n    * APIGateway:\n        * delete_model()\n\u003cpre\u003e\u003ccode\u003e* Athena:\n    * tag_resource()\n    * untag_resource()\n\n* Pipes:\n    * list_tags_for_resource()\n\n* OSIS:\n    * delete_resource_policy()\n    * get_resource_policy()\n    * put_resource_policy()\n\n* RDS:\n    * copy_db_cluster_parameter_group()\n\n* STS:\n    * get_access_key_info()\n\n* Transfer:\n    * list_servers()\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eMiscellaneous:\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::CloudWatch::Dashboard resources\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::KMS::Alias resources\u003cbr /\u003e\n* CloudFormation now supports the creation/update/deletion of AWS::SSM::Document resources\u003cbr /\u003e\n* EC2: create_fleet() now supports the parameters DryRun and LaunchTemplateConfigs.Overrides\u003cbr /\u003e\n* EC2: describe_network_interfaces() now supports the 'attachment.attachment-id'-filter\u003cbr /\u003e\n* EC2: Instances created from a LaunchTemplate now have the 'aws:ec2launchtemplate:id' and 'aws:ec2launchtemplate:version' tags\u003cbr /\u003e\n* RDS: create_db_cluster_parameter_group() now validates the provided group name/description/familiy\u003cbr /\u003e\n* RDS: delete_db_cluster_parameter_group() now validates that the provided group exists\u003cbr /\u003e\n* S3: delete_object() now supports IfMatch\u003cbr /\u003e\n* SecretsManager: create-secret() now throw ResourceExistsException for duplicate requests with different token (broken since 5.1.11)\u003cbr /\u003e\n* SQS: send_message() now returns the SequenceNumber-attribute\u003cbr /\u003e\n* VPCLattice: list_access_log_subscriptions() now also supports arns as resourceIdentifiers\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\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/getmoto/moto/commit/28d5ca88d9df9ce3e94e2e8b1f1c584646339e61\"\u003e\u003ccode\u003e28d5ca8\u003c/code\u003e\u003c/a\u003e Pre-Release: Up Version Number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/f58dc186374dcf3cd1282f4a5998fedfa2b658a9\"\u003e\u003ccode\u003ef58dc18\u003c/code\u003e\u003c/a\u003e Prep release 5.1.22 (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/84cbb40725122bf252b766a0f601358bedcad6d1\"\u003e\u003ccode\u003e84cbb40\u003c/code\u003e\u003c/a\u003e chore: update SSM default parameters (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9828\"\u003e#9828\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/2f32dc1e3d25998340e1e59fc1145b3f1afc4b55\"\u003e\u003ccode\u003e2f32dc1\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9827\"\u003e#9827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/2a1c7ca7259747d1792dfa055b8433d313af581e\"\u003e\u003ccode\u003e2a1c7ca\u003c/code\u003e\u003c/a\u003e chore: update EC2 Instance Offerings (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9826\"\u003e#9826\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/e063c5a0e91c8afb49e2ccde47ff07c9448db09c\"\u003e\u003ccode\u003ee063c5a\u003c/code\u003e\u003c/a\u003e chore: update EMR Instance Types (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/681b47aab458d90a8deb4ddbe86ef26695526218\"\u003e\u003ccode\u003e681b47a\u003c/code\u003e\u003c/a\u003e API Gateway: implement DeleteModel operation (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9823\"\u003e#9823\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/d652e4ad38ab382e32ab61cf2b319d033cfb6f4a\"\u003e\u003ccode\u003ed652e4a\u003c/code\u003e\u003c/a\u003e STS: implement GetAccessKeyInfo operation (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/40a65202b922fd78c4f4724f34f03cdc1172377d\"\u003e\u003ccode\u003e40a6520\u003c/code\u003e\u003c/a\u003e Implement Athena \u003ccode\u003eTagResource\u003c/code\u003e and \u003ccode\u003eUntagResource\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9796\"\u003e#9796\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getmoto/moto/commit/dc425e8b3d56b7ad84bf9d2820ae89e72d10a4a9\"\u003e\u003ccode\u003edc425e8\u003c/code\u003e\u003c/a\u003e Modernize Java tests (\u003ca href=\"https://redirect.github.com/getmoto/moto/issues/9817\"\u003e#9817\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getmoto/moto/compare/5.1.21...5.1.22\"\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 specifi...\n\n_Description has been truncated_","html_url":"https://github.com/ASFHyP3/its-live-monitoring/pull/352","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ASFHyP3%2Fits-live-monitoring/issues/352","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/352/packages"}}]}