{"id":1679,"name":"sphinx-toolbox","ecosystem":"pip","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox","issues_count":129,"created_at":"2025-06-06T15:01:48.475Z","updated_at":"2025-06-06T15:01:48.475Z","purl":"pkg:pypi/sphinx-toolbox","metadata":{"id":2928659,"name":"sphinx-toolbox","ecosystem":"pypi","description":"Box of handy tools for Sphinx 🧰 📔","homepage":"https://github.com/sphinx-toolbox/sphinx-toolbox","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox","keywords_array":["documentation","sphinx","sphinx-extension"],"namespace":null,"versions_count":114,"first_release_published_at":"2020-09-01T08:35:07.000Z","latest_release_published_at":"2025-05-12T17:11:37.000Z","latest_release_number":"4.0.0","last_synced_at":"2025-06-03T19:50:15.905Z","created_at":"2022-04-10T12:41:16.243Z","updated_at":"2025-06-03T19:50:41.249Z","registry_url":"https://pypi.org/project/sphinx-toolbox/","install_command":"pip install sphinx-toolbox --index-url https://pypi.org/simple","documentation_url":"https://sphinx-toolbox.readthedocs.io/en/latest","metadata":{"funding":null,"documentation":"https://sphinx-toolbox.readthedocs.io/en/latest","classifiers":["Development Status :: 5 - Production/Stable","Framework :: Sphinx :: Extension","Intended Audience :: Developers","License :: OSI Approved :: MIT License","Operating System :: OS Independent","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.7","Programming Language :: Python :: 3.8","Programming Language :: Python :: 3.9","Programming Language :: Python :: Implementation :: CPython","Programming Language :: Python :: Implementation :: PyPy","Topic :: Documentation","Topic :: Documentation :: Sphinx","Topic :: Software Development :: Documentation","Topic :: Software Development :: Libraries :: Python Modules","Topic :: Utilities","Typing :: Typed"],"normalized_name":"sphinx-toolbox"},"repo_metadata":{"id":38018394,"uuid":"289971245","full_name":"sphinx-toolbox/sphinx-toolbox","owner":"sphinx-toolbox","description":"Box of handy tools for Sphinx 🧰 📔","archived":false,"fork":false,"pushed_at":"2025-06-02T19:16:14.000Z","size":2567,"stargazers_count":78,"open_issues_count":22,"forks_count":10,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-06-03T09:53:13.425Z","etag":null,"topics":["documentation","python","sphinx","sphinx-extension"],"latest_commit_sha":null,"homepage":"https://sphinx-toolbox.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/sphinx-toolbox.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":"CONTRIBUTING.rst","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":["domdfcoding"]}},"created_at":"2020-08-24T15:49:30.000Z","updated_at":"2025-06-02T19:16:18.000Z","dependencies_parsed_at":"2023-10-03T05:00:25.680Z","dependency_job_id":"aacb0cd2-6cc3-4701-912b-0565ab55f371","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox","commit_stats":{"total_commits":914,"total_committers":7,"mean_commits":"130.57142857142858","dds":"0.10503282275711157","last_synced_commit":"046c423907433f46b42514cfd92a280b6215d7dc"},"previous_names":[],"tags_count":114,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sphinx-toolbox","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":257793401,"owners_count":22603966,"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":"sphinx-toolbox","name":"sphinx-toolbox","uuid":"75883961","kind":"organization","description":"sphinx-toolbox and friends – handy tools for sphinx.","email":null,"website":null,"location":"United Kingdom","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/75883961?v=4","repositories_count":21,"last_synced_at":"2023-03-06T05:28:22.130Z","metadata":{"has_sponsors_listing":false,"funding":{"github":["domdfcoding"]}},"html_url":"https://github.com/sphinx-toolbox","funding_links":["https://github.com/sponsors/domdfcoding"],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-16T05:30:28.297Z","updated_at":"2023-03-06T05:28:22.145Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sphinx-toolbox","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sphinx-toolbox/repositories"},"tags":[{"name":"v4.0.0","sha":"d1750cf9d19f8f5e7fc5e408f0b50164ac9fad63","kind":"commit","published_at":"2025-05-12T15:27:57.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v4.0.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v4.0.0/manifests"},{"name":"v3.10.0","sha":"e7f4d29d813147d7ef89c2d579eaa53c01fa7074","kind":"commit","published_at":"2025-05-06T15:26:55.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.10.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.10.0/manifests"},{"name":"v3.9.0","sha":"f618c47c05a8b15425e8709160c937923c95d9c6","kind":"commit","published_at":"2025-02-26T11:14:11.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.9.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.9.0/manifests"},{"name":"v3.8.3","sha":"7000df36360144bea710be7cb46a252e4e0f9c8d","kind":"commit","published_at":"2025-02-20T16:55:43.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.8.3","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.8.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.8.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.8.3/manifests"},{"name":"v3.8.2","sha":"c859cb300659afda00cf881f31ebcfc3ffc8d978","kind":"commit","published_at":"2025-02-07T15:02:41.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.8.2","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.8.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.8.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.8.2/manifests"},{"name":"v3.8.1","sha":"e0ebf28cc755b0d090bc65c67e118d3a92a0341f","kind":"commit","published_at":"2024-10-10T09:07:38.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.8.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.8.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.8.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.8.1/manifests"},{"name":"v3.8.0","sha":"fb8eeee6bc0d6b11685085cc713baaa2495f0a1c","kind":"commit","published_at":"2024-08-15T16:06:02.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.8.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.8.0/manifests"},{"name":"v3.7.0","sha":"0ddd1534fb547373568facdfbba54968d4293ff4","kind":"commit","published_at":"2024-07-04T09:44:35.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.7.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.7.0/manifests"},{"name":"v3.6.0","sha":"06db47dfc2d54f15ecb85307fff7ac17a9234bbb","kind":"commit","published_at":"2024-06-24T20:10:54.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.6.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.6.0/manifests"},{"name":"v3.5.0","sha":"76c44463594eecfb7ffd6550c3a4332f3c893271","kind":"commit","published_at":"2023-07-23T22:12:18.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.5.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.5.0/manifests"},{"name":"v3.4.0","sha":"adc729df819babbc59298fbc7785db5754849811","kind":"commit","published_at":"2023-01-23T22:23:03.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.4.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.4.0/manifests"},{"name":"v3.3.0","sha":"697e325c3f83133b21981c4a72d13447563b7a36","kind":"commit","published_at":"2023-01-13T13:48:39.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.3.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.3.0/manifests"},{"name":"v3.2.0","sha":"3378b6f04521f5be43afe5c1133015fec17aeb4f","kind":"commit","published_at":"2022-08-16T19:10:27.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.2.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.2.0/manifests"},{"name":"v3.2.0b1","sha":"5485841ddee5ba7f96b356243fd0783872585f24","kind":"commit","published_at":"2022-08-03T16:59:24.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.2.0b1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.2.0b1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.2.0b1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.2.0b1/manifests"},{"name":"v3.1.2","sha":"6a4b36b486115030eb5d0a86edd8018fc74469d6","kind":"commit","published_at":"2022-06-28T13:53:11.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.1.2","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.1.2/manifests"},{"name":"v3.1.1","sha":"fe5a35d6b4fce617514c4c243ad94fb8bd86b0bf","kind":"commit","published_at":"2022-06-10T06:04:29.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.1.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.1.1/manifests"},{"name":"v3.1.0","sha":"452b167cc231a4d697c9f3b743c5febd28bf1bbd","kind":"commit","published_at":"2022-06-08T12:54:40.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.1.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.1.0/manifests"},{"name":"v3.0.0","sha":"5afe8973f38c9d107249f222bd35a6f1028680f4","kind":"commit","published_at":"2022-05-12T06:07:58.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.0.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.0.0/manifests"},{"name":"v3.0.0a4","sha":"7b7595443af8abeb34b4927103df81ec96c1c371","kind":"commit","published_at":"2022-05-08T06:55:34.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.0.0a4","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.0.0a4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.0.0a4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.0.0a4/manifests"},{"name":"v2.18.3","sha":"2980baf8a024fb7c255035ff2a0aa45519eb9ab0","kind":"commit","published_at":"2022-05-05T17:33:00.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.18.3","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.18.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.18.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.18.3/manifests"},{"name":"v3.0.0a3","sha":"fa62bfceefc5e57c7bc83c4e3889855d59e3a365","kind":"commit","published_at":"2022-05-03T20:59:47.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.0.0a3","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.0.0a3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.0.0a3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.0.0a3/manifests"},{"name":"v3.0.0a2","sha":"54ea036e1244a76df5dabb506b848a2fd4a4bb69","kind":"commit","published_at":"2022-04-28T11:21:36.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.0.0a2","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.0.0a2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.0.0a2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.0.0a2/manifests"},{"name":"v3.0.0a1","sha":"f8c53bb6461fc45919953aa7a61f7bcb718baefd","kind":"commit","published_at":"2022-04-21T11:34:57.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v3.0.0a1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v3.0.0a1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.0.0a1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v3.0.0a1/manifests"},{"name":"v2.18.2","sha":"ca1fa7db02590826f93ff36cd409833134750f7d","kind":"commit","published_at":"2022-04-21T10:18:57.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.18.2","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.18.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.18.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.18.2/manifests"},{"name":"v2.18.1","sha":"2b4430b5a460f263f71de4756fe44870f4221388","kind":"commit","published_at":"2022-04-10T17:52:13.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.18.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.18.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.18.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.18.1/manifests"},{"name":"v2.18.0","sha":"2987080e2d65c0dd2d392dcf7f1f5a904a9231f5","kind":"commit","published_at":"2022-02-28T10:25:16.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.18.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.18.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.18.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.18.0/manifests"},{"name":"v2.17.0","sha":"021fbccdfb3aa15737c8e450c5866ef177a78767","kind":"commit","published_at":"2022-02-09T10:40:51.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.17.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.17.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.17.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.17.0/manifests"},{"name":"v2.16.1","sha":"22e45c593181d1ea28356f1ef4d9256dee02c21b","kind":"commit","published_at":"2022-01-21T22:57:12.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.16.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.16.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.16.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.16.1/manifests"},{"name":"v2.16.0","sha":"22960e9696a7b54dc53cd3a3b64ee12a24413ba6","kind":"commit","published_at":"2022-01-17T20:25:11.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.16.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.16.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.16.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.16.0/manifests"},{"name":"v2.16.0b1","sha":"33b03b0d3a03ab659dd609ef538f431053283332","kind":"commit","published_at":"2022-01-16T16:31:01.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.16.0b1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.16.0b1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.16.0b1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.16.0b1/manifests"},{"name":"v2.15.3","sha":"69342cd0140a268757490d58827727bd4e849628","kind":"commit","published_at":"2022-01-11T22:19:03.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.15.3","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.15.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.15.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.15.3/manifests"},{"name":"v2.15.2","sha":"da207918bd163ef1eb55bf4a4b2ea26f91a318f1","kind":"commit","published_at":"2021-12-16T07:04:51.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.15.2","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.15.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.15.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.15.2/manifests"},{"name":"v2.15.1","sha":"a0d418e64ad1da2f17cb28ac9248d431fb076c07","kind":"commit","published_at":"2021-12-02T18:53:42.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.15.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.15.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.15.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.15.1/manifests"},{"name":"v2.15.0","sha":"96789790054d4a8d68e2bf17ad1e32205ede56d8","kind":"commit","published_at":"2021-09-28T19:43:40.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.15.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.15.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.15.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.15.0/manifests"},{"name":"v2.14.1","sha":"4d82301c0903768a4b2cb9fdcb1a6de5294b99ee","kind":"commit","published_at":"2021-09-20T10:33:20.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.14.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.14.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.14.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.14.1/manifests"},{"name":"v2.14.0","sha":"c2faf00d2da45e8d444f685440451d9056f8b965","kind":"commit","published_at":"2021-09-06T19:55:00.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.14.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.14.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.14.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.14.0/manifests"},{"name":"v2.13.0","sha":"57620961a399e03ec2d29d6864b6c816304554ce","kind":"commit","published_at":"2021-07-13T21:40:12.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.13.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.13.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.13.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.13.0/manifests"},{"name":"v2.13.0b3","sha":"4faaaed14ca722cf8ddbe541a68203988592e572","kind":"commit","published_at":"2021-06-20T18:32:07.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.13.0b3","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.13.0b3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.13.0b3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.13.0b3/manifests"},{"name":"v2.13.0b2","sha":"1ab301cdfe92fa8b5abce4b4b05ef723d1710260","kind":"commit","published_at":"2021-06-18T15:59:57.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.13.0b2","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.13.0b2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.13.0b2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.13.0b2/manifests"},{"name":"v2.13.0b1","sha":"bc7de9c647591bf2525915d79f5a85ae904f2584","kind":"commit","published_at":"2021-06-18T07:21:53.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.13.0b1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.13.0b1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.13.0b1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.13.0b1/manifests"},{"name":"v2.10.1","sha":"16f9b82a44ccbe0160fdb3a47a0aa741e62fe0d4","kind":"commit","published_at":"2021-06-16T20:50:40.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.10.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.10.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.10.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.10.1/manifests"},{"name":"v2.12.1","sha":"e8cd48fbaf302508c8ce94c0f09b8b08873b8658","kind":"commit","published_at":"2021-06-12T08:33:33.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.12.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.12.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.12.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.12.1/manifests"},{"name":"v2.12.0","sha":"5a25aec8df04e64e882a152816fec25152caa126","kind":"commit","published_at":"2021-06-06T13:31:09.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.12.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.12.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.12.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.12.0/manifests"},{"name":"v2.11.2","sha":"7211a45200e0297fd99265a5a770dd7a46c99607","kind":"commit","published_at":"2021-05-19T08:47:59.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.11.2","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.11.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.11.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.11.2/manifests"},{"name":"v2.11.1","sha":"6812672ba8b27eeaf3170520b8f2cef1d6608b05","kind":"commit","published_at":"2021-05-18T14:01:41.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.11.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.11.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.11.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.11.1/manifests"},{"name":"v2.11.0","sha":"cfd67fcb14061fe42b63b5a5b1cdb1b70cc8016d","kind":"commit","published_at":"2021-05-17T18:27:54.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.11.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.11.0/manifests"},{"name":"v2.10.0","sha":"0f442a6361cf1a05c1f27b82554ea114ff355033","kind":"commit","published_at":"2021-05-10T12:40:14.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.10.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.10.0/manifests"},{"name":"v2.9.0","sha":"4d003e496de9d74d19f7f16a9f72f40dc28e13b1","kind":"commit","published_at":"2021-05-06T12:17:58.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.9.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.9.0/manifests"},{"name":"v2.8.3","sha":"1895801d482d4a1d38a1f68c2243f27fec19cb7f","kind":"commit","published_at":"2021-05-05T13:53:28.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.8.3","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.8.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.8.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.8.3/manifests"},{"name":"v2.8.2","sha":"7101aab23f704852eff3d85ebb27c296dcccaff4","kind":"commit","published_at":"2021-05-04T21:22:52.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.8.2","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.8.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.8.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.8.2/manifests"},{"name":"v2.8.1","sha":"aad8b6ea32fb902f5c7c350c7c9e6f1906c9c58d","kind":"commit","published_at":"2021-05-04T09:54:13.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.8.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.8.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.8.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.8.1/manifests"},{"name":"v2.8.0","sha":"b57eb5b4d64d428a1a8b1e842676273b3363f33b","kind":"commit","published_at":"2021-05-01T12:30:50.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.8.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.8.0/manifests"},{"name":"v2.7.0","sha":"a210927a0d743a07be2d872fc86a2864f04508d5","kind":"commit","published_at":"2021-04-27T06:20:26.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.7.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.7.0/manifests"},{"name":"v2.6.1","sha":"72e431cbe09ca80db7ec57535e361f95c6dc8bd5","kind":"commit","published_at":"2021-04-24T08:22:24.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.6.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.6.1/manifests"},{"name":"v2.6.0","sha":"287c93950d0708301a0c78bbc01bb104ab1d06d6","kind":"commit","published_at":"2021-04-23T17:49:53.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.6.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.6.0/manifests"},{"name":"v2.5.1","sha":"2f747e8bb2abd169a4812f8c99e61cb73f159d77","kind":"commit","published_at":"2021-04-22T13:11:36.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.5.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.5.1/manifests"},{"name":"v2.5.0","sha":"c96945d9d00e7cb15edd2e52b31632631da9e768","kind":"commit","published_at":"2021-04-22T06:04:31.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.5.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.5.0/manifests"},{"name":"v2.4.1","sha":"92796c7cbadd92b337b15aa6fc13be14f3aeae91","kind":"commit","published_at":"2021-04-14T21:07:39.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.4.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.4.1/manifests"},{"name":"v2.4.0","sha":"249cf91fc46e60ac75b5b0774b969f9ecaa1f3cc","kind":"commit","published_at":"2021-04-14T14:42:29.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.4.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.4.0/manifests"},{"name":"v2.3.1","sha":"e1e0f46ba49b0d685ed380692c5a50a6bcce748e","kind":"commit","published_at":"2021-04-13T14:17:00.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.3.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.3.1/manifests"},{"name":"v2.3.0","sha":"dea6b17cd44b2983e6bd48f795d482aa3a36bc4d","kind":"commit","published_at":"2021-04-04T19:07:36.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.3.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.3.0/manifests"},{"name":"v2.2.0","sha":"6ee8f9b2b358080735e0b34857cfe29f0c64f6b0","kind":"commit","published_at":"2021-03-21T19:53:44.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.2.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.2.0/manifests"},{"name":"v2.1.0","sha":"fb7841d1d53e6bc9fe5be3ef92391ec78ff77365","kind":"commit","published_at":"2021-03-15T08:32:35.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.1.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.1.0/manifests"},{"name":"v2.0.4","sha":"7d8e7112a0c0703cc14aa095c452c554f4f92328","kind":"commit","published_at":"2021-03-11T18:35:18.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.0.4","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.0.4/manifests"},{"name":"v2.0.3","sha":"045ee8d1058db465516c0461abe30507ce042204","kind":"commit","published_at":"2021-03-10T09:22:44.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.0.3","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.0.3/manifests"},{"name":"v2.0.2","sha":"0d7cd5e548d761abef0699bb15739821cd0f177a","kind":"commit","published_at":"2021-02-10T23:23:15.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.0.2","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.0.2/manifests"},{"name":"v2.0.1","sha":"ffabd4b3d4ed41102a46752811b8aa6aaeb11bb7","kind":"commit","published_at":"2021-02-06T10:28:56.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.0.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.0.1/manifests"},{"name":"v2.0.0","sha":"7d075d2c5f2872b2aeae255ea35e7b8fdf77ce62","kind":"commit","published_at":"2021-01-18T13:00:44.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v2.0.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v2.0.0/manifests"},{"name":"v1.9.0","sha":"cb9f8842979161559fcf34f18b38317617a08ec9","kind":"commit","published_at":"2021-01-13T17:13:54.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.9.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.9.0/manifests"},{"name":"v1.8.4","sha":"3205f74e5fc298d2df0bf56ad5efd8c19ab6cae7","kind":"commit","published_at":"2021-01-01T09:52:55.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.8.4","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.8.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.8.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.8.4/manifests"},{"name":"v1.8.3","sha":"6f857b8bc8e739386f40e14f06e79487770bc3ee","kind":"commit","published_at":"2020-12-26T21:31:48.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.8.3","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.8.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.8.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.8.3/manifests"},{"name":"v1.8.2","sha":"743b3dafd89160c36ab265a62d52865c433e03e4","kind":"commit","published_at":"2020-12-08T18:13:23.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.8.2","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.8.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.8.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.8.2/manifests"},{"name":"v1.8.1","sha":"606f1330ce0884231f179d690dbb43ef81771298","kind":"commit","published_at":"2020-12-08T17:13:04.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.8.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.8.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.8.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.8.1/manifests"},{"name":"v1.8.0","sha":"7aeeb9bcea3a30c35a39b8da9681a6a01f7cbde5","kind":"commit","published_at":"2020-11-30T23:08:43.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.8.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.8.0/manifests"},{"name":"v1.7.5","sha":"5ded2724661aa0091f8c0a1d8c61c19e4c39de79","kind":"commit","published_at":"2020-11-23T10:05:19.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.7.5","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.7.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.7.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.7.5/manifests"},{"name":"v1.7.4","sha":"9aa1f347bf1b0d23ef493d2ad3073ad33d1b6914","kind":"commit","published_at":"2020-11-19T15:10:06.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.7.4","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.7.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.7.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.7.4/manifests"},{"name":"v1.7.3","sha":"fdfc0c7a410689b6b4103b450087da41309e9298","kind":"commit","published_at":"2020-11-19T10:44:43.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.7.3","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.7.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.7.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.7.3/manifests"},{"name":"v1.7.2","sha":"97a60d7d7042e55eda44da94b11ca016818a7ae6","kind":"commit","published_at":"2020-11-11T11:09:57.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.7.2","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.7.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.7.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.7.2/manifests"},{"name":"v1.7.1","sha":"613fdd134e385f6146fa1da449dc99bcccdd2f7f","kind":"commit","published_at":"2020-11-02T09:02:40.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.7.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.7.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.7.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.7.1/manifests"},{"name":"v1.7.0","sha":"0cf40ed2bbf9d3a839b71119501dfc70b2d78a9f","kind":"commit","published_at":"2020-10-28T22:49:16.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.7.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.7.0/manifests"},{"name":"v1.6.2","sha":"023186b405e3dee374bcaf49e33a6d1439aca21b","kind":"commit","published_at":"2020-10-19T17:38:24.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.6.2","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.6.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.6.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.6.2/manifests"},{"name":"v1.6.1","sha":"9f6aa52fef7d320fa9d8f98d440e416563050f77","kind":"commit","published_at":"2020-10-19T13:03:20.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.6.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.6.1/manifests"},{"name":"v1.6.0","sha":"9587200f59a6578fd529ae11b841a4107a34e209","kind":"commit","published_at":"2020-10-19T08:13:07.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.6.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.6.0/manifests"},{"name":"v1.5.1","sha":"37391dc357682d231adb5cd50cac10b53663a62e","kind":"tag","published_at":"2020-10-06T12:37:23.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.5.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.5.1/manifests"},{"name":"v1.5.0","sha":"359e09e6cc2e1fcaabcb1fede367c65cc66e8787","kind":"tag","published_at":"2020-10-02T09:34:24.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.5.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.5.0/manifests"},{"name":"v1.4.1","sha":"0d41d6d87a0e01cd410bd9a9fdabda64ec24ef21","kind":"tag","published_at":"2020-10-01T18:32:13.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.4.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.4.1/manifests"},{"name":"v1.4.0","sha":"a5a474b24b32752bc7757611b30c88e9f36ebd0e","kind":"tag","published_at":"2020-09-29T19:40:06.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.4.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.4.0/manifests"},{"name":"v1.3.1","sha":"d5effa1e906fd01be865d0ca6f3dc2075d037d16","kind":"tag","published_at":"2020-09-27T18:51:20.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.3.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.3.1/manifests"},{"name":"v1.3.0","sha":"6d1842581a1d1d10c30b599baca16823cfe5741a","kind":"tag","published_at":"2020-09-27T07:38:33.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.3.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.3.0/manifests"},{"name":"v1.2.2","sha":"e69093ae1ae2feb3bca30cd08674120fbde3cf83","kind":"tag","published_at":"2020-09-25T14:07:18.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.2.2","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.2.2/manifests"},{"name":"v1.2.1","sha":"6da7b3bdc70943b7d559cb7610bfc5f5d230bcd6","kind":"tag","published_at":"2020-09-23T19:51:47.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.2.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.2.1/manifests"},{"name":"v1.2.0","sha":"01028d88d6501a14d24980c90fe972579ee44697","kind":"tag","published_at":"2020-09-22T19:31:19.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.2.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.2.0/manifests"},{"name":"v1.1.2","sha":"dff9b0084668b5b4de5630d22ac8a226fb425ff6","kind":"tag","published_at":"2020-09-22T18:24:35.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.1.2","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.1.2/manifests"},{"name":"v1.1.1","sha":"1b202ad2babe450858cbc174797367f3bfdb15c0","kind":"tag","published_at":"2020-09-21T21:42:18.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.1.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.1.1/manifests"},{"name":"v1.1.0","sha":"d47c3c682efff0813b41b81d5ef01fedbb805cac","kind":"tag","published_at":"2020-09-21T19:27:50.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.1.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.1.0/manifests"},{"name":"v1.0.0","sha":"11b15c4e37c9f47703601738ae9c463ac19ee2e8","kind":"tag","published_at":"2020-09-21T07:51:54.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v1.0.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v1.0.0/manifests"},{"name":"v0.9.2","sha":"6d8996fd2ae67af3bfe985883d176511933b484d","kind":"tag","published_at":"2020-09-19T13:34:24.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.9.2","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.9.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.9.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.9.2/manifests"},{"name":"v0.9.1","sha":"7c7b2aa0031494693fd45e27aaee47428c1b5694","kind":"tag","published_at":"2020-09-18T19:27:23.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.9.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.9.1/manifests"},{"name":"v0.9.0","sha":"e24a08eef897b91ddbc781a75f1185f16e21e936","kind":"tag","published_at":"2020-09-17T21:48:21.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.9.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.9.0/manifests"},{"name":"v0.8.1","sha":"5a89ba65b8fc4ed3825ee42c85e1134b0add67d0","kind":"commit","published_at":"2020-09-17T08:30:01.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.8.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.8.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.8.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.8.1/manifests"},{"name":"v0.8.0","sha":"7ffc59adc0fe38b59b34ea346376c50cd217af61","kind":"tag","published_at":"2020-09-16T17:52:52.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.8.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.8.0/manifests"},{"name":"v0.7.0","sha":"3759e7c2d90245b48a9cab35890ce5420d247075","kind":"commit","published_at":"2020-09-14T21:49:38.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.7.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.7.0/manifests"},{"name":"v0.6.0","sha":"4828d7f8415695608707f34b0a809aa3c7d7e6b0","kind":"tag","published_at":"2020-09-13T21:50:56.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.6.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.6.0/manifests"},{"name":"v0.5.1","sha":"d9741ebecd5cadd29626aeb9e47e306bbe3cdd3d","kind":"commit","published_at":"2020-09-11T22:04:27.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.5.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.5.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.5.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.5.1/manifests"},{"name":"v0.5.0","sha":"01d2b54e073abbe8948e0fc8a4b1ffcf92b527e1","kind":"commit","published_at":"2020-09-11T11:25:00.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.5.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.5.0/manifests"},{"name":"v0.4.0","sha":"c6d936836bd0954f4c29229f568a202d474d1e91","kind":"tag","published_at":"2020-09-10T12:13:27.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.4.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.4.0/manifests"},{"name":"v0.3.3","sha":"4ad0a6453c5cbf42a34cf15b0002fe7f723f003f","kind":"tag","published_at":"2020-09-09T21:41:18.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.3.3","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.3.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.3.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.3.3/manifests"},{"name":"v0.3.2","sha":"8c7b8da4eda01d7015b6d928f836171f3f83b572","kind":"tag","published_at":"2020-09-09T19:58:11.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.3.2","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.3.2/manifests"},{"name":"v0.3.1","sha":"def23801b992bd62b54887838473d76d0f7772de","kind":"tag","published_at":"2020-09-09T18:15:18.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.3.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.3.1/manifests"},{"name":"v0.3.0","sha":"a3102202eb3a716cc81da41fa29929591f4140e0","kind":"tag","published_at":"2020-09-09T11:00:10.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.3.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.3.0/manifests"},{"name":"v0.2.1","sha":"efb16e1f0570f5079f7e284e87ebd59ceb4d50c1","kind":"tag","published_at":"2020-09-08T21:03:39.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.2.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"d25be468cbc048c1fc524dae18b2759eb2329144","kind":"tag","published_at":"2020-09-08T19:19:04.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.2.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.2.0/manifests"},{"name":"v0.1.1","sha":"852c33335a9d119e7000f1e03d4f052487f719ef","kind":"tag","published_at":"2020-09-08T10:29:40.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.1.1","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.1.1/manifests"},{"name":"v0.1.0","sha":"10b08c07ee13ac036c39d5aefc4022d69f0dbdd9","kind":"tag","published_at":"2020-09-01T08:30:50.000Z","download_url":"https://codeload.github.com/sphinx-toolbox/sphinx-toolbox/tar.gz/v0.1.0","html_url":"https://github.com/sphinx-toolbox/sphinx-toolbox/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sphinx-toolbox%2Fsphinx-toolbox/tags/v0.1.0/manifests"}]},"repo_metadata_updated_at":"2025-06-03T19:50:41.248Z","dependent_packages_count":137,"downloads":268349,"downloads_period":"last-month","dependent_repos_count":462,"rankings":{"downloads":0.9453609853796835,"dependent_repos_count":0.6645080132407545,"dependent_packages_count":0.16860777876834585,"stargazers_count":8.348745749309531,"forks_count":13.34258370477376,"docker_downloads_count":4.065504333559565,"average":4.589218427505274},"purl":"pkg:pypi/sphinx-toolbox","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/sphinx-toolbox","docker_dependents_count":7,"docker_downloads_count":649,"usage_url":"https://repos.ecosyste.ms/usage/pypi/sphinx-toolbox","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/sphinx-toolbox/dependencies","status":null,"funding_links":["https://github.com/sponsors/domdfcoding"],"critical":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/sphinx-toolbox/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/sphinx-toolbox/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/sphinx-toolbox/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/sphinx-toolbox/related_packages","maintainers":[{"uuid":"DomDF","login":"DomDF","name":null,"email":null,"url":null,"packages_count":116,"html_url":"https://pypi.org/user/DomDF/","role":null,"created_at":"2022-12-01T10:43:29.208Z","updated_at":"2022-12-01T10:43:29.208Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/DomDF/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":690322,"maintainers_count":292759,"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":62,"unique_repositories_count_past_30_days":6,"recent_issues":[{"uuid":"3927700448","node_id":"PR_kwDORODWAM7DELxY","number":13,"state":"open","title":"Bump sphinx-toolbox from 4.1.1 to 4.1.2 in /requirements","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-02-11T17:18:15.000Z","updated_at":"2026-02-11T17:18:16.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.1.1","new_version":"4.1.2","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":"/requirements","ecosystem":"pip"},"body":"Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.1.1 to 4.1.2.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.2\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.2\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e📝 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e:octocat: repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🙋 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🏪 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/424ec8cc2b7af5faf6114c06f9a528ef00601911\"\u003e\u003ccode\u003e424ec8c\u003c/code\u003e\u003c/a\u003e Bump version v4.1.1 -\u0026gt; v4.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/6646ea845522b5e8b2a78f066cf9c0a080e37979\"\u003e\u003ccode\u003e6646ea8\u003c/code\u003e\u003c/a\u003e Updated files with 'repo_helper'. (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/206\"\u003e#206\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/eb99359653b8a34c7bf13d79f1fdd0ab7f7ef26b\"\u003e\u003ccode\u003eeb99359\u003c/code\u003e\u003c/a\u003e Ignore man page builds for CollapseNode (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/0efd91a93cac16622119784eacaf8f0129d26505\"\u003e\u003ccode\u003e0efd91a\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/1c79c9c38a8594479846af7f83787ff6a1a9db40\"\u003e\u003ccode\u003e1c79c9c\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/a88102b4a9aee2a547b810b23b4b344eee8d192b\"\u003e\u003ccode\u003ea88102b\u003c/code\u003e\u003c/a\u003e Updated files with 'repo_helper'. (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/202\"\u003e#202\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ea234ff53fd003fc798526639732a758227da987\"\u003e\u003ccode\u003eea234ff\u003c/code\u003e\u003c/a\u003e Fix typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/38974cb15585973b173c1c258c87992e4a0fb2df\"\u003e\u003ccode\u003e38974cb\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/78567ef0e2d8ea024546ce6f5dca20e87feeb9ff\"\u003e\u003ccode\u003e78567ef\u003c/code\u003e\u003c/a\u003e Convert test_get_variable_type to use pytest.mark.parametrize\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/a02575ed5290d0457609811954e18e17967ea233\"\u003e\u003ccode\u003ea02575e\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.1.1...v4.1.2\"\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=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.1.1\u0026new-version=4.1.2)](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/nludd25/pytorch-lightning/pull/13","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/nludd25%2Fpytorch-lightning/issues/13","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/13/packages"},{"uuid":"3854485334","node_id":"PR_kwDOMftbFc6_Sm3X","number":190,"state":"closed","title":"Bump the py-updates group across 1 directory with 83 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-02-02T04:30:52.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-26T04:37:31.000Z","updated_at":"2026-02-02T04:30:53.000Z","time_to_close":604401,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"py-updates","update_count":83,"packages":[{"name":"awscli","old_version":"1.40.17","new_version":"1.44.24","repository_url":"https://github.com/aws/aws-cli"},{"name":"polars","old_version":"1.28.1","new_version":"1.37.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"requests","old_version":"2.32.3","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"biopython","old_version":"1.85","new_version":"1.86","repository_url":"https://github.com/biopython/biopython"},{"name":"boto3","old_version":"1.38.18","new_version":"1.42.34","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.38.18","new_version":"1.42.34","repository_url":"https://github.com/boto/botocore"},{"name":"certifi","old_version":"2025.4.26","new_version":"2026.1.4","repository_url":"https://github.com/certifi/python-certifi"},{"name":"charset-normalizer","old_version":"3.4.2","new_version":"3.4.4","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"cloudpathlib","old_version":"0.21.1","new_version":"0.23.0","repository_url":"https://github.com/drivendataorg/cloudpathlib"},{"name":"docutils","old_version":"0.19","new_version":"0.22.4","repository_url":"https://github.com/rtfd/recommonmark"},{"name":"idna","old_version":"3.10","new_version":"3.11","repository_url":"https://github.com/kjd/idna"},{"name":"jellyfish","old_version":"1.2.0","new_version":"1.2.1"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"markdown-it-py","old_version":"3.0.0","new_version":"4.0.0","repository_url":"https://github.com/executablebooks/markdown-it-py"},{"name":"numpy","old_version":"2.2.5","new_version":"2.4.1","repository_url":"https://github.com/numpy/numpy"},{"name":"pandas","old_version":"2.2.3","new_version":"3.0.0","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"pyarrow","old_version":"20.0.0","new_version":"23.0.0","repository_url":"https://github.com/apache/arrow"},{"name":"pyasn1","old_version":"0.6.1","new_version":"0.6.2","repository_url":"https://github.com/pyasn1/pyasn1"},{"name":"pygments","old_version":"2.19.1","new_version":"2.19.2","repository_url":"https://github.com/pygments/pygments"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"rich","old_version":"14.0.0","new_version":"14.3.1","repository_url":"https://github.com/Textualize/rich"},{"name":"rsa","old_version":"4.7.2","new_version":"4.9.1","repository_url":"https://github.com/sybrenstuvel/python-rsa"},{"name":"s3transfer","old_version":"0.12.0","new_version":"0.16.0","repository_url":"https://github.com/boto/s3transfer"},{"name":"structlog","old_version":"25.3.0","new_version":"25.5.0","repository_url":"https://github.com/hynek/structlog"},{"name":"tzdata","old_version":"2025.2","new_version":"2025.3","repository_url":"https://github.com/python/tzdata"},{"name":"urllib3","old_version":"2.4.0","new_version":"2.6.3","repository_url":"https://github.com/urllib3/urllib3"},{"name":"zstandard","old_version":"0.23.0","new_version":"0.25.0","repository_url":"https://github.com/indygreg/python-zstandard"},{"name":"boto3-stubs","old_version":"1.38.18","new_version":"1.42.34","repository_url":"https://github.com/youtype/mypy_boto3_builder"},{"name":"botocore-stubs","old_version":"1.38.18","new_version":"1.42.34","repository_url":"https://github.com/youtype/botocore-stubs"},{"name":"cffi","old_version":"1.17.1","new_version":"2.0.0","repository_url":"https://github.com/python-cffi/cffi"},{"name":"coverage","old_version":"7.8.0","new_version":"7.13.2","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cryptography","old_version":"44.0.3","new_version":"46.0.3","repository_url":"https://github.com/pyca/cryptography"},{"name":"freezegun","old_version":"1.5.1","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"iniconfig","old_version":"2.1.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"markupsafe","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/pallets/markupsafe"},{"name":"moto","old_version":"5.1.4","new_version":"5.1.20","repository_url":"https://github.com/getmoto/moto"},{"name":"mypy","old_version":"1.15.0","new_version":"1.19.1","repository_url":"https://github.com/python/mypy"},{"name":"mypy-boto3-s3","old_version":"1.38.0","new_version":"1.42.21","repository_url":"https://github.com/youtype/mypy_boto3_builder"},{"name":"packaging","old_version":"25.0","new_version":"26.0","repository_url":"https://github.com/pypa/packaging"},{"name":"pycparser","old_version":"2.22","new_version":"3.0","repository_url":"https://github.com/eliben/pycparser"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"responses","old_version":"0.25.7","new_version":"0.25.8","repository_url":"https://github.com/getsentry/responses"},{"name":"ruff","old_version":"0.11.10","new_version":"0.14.14","repository_url":"https://github.com/astral-sh/ruff"},{"name":"types-awscrt","old_version":"0.27.2","new_version":"0.31.1","repository_url":"https://github.com/youtype/types-awscrt"},{"name":"types-requests","old_version":"2.32.0.20250515","new_version":"2.32.4.20260107","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-s3transfer","old_version":"0.12.0","new_version":"0.16.0","repository_url":"https://github.com/youtype/types-s3transfer"},{"name":"typing-extensions","old_version":"4.13.2","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"werkzeug","old_version":"3.1.3","new_version":"3.1.5","repository_url":"https://github.com/pallets/werkzeug"},{"name":"xmltodict","old_version":"0.14.2","new_version":"1.0.2","repository_url":"https://github.com/martinblech/xmltodict"},{"name":"alabaster","old_version":"0.7.16","new_version":"1.0.0","repository_url":"https://github.com/sphinx-doc/alabaster"},{"name":"anyio","old_version":"4.9.0","new_version":"4.12.1","repository_url":"https://github.com/agronholm/anyio"},{"name":"beautifulsoup4","old_version":"4.13.4","new_version":"4.14.3"},{"name":"cachecontrol","old_version":"0.14.3","new_version":"0.14.4","repository_url":"https://github.com/psf/cachecontrol"},{"name":"click","old_version":"8.2.0","new_version":"8.3.1","repository_url":"https://github.com/pallets/click"},{"name":"contourpy","old_version":"1.3.2","new_version":"1.3.3","repository_url":"https://github.com/contourpy/contourpy"},{"name":"filelock","old_version":"3.18.0","new_version":"3.20.3","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"fonttools","old_version":"4.58.0","new_version":"4.61.1","repository_url":"https://github.com/fonttools/fonttools"},{"name":"furo","old_version":"2024.8.6","new_version":"2025.12.19","repository_url":"https://github.com/pradyunsg/furo"},{"name":"kiwisolver","old_version":"1.4.8","new_version":"1.4.9","repository_url":"https://github.com/nucleic/kiwi"},{"name":"matplotlib","old_version":"3.10.3","new_version":"3.10.8","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mdit-py-plugins","old_version":"0.4.2","new_version":"0.5.0","repository_url":"https://github.com/executablebooks/mdit-py-plugins"},{"name":"more-itertools","old_version":"10.7.0","new_version":"10.8.0","repository_url":"https://github.com/more-itertools/more-itertools"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.1.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"myst-parser","old_version":"4.0.1","new_version":"5.0.0","repository_url":"https://github.com/executablebooks/MyST-Parser"},{"name":"pillow","old_version":"11.2.1","new_version":"12.1.0","repository_url":"https://github.com/python-pillow/Pillow"},{"name":"platformdirs","old_version":"4.3.8","new_version":"4.5.1","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pyparsing","old_version":"3.2.3","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"ruamel-yaml","old_version":"0.18.10","new_version":"0.19.1"},{"name":"ruamel-yaml-clib","old_version":"0.2.12","new_version":"0.2.15"},{"name":"soupsieve","old_version":"2.7","new_version":"2.8.3","repository_url":"https://github.com/facelessuser/soupsieve"},{"name":"sphinx","old_version":"7.3.7","new_version":"9.0.4","repository_url":"https://github.com/sphinx-doc/sphinx"},{"name":"sphinx-autobuild","old_version":"2024.10.3","new_version":"2025.8.25","repository_url":"https://github.com/sphinx-doc/sphinx-autobuild"},{"name":"sphinx-autodoc-typehints","old_version":"2.3.0","new_version":"3.6.1","repository_url":"https://github.com/tox-dev/sphinx-autodoc-typehints"},{"name":"sphinx-jinja2-compat","old_version":"0.3.0","new_version":"0.4.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-jinja2-compat"},{"name":"sphinx-prompt","old_version":"1.8.0","new_version":"1.10.2","repository_url":"https://github.com/sbrunner/sphinx-prompt"},{"name":"sphinx-tabs","old_version":"3.4.5","new_version":"3.4.7","repository_url":"https://github.com/executablebooks/sphinx-tabs"},{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.2","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"},{"name":"sphinxext-opengraph","old_version":"0.10.0","new_version":"0.13.0","repository_url":"https://github.com/sphinx-doc/sphinxext-opengraph"},{"name":"starlette","old_version":"0.46.2","new_version":"0.52.1","repository_url":"https://github.com/Kludex/starlette"},{"name":"uvicorn","old_version":"0.34.2","new_version":"0.40.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"watchfiles","old_version":"1.0.5","new_version":"1.1.1","repository_url":"https://github.com/samuelcolvin/watchfiles"},{"name":"websockets","old_version":"15.0.1","new_version":"16.0","repository_url":"https://github.com/python-websockets/websockets"}],"path":null,"ecosystem":"pip"},"body":"Bumps the py-updates group with 83 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [awscli](https://github.com/aws/aws-cli) | `1.40.17` | `1.44.24` |\n| [polars](https://github.com/pola-rs/polars) | `1.28.1` | `1.37.1` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.32.5` |\n| [biopython](https://github.com/biopython/biopython) | `1.85` | `1.86` |\n| [boto3](https://github.com/boto/boto3) | `1.38.18` | `1.42.34` |\n| [botocore](https://github.com/boto/botocore) | `1.38.18` | `1.42.34` |\n| [certifi](https://github.com/certifi/python-certifi) | `2025.4.26` | `2026.1.4` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.2` | `3.4.4` |\n| [cloudpathlib](https://github.com/drivendataorg/cloudpathlib) | `0.21.1` | `0.23.0` |\n| [docutils](https://github.com/rtfd/recommonmark) | `0.19` | `0.22.4` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.11` |\n| [jellyfish](https://jellyfish.jpt.sh/) | `1.2.0` | `1.2.1` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [markdown-it-py](https://github.com/executablebooks/markdown-it-py) | `3.0.0` | `4.0.0` |\n| [numpy](https://github.com/numpy/numpy) | `2.2.5` | `2.4.1` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `3.0.0` |\n| [pyarrow](https://github.com/apache/arrow) | `20.0.0` | `23.0.0` |\n| [pyasn1](https://github.com/pyasn1/pyasn1) | `0.6.1` | `0.6.2` |\n| [pygments](https://github.com/pygments/pygments) | `2.19.1` | `2.19.2` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [rich](https://github.com/Textualize/rich) | `14.0.0` | `14.3.1` |\n| [rsa](https://github.com/sybrenstuvel/python-rsa) | `4.7.2` | `4.9.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.12.0` | `0.16.0` |\n| [structlog](https://github.com/hynek/structlog) | `25.3.0` | `25.5.0` |\n| [tzdata](https://github.com/python/tzdata) | `2025.2` | `2025.3` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.4.0` | `2.6.3` |\n| [zstandard](https://github.com/indygreg/python-zstandard) | `0.23.0` | `0.25.0` |\n| [boto3-stubs](https://github.com/youtype/mypy_boto3_builder) | `1.38.18` | `1.42.34` |\n| [botocore-stubs](https://github.com/youtype/botocore-stubs) | `1.38.18` | `1.42.34` |\n| [cffi](https://github.com/python-cffi/cffi) | `1.17.1` | `2.0.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.8.0` | `7.13.2` |\n| [cryptography](https://github.com/pyca/cryptography) | `44.0.3` | `46.0.3` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.1` | `1.5.5` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.1.0` | `2.3.0` |\n| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` |\n| [moto](https://github.com/getmoto/moto) | `5.1.4` | `5.1.20` |\n| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.19.1` |\n| [mypy-boto3-s3](https://github.com/youtype/mypy_boto3_builder) | `1.38.0` | `1.42.21` |\n| [packaging](https://github.com/pypa/packaging) | `25.0` | `26.0` |\n| [pycparser](https://github.com/eliben/pycparser) | `2.22` | `3.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.2` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [responses](https://github.com/getsentry/responses) | `0.25.7` | `0.25.8` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.10` | `0.14.14` |\n| [types-awscrt](https://github.com/youtype/types-awscrt) | `0.27.2` | `0.31.1` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.32.0.20250515` | `2.32.4.20260107` |\n| [types-s3transfer](https://github.com/youtype/types-s3transfer) | `0.12.0` | `0.16.0` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.13.2` | `4.15.0` |\n| [werkzeug](https://github.com/pallets/werkzeug) | `3.1.3` | `3.1.5` |\n| [xmltodict](https://github.com/martinblech/xmltodict) | `0.14.2` | `1.0.2` |\n| [alabaster](https://github.com/sphinx-doc/alabaster) | `0.7.16` | `1.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.9.0` | `4.12.1` |\n| [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) | `4.13.4` | `4.14.3` |\n| [cachecontrol](https://github.com/psf/cachecontrol) | `0.14.3` | `0.14.4` |\n| [click](https://github.com/pallets/click) | `8.2.0` | `8.3.1` |\n| [contourpy](https://github.com/contourpy/contourpy) | `1.3.2` | `1.3.3` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.18.0` | `3.20.3` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.58.0` | `4.61.1` |\n| [furo](https://github.com/pradyunsg/furo) | `2024.8.6` | `2025.12.19` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.8` | `1.4.9` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.3` | `3.10.8` |\n| [mdit-py-plugins](https://github.com/executablebooks/mdit-py-plugins) | `0.4.2` | `0.5.0` |\n| [more-itertools](https://github.com/more-itertools/more-itertools) | `10.7.0` | `10.8.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.1.2` |\n| [myst-parser](https://github.com/executablebooks/MyST-Parser) | `4.0.1` | `5.0.0` |\n| [pillow](https://github.com/python-pillow/Pillow) | `11.2.1` | `12.1.0` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.8` | `4.5.1` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.3` | `3.3.2` |\n| ruamel-yaml | `0.18.10` | `0.19.1` |\n| ruamel-yaml-clib | `0.2.12` | `0.2.15` |\n| [soupsieve](https://github.com/facelessuser/soupsieve) | `2.7` | `2.8.3` |\n| [sphinx](https://github.com/sphinx-doc/sphinx) | `7.3.7` | `9.0.4` |\n| [sphinx-autobuild](https://github.com/sphinx-doc/sphinx-autobuild) | `2024.10.3` | `2025.8.25` |\n| [sphinx-autodoc-typehints](https://github.com/tox-dev/sphinx-autodoc-typehints) | `2.3.0` | `3.6.1` |\n| [sphinx-jinja2-compat](https://github.com/sphinx-toolbox/sphinx-jinja2-compat) | `0.3.0` | `0.4.1` |\n| [sphinx-prompt](https://github.com/sbrunner/sphinx-prompt) | `1.8.0` | `1.10.2` |\n| [sphinx-tabs](https://github.com/executablebooks/sphinx-tabs) | `3.4.5` | `3.4.7` |\n| [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) | `4.0.0` | `4.1.2` |\n| [sphinxext-opengraph](https://github.com/sphinx-doc/sphinxext-opengraph) | `0.10.0` | `0.13.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.46.2` | `0.52.1` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.34.2` | `0.40.0` |\n| [watchfiles](https://github.com/samuelcolvin/watchfiles) | `1.0.5` | `1.1.1` |\n| [websockets](https://github.com/python-websockets/websockets) | `15.0.1` | `16.0` |\n\n\nUpdates `awscli` from 1.40.17 to 1.44.24\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/3af1873c23374171e0bc9a6891a361221178fd8d\"\u003e\u003ccode\u003e3af1873\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.24'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/3db4f00603a7e7a76ffc0838593db9656e72799e\"\u003e\u003ccode\u003e3db4f00\u003c/code\u003e\u003c/a\u003e Bumping version to 1.44.24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/2c19a9fcf0f35398a280868073b4170c02f4ef5a\"\u003e\u003ccode\u003e2c19a9f\u003c/code\u003e\u003c/a\u003e Update changelog based on model updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/80d79654015909384fe93f268867f5dec1e58705\"\u003e\u003ccode\u003e80d7965\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.23'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/75d1e11e5a5e06d8dcc5637ea26091874275eb99\"\u003e\u003ccode\u003e75d1e11\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.23' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/a220ab958493ad5a52289d964546d66538ee7711\"\u003e\u003ccode\u003ea220ab9\u003c/code\u003e\u003c/a\u003e Bumping version to 1.44.23\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/c48c8ab1a19bdf5f8b3510e9948016443eb7d2e0\"\u003e\u003ccode\u003ec48c8ab\u003c/code\u003e\u003c/a\u003e Update changelog based on model updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/39e70dfeaa3a5dad7c8c49d08c64b79bc299c58c\"\u003e\u003ccode\u003e39e70df\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.22'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/094e6fa721d66f284e1466e758e32120b8594ab7\"\u003e\u003ccode\u003e094e6fa\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.22' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/4cd22ade79f67568ad66b6d406882dcd02a6fa6c\"\u003e\u003ccode\u003e4cd22ad\u003c/code\u003e\u003c/a\u003e Bumping version to 1.44.22\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-cli/compare/1.40.17...1.44.24\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `polars` from 1.28.1 to 1.37.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pola-rs/polars/releases\"\u003epolars's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePython Polars 1.37.1\u003c/h2\u003e\n\u003ch2\u003e🚀 Performance improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up \u003ccode\u003eSQL\u003c/code\u003e interface \u0026quot;UNION\u0026quot; clauses (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26039\"\u003e#26039\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐞 Bug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize slicing support on compressed IPC (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26071\"\u003e#26071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCPU check for musl builds (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26076\"\u003e#26076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePropagate C Stream import errors instead of panicking (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26036\"\u003e#26036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix slicing on compressed IPC (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26066\"\u003e#26066\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📖 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eClarify min_by/max_by behavior on ties (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26077\"\u003e#26077\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠️ Other improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMark top slow normal tests as slow (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26080\"\u003e#26080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate breaking deps (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26055\"\u003e#26055\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix for upstream url bug and update deps (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26052\"\u003e#26052\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eProperly pin chrono (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26051\"\u003e#26051\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDon't run rust doctests (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26046\"\u003e#26046\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate deps (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26042\"\u003e#26042\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eIgnore very slow test (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26041\"\u003e#26041\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThank you to all our contributors for making this release possible!\n\u003ca href=\"https://github.com/Voultapher\"\u003e\u003ccode\u003e@​Voultapher\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/alexander-beedie\"\u003e\u003ccode\u003e@​alexander-beedie\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/kdn36\"\u003e\u003ccode\u003e@​kdn36\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/nameexhaustion\"\u003e\u003ccode\u003e@​nameexhaustion\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/orlp\"\u003e\u003ccode\u003e@​orlp\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/ritchie46\"\u003e\u003ccode\u003e@​ritchie46\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/wtn\"\u003e\u003ccode\u003e@​wtn\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePython Polars 1.37.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Performance improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up \u003ccode\u003eSQL\u003c/code\u003e interface \u0026quot;ORDER BY\u0026quot; clauses (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26037\"\u003e#26037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd fast kernel for is_nan and use it for numpy NaN-\u0026gt;null conversion (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26034\"\u003e#26034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOptimize ArrayFromIter implementations for ObjectArray (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25712\"\u003e#25712\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew streaming NDJSON sink pipeline (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25948\"\u003e#25948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew streaming CSV sink pipeline (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25900\"\u003e#25900\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDispatch partitioned usage of \u003ccode\u003esink_*\u003c/code\u003e functions to new-streaming by default (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25910\"\u003e#25910\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace ryu with faster zmij (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25885\"\u003e#25885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReduce memory usage for .item() count in grouped first/last (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25787\"\u003e#25787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip schema inference if schema provided for \u003ccode\u003escan_csv/ndjson\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25757\"\u003e#25757\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd width-aware chunking to prevent degradation with wide data (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25764\"\u003e#25764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse new sink pipeline for write/sink_ipc (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25746\"\u003e#25746\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReduce memory usage when scanning multiple parquet files in streaming (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25747\"\u003e#25747\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDon't call cluster_with_columns optimization if not needed (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25724\"\u003e#25724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e✨ Enhancements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new \u003ccode\u003epl.PartitionBy\u003c/code\u003e API (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26004\"\u003e#26004\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eArrowStreamExportable and sink_delta (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25994\"\u003e#25994\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/pola-rs/polars/commit/bb79993c3aa91d0db7d20be8f75c8075cad97067\"\u003e\u003ccode\u003ebb79993\u003c/code\u003e\u003c/a\u003e Python Polars 1.37.1 (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26078\"\u003e#26078\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/26a9d097af5ea7d35f72bb8514ab990ddbce4796\"\u003e\u003ccode\u003e26a9d09\u003c/code\u003e\u003c/a\u003e chore: Mark top slow normal tests as slow (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26080\"\u003e#26080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/451f247ba33506c9822478d0409a5075fec5797c\"\u003e\u003ccode\u003e451f247\u003c/code\u003e\u003c/a\u003e refactor(rust): Simplify \u003ccode\u003ePlPath\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26053\"\u003e#26053\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/b532aad910b0fe065b9fbe648944f3a580d3d104\"\u003e\u003ccode\u003eb532aad\u003c/code\u003e\u003c/a\u003e docs: Clarify min_by/max_by behavior on ties (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26077\"\u003e#26077\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/707796731ab7cf51f296a9b56a0231a5537e4259\"\u003e\u003ccode\u003e7077967\u003c/code\u003e\u003c/a\u003e fix: Optimize slicing support on compressed IPC (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26071\"\u003e#26071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/44c139746390a0b81b3e908a8a6529cc6efdea1e\"\u003e\u003ccode\u003e44c1397\u003c/code\u003e\u003c/a\u003e fix: CPU check for musl builds (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26076\"\u003e#26076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/35ec39865a1952f60f46d17e461974881844b9c1\"\u003e\u003ccode\u003e35ec398\u003c/code\u003e\u003c/a\u003e chore: Update breaking deps (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26055\"\u003e#26055\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/84fa66381626dbd826e2d5a663285fb193356d64\"\u003e\u003ccode\u003e84fa663\u003c/code\u003e\u003c/a\u003e fix(python): Propagate C Stream import errors instead of panicking (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26036\"\u003e#26036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/e9e20e468cb84f966eed1e37a7b23afaf842e88f\"\u003e\u003ccode\u003ee9e20e4\u003c/code\u003e\u003c/a\u003e fix: Fix slicing on compressed IPC (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26066\"\u003e#26066\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/b0fdbd34d430d934bda9a4ca3f75e136223bd95b\"\u003e\u003ccode\u003eb0fdbd3\u003c/code\u003e\u003c/a\u003e chore: Fix for upstream url bug and update deps (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26052\"\u003e#26052\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pola-rs/polars/compare/py-1.28.1...py-1.37.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.3 to 2.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/releases\"\u003erequests's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.32.5\u003c/h2\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b25c87d7cb8d6a18a37fa12442b5f883f9e41741\"\u003e\u003ccode\u003eb25c87d\u003c/code\u003e\u003c/a\u003e v2.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/131e506079d97606e4214cc4d87b780ac478de7a\"\u003e\u003ccode\u003e131e506\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/7010\"\u003e#7010\u003c/a\u003e from psf/dependabot/github_actions/actions/checkout-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b336cb2bc616a63a93c6470c558fc1f576b77f90\"\u003e\u003ccode\u003eb336cb2\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/46e939b5525d9c72b677340985582b04b128478a\"\u003e\u003ccode\u003e46e939b\u003c/code\u003e\u003c/a\u003e Update publish workflow to use \u003ccode\u003eartifact-id\u003c/code\u003e instead of \u003ccode\u003ename\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4b9c546aa3f35fca6ca24945376fe7462bb007c4\"\u003e\u003ccode\u003e4b9c546\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6999\"\u003e#6999\u003c/a\u003e from psf/dependabot/github_actions/step-security/har...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7618dbef01d333f23ba4b9c4d97397b06dd89cb6\"\u003e\u003ccode\u003e7618dbe\u003c/code\u003e\u003c/a\u003e Bump step-security/harden-runner from 2.12.0 to 2.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2edca11103c1c27dd8b572dab544b7f48cf3b446\"\u003e\u003ccode\u003e2edca11\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 and drop support for Python 3.8 (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6993\"\u003e#6993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/fec96cd5976ad763e45bac9a033d62cca1877a00\"\u003e\u003ccode\u003efec96cd\u003c/code\u003e\u003c/a\u003e Update Makefile rules (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6996\"\u003e#6996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/d58d8aa2f45c3575268d6d5250745ef69f9cf8b7\"\u003e\u003ccode\u003ed58d8aa\u003c/code\u003e\u003c/a\u003e docs: clarify timeout parameter uses seconds in Session.request (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6994\"\u003e#6994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/91a3eabd3dcc4d7f36dd8249e4777a90ef9b4305\"\u003e\u003ccode\u003e91a3eab\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.5 to 3.29.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `biopython` from 1.85 to 1.86\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/biopython/biopython/blob/master/NEWS.rst\"\u003ebiopython's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e28 October 2025: Biopython 1.86\u003c/h1\u003e\n\u003cp\u003eThis release of Biopython supports Python 3.10, 3.11, 3.12, 3.13 and 3.14.  It\nhas also been tested on PyPy3.10 v7.3.19.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.SearchIO\u003c/code\u003e now supports parsing the tabular and plain text output of\n\u003ccode\u003eInfernal \u0026lt;http://eddylab.org/infernal/\u0026gt;\u003c/code\u003e (v1.0.0+) RNA search tool. The\nformat names are \u003ccode\u003einfernal-tab\u003c/code\u003e and \u003ccode\u003einfernal-text\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe default value of the gap score of a \u003ccode\u003ePairwiseAligner\u003c/code\u003e object was changed\nin this release.  Previously, for consistency with \u003ccode\u003eBio.pairwise2\u003c/code\u003e, the\ndefault value for gap score was 0.  However, this means that a mismatch, an\ninsertion followed by a deletion, and a deletion followed by an insertion all\nget assigned a score of 0.  The aligner then finds a large number of alignments\nthat are logically the same, but have trivial differences between them.  For\nexample, aligning AAACAAA to AAAGAAA previously yielded the following three\nalignments, all with score 6::\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e AAACAAA        AAAC-AAA        AAA-CAAA\n AAAGAAA        AAA-GAAA        AAAG-AAA\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eWith the new default parameter for the gap score, only the first alignment is\nreturned.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.PDBIO\u003c/code\u003e now ensures that b-factor values are always at most 6 characters to\nensure that we do not violate the wwPDB specification. This should not have an impact\non the majority of uses, as b-factor values are generally small (less than 100). When\n1000 \u0026lt;= b-factor \u0026lt; 10_000, the value is rounded to a single decimal place. When,\n10_000 \u0026lt;= b-factor \u0026lt; 999_999, the value is rounded to zero decimal places. Values\nabove 999_999 are now clamped. The justification for this is the rise in the b-factor\nfield being used for additional metadata, typically from computational tools.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.Align\u003c/code\u003e now provides a method \u003ccode\u003eAlignment.from_alignments_with_same_reference\u003c/code\u003e\nto construct a multiple sequence alignment from a collection of alignments\nthat share the same reference sequence.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.PDBIO\u003c/code\u003e will now raise module specific warnings:\n\u003ccode\u003eBio.PDB.PDBExceptions.PDBIOWarning\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.SCADIO\u003c/code\u003e now supports object selection by color in the OpenSCAD\noutput file.  This enables generation of separate STL files for each color for\nprinting protein structures on multi-material 3D printers.\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eiplotx\u003c/code\u003e library is mentioned in the Tutorial as an option to visualise\ntrees using complex style options.\u003c/p\u003e\n\u003cp\u003eMany thanks to the Biopython developers and community for making this release\npossible, especially the following contributors:\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\u003eSee full diff in \u003ca href=\"https://github.com/biopython/biopython/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.18 to 1.42.34\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/9a285e6beab78c1f4c97047674ec09ac5451c4d1\"\u003e\u003ccode\u003e9a285e6\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.34'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/29574158e22c3b2d6ca044eef1dc054d28d73485\"\u003e\u003ccode\u003e2957415\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.34\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/8e1fd2e6e5c1fd6236cacf2dc9064d55d8baf07b\"\u003e\u003ccode\u003e8e1fd2e\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/9cadce52dae6e58e450a9ac0745a721dda8a4044\"\u003e\u003ccode\u003e9cadce5\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.33'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/ee24f15c3013be4f4c6e76bfbc948b910e6f8f35\"\u003e\u003ccode\u003eee24f15\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.33' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b0f2cf318d9bef8eaf3f11cd81b22ce67810ea82\"\u003e\u003ccode\u003eb0f2cf3\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.33\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/6e690ed2966406d4b53532a44e70c93370368ae6\"\u003e\u003ccode\u003e6e690ed\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/b84ec5ebd8880b77e998bfdd28984f214c3f1fa3\"\u003e\u003ccode\u003eb84ec5e\u003c/code\u003e\u003c/a\u003e Add BOTOCORE_TCP_KEEPALIVE environment variable documentation (\u003ca href=\"https://redirect.github.com/boto/boto3/issues/4705\"\u003e#4705\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/36cebd34052db2fc7449b85ac04f903fb40f8b2f\"\u003e\u003ccode\u003e36cebd3\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.32'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/d4d10440677e98c5c15fb6c84cc605bd7401fd74\"\u003e\u003ccode\u003ed4d1044\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.32' into develop\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.18...1.42.34\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `botocore` from 1.38.18 to 1.42.34\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/d52e6ce4372810dc3a0d6701b366f54add0aedae\"\u003e\u003ccode\u003ed52e6ce\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.34'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/fce5268f1cd4063f30e3faec44da7efa309cae5f\"\u003e\u003ccode\u003efce5268\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.34\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/45e43f9baa8c57d13eb75d7566f1401366a1a188\"\u003e\u003ccode\u003e45e43f9\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/b9ed58fa2f31170724538f6ed86e8cbf833de8fd\"\u003e\u003ccode\u003eb9ed58f\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.33'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/48062d233b8173af5af60afb85443e04c6520146\"\u003e\u003ccode\u003e48062d2\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.33' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/8eb5ab6cd38ba8d94d938fac2e6086bd918760dc\"\u003e\u003ccode\u003e8eb5ab6\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.33\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/05b651e910c4b59a971a2566afb4b82a51fb00fc\"\u003e\u003ccode\u003e05b651e\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/aba67690e5aa14f58083dfa168d7fc09681c884a\"\u003e\u003ccode\u003eaba6769\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/3549e0136b656df25e985bdb85233f95da5851d3\"\u003e\u003ccode\u003e3549e01\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.32'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/0847d5e023fd0f7d0e19a154ee22a46e8f56bc38\"\u003e\u003ccode\u003e0847d5e\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.32' into develop\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/botocore/compare/1.38.18...1.42.34\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `certifi` from 2025.4.26 to 2026.1.4\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/c64d9f3a8496c0195548697f2080e716af66dd6a\"\u003e\u003ccode\u003ec64d9f3\u003c/code\u003e\u003c/a\u003e 2026.01.04 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/389\"\u003e#389\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/4ac232f05a547071543d2fb069aa3c62b1dc79f3\"\u003e\u003ccode\u003e4ac232f\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 6.0.0 to 7.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/387\"\u003e#387\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/95ae4b20e8abb7fa708e751e346466d16b36211a\"\u003e\u003ccode\u003e95ae4b2\u003c/code\u003e\u003c/a\u003e Update CI workflow to use Ubuntu 24.04 and Python 3.14 stable (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/386\"\u003e#386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/b72a7b1a40ae20755338d3132d8f880427b3b6fc\"\u003e\u003ccode\u003eb72a7b1\u003c/code\u003e\u003c/a\u003e Bump dessant/lock-threads from 5.0.1 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/385\"\u003e#385\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ecc267216fbdcecb1b2aa2aa175152b773cc5ced\"\u003e\u003ccode\u003eecc2672\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/384\"\u003e#384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/6a897dbc1124b17f179ef225742fcda481ec96f3\"\u003e\u003ccode\u003e6a897db\u003c/code\u003e\u003c/a\u003e Bump peter-evans/create-pull-request from 7.0.11 to 8.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/383\"\u003e#383\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/27ca98ad845ee6d130a88301622c137893f71620\"\u003e\u003ccode\u003e27ca98a\u003c/code\u003e\u003c/a\u003e Bump peter-evans/create-pull-request from 7.0.9 to 7.0.11 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/381\"\u003e#381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/56c59a63909cfd3162b37e7bc16956e64df0f737\"\u003e\u003ccode\u003e56c59a6\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 6.0.0 to 6.0.1 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/382\"\u003e#382\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ae0021cd43a77bfba67d20a041469cdf6996570e\"\u003e\u003ccode\u003eae0021c\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 6.0.0 to 6.1.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/380\"\u003e#380\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ddf5d0b5d2a3d55fd92a79f141dbb5e074caf924\"\u003e\u003ccode\u003eddf5d0b\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5.0.1 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/378\"\u003e#378\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/certifi/python-certifi/compare/2025.04.26...2026.01.04\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `charset-normalizer` from 3.4.2 to 3.4.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.3...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003e multiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/b30ffdcc2f11043c0d34e60fe66d3815cd49b32b\"\u003e\u003ccode\u003eb30ffdc\u003c/code\u003e\u003c/a\u003e :wrench: fix checksum step in cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/d3fbfcfad7dfe3c640886f1a6a6351da527f6634\"\u003e\u003ccode\u003ed3fbfcf\u003c/code\u003e\u003c/a\u003e :wrench: fix cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/dafbb95f8c00d3cc8b99158caa63006ffab98749\"\u003e\u003ccode\u003edafbb95\u003c/code\u003e\u003c/a\u003e Release 3.4.4 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/658\"\u003e#658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/1f18ffaa69d2c84fea7abedb8840197ba9c14562\"\u003e\u003ccode\u003e1f18ffa\u003c/code\u003e\u003c/a\u003e :arrow_up: raise mypy upper bound to 1.18.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/ef4ac69ad203891f24e26b2422ab3a08053044fa\"\u003e\u003ccode\u003eef4ac69\u003c/code\u003e\u003c/a\u003e Merge branch 'release-3.4.4' of github.com:jawah/charset_normalizer into rele...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/4b35dda053db5e2e60a247e80a116e4ef04f439b\"\u003e\u003ccode\u003e4b35dda\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/0ec6452f1a34cbc77a55b237c4118807b44c2a33\"\u003e\u003ccode\u003e0ec6452\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f341edec8a828dda394abfa011b1ded8b4b102e2\"\u003e\u003ccode\u003ef341ede\u003c/code\u003e\u003c/a\u003e :arrow_up: upgrade dependencies (dev, ci)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/a308841e660a4d61ea6c448e7b8bf97415ecdc4a\"\u003e\u003ccode\u003ea308841\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/9c906da611d5ca5ef076d6bf7f60e629f661d0b0\"\u003e\u003ccode\u003e9c906da\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.2...3.4.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cloudpathlib` from 0.21.1 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/drivendataorg/cloudpathlib/releases\"\u003ecloudpathlib's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14 (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/529\"\u003e#529\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/530\"\u003e#530\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eChanged \u003ccode\u003eCloudPath.copy\u003c/code\u003e to have the first parameter named \u003ccode\u003etarget\u003c/code\u003e instead of \u003ccode\u003edestination\u003c/code\u003e and added new \u003ccode\u003efollow_symlinks\u003c/code\u003e and \u003ccode\u003epreserve_metadata\u003c/code\u003e kwargs. \u003cstrong\u003eBreaking change for users that relied on the first parameter being named \u003ccode\u003edestination\u003c/code\u003e instead of \u003ccode\u003etarget\u003c/code\u003e.\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.copy_into\u003c/code\u003e to copy a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move\u003c/code\u003e to move a file or directory to another location.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move_into\u003c/code\u003e to move a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPathInfo\u003c/code\u003e and \u003ccode\u003eCloudPath.info\u003c/code\u003e to get information about a file or directory.\u003c/li\u003e\n\u003cli\u003eAdded additional no-op kwargs to \u003ccode\u003emkdir\u003c/code\u003e, \u003ccode\u003etouch\u003c/code\u003e, \u003ccode\u003eglob\u003c/code\u003e, \u003ccode\u003erglob\u003c/code\u003e, \u003ccode\u003estat\u003c/code\u003e to match pathlib.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.22.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed issue with GS credentials, using default auth enables a wider set of authentication methods in GS (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/390\"\u003e#390\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/514\"\u003e#514\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ljyanesm\"\u003e\u003ccode\u003e@​ljyanesm\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for http(s) urls with \u003ccode\u003eHttpClient\u003c/code\u003e, \u003ccode\u003eHttpPath\u003c/code\u003e, \u003ccode\u003eHttpsClient\u003c/code\u003e, and \u003ccode\u003eHttpsPath\u003c/code\u003e. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/455\"\u003e#455\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded experimental support for patching the builtins \u003ccode\u003eopen\u003c/code\u003e, \u003ccode\u003eos\u003c/code\u003e, \u003ccode\u003eos.path\u003c/code\u003e, and \u003ccode\u003eglob\u003c/code\u003e to work with \u003ccode\u003eCloudPath\u003c/code\u003e objects. It is off by default; see the new \u0026quot;Compatibility\u0026quot; section in the docs for more information. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/128\"\u003e#128\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for \u003ccode\u003eCloudPath(*parts)\u003c/code\u003e to create a \u003ccode\u003eCloudPath\u003c/code\u003e object from a list of parts (to match \u003ccode\u003epathlib.Path\u003c/code\u003e). \u003cstrong\u003eThis is a potentially breaking change for users that relied on the second arg being the \u003ccode\u003eclient\u003c/code\u003e instead of making it an explicit kwarg.\u003c/strong\u003e (PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\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/drivendataorg/cloudpathlib/blob/master/HISTORY.md\"\u003ecloudpathlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0 (2025-10-07)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14 (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/529\"\u003e#529\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/530\"\u003e#530\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eChanged \u003ccode\u003eCloudPath.copy\u003c/code\u003e to have the first parameter named \u003ccode\u003etarget\u003c/code\u003e instead of \u003ccode\u003edestination\u003c/code\u003e and added new \u003ccode\u003efollow_symlinks\u003c/code\u003e and \u003ccode\u003epreserve_metadata\u003c/code\u003e kwargs. \u003cstrong\u003eBreaking change for users that relied on the first parameter being named \u003ccode\u003edestination\u003c/code\u003e instead of \u003ccode\u003etarget\u003c/code\u003e.\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.copy_into\u003c/code\u003e to copy a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move\u003c/code\u003e to move a file or directory to another location.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move_into\u003c/code\u003e to move a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPathInfo\u003c/code\u003e and \u003ccode\u003eCloudPath.info\u003c/code\u003e to get information about a file or directory.\u003c/li\u003e\n\u003cli\u003eAdded additional no-op kwargs to \u003ccode\u003emkdir\u003c/code\u003e, \u003ccode\u003etouch\u003c/code\u003e, \u003ccode\u003eglob\u003c/code\u003e, \u003ccode\u003erglob\u003c/code\u003e, \u003ccode\u003estat\u003c/code\u003e to match pathlib.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.22.0 (2025-08-29)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed issue with GS credentials, using default auth enables a wider set of authentication methods in GS (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/390\"\u003e#390\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/514\"\u003e#514\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ljyanesm\"\u003e\u003ccode\u003e@​ljyanesm\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for http(s) urls with \u003ccode\u003eHttpClient\u003c/code\u003e, \u003ccode\u003eHttpPath\u003c/code\u003e, \u003ccode\u003eHttpsClient\u003c/code\u003e, and \u003ccode\u003eHttpsPath\u003c/code\u003e. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/455\"\u003e#455\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded experimental support for patching the builtins \u003ccode\u003eopen\u003c/code\u003e, \u003ccode\u003eos\u003c/code\u003e, \u003ccode\u003eos.path\u003c/code\u003e, and \u003ccode\u003eglob\u003c/code\u003e to work with \u003ccode\u003eCloudPath\u003c/code\u003e objects. It is off by default; see the new \u0026quot;Compatibility\u0026quot; section in the docs for more information. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/128\"\u003e#128\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for \u003ccode\u003eCloudPath(*parts)\u003c/code\u003e to create a \u003ccode\u003eCloudPath\u003c/code\u003e object from a list of parts (to match \u003ccode\u003epathlib.Path\u003c/code\u003e). \u003cstrong\u003eThis is a potentially breaking change for users that relied on the second arg being the \u003ccode\u003eclient\u003c/code\u003e instead of making it an explicit kwarg.\u003c/strong\u003e (PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\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/drivendataorg/cloudpathlib/commit/28f1d943078517262d045ae50136edf27a5298a1\"\u003e\u003ccode\u003e28f1d94\u003c/code\u003e\u003c/a\u003e WIP Support 3.14 (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/530\"\u003e#530\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/fec5918d6725e9f1f52bee003528f4f854454980\"\u003e\u003ccode\u003efec5918\u003c/code\u003e\u003c/a\u003e Bump pypa/gh-action-pypi-publish in /.github/workflows (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/531\"\u003e#531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/e7900023bf4b32b70ca5b2d798f9ce52187582f8\"\u003e\u003ccode\u003ee790002\u003c/code\u003e\u003c/a\u003e version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/bb1f1e4cb5eba0928cec2aaff30cb0f5ace1f108\"\u003e\u003ccode\u003ebb1f1e4\u003c/code\u003e\u003c/a\u003e WIP: Patch open, os and os.path builtins (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/12005505fc29ab4183968022a487416a31b1a1bd\"\u003e\u003ccode\u003e1200550\u003c/code\u003e\u003c/a\u003e Refactor GS authentication to use default credentials (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/514\"\u003e#514\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/526\"\u003e#526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/b21cac14f0090021594f7e3afae9c48f5d7dbd46\"\u003e\u003ccode\u003eb21cac1\u003c/code\u003e\u003c/a\u003e Implement HTTP(s) support (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/863e884cbf1cf141cdf7bf9c0623e0cd3d27841d\"\u003e\u003ccode\u003e863e884\u003c/code\u003e\u003c/a\u003e fix for azure typing differences (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/524\"\u003e#524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/65c5c012bd4297ce4e812cfb8bbf9827db346e03\"\u003e\u003ccode\u003e65c5c01\u003c/code\u003e\u003c/a\u003e Set pytest-cases\u0026gt;=3.9.1 (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/520\"\u003e#520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/drivendataorg/cloudpathlib/compare/v0.21.1...v0.23.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `docutils` from 0.19 to 0.22.4\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/rtfd/recommonmark/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `idna` from 3.10 to 3.11\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kjd/idna/blob/master/HISTORY.rst\"\u003eidna's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e3.11 (2025-10-12)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to Unicode 16.0.0, including significant changes to UTS46\nprocessing. As a result of Unicode ending support for it, transitional\nprocessing no longer has an effect and returns the same result.\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14, lowest supported version is Python 3.8.\u003c/li\u003e\n\u003cli\u003eVarious updates to packaging, including PEP 740 support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/ad949ee3052c2265c66e3df2dd8871a5832ba327\"\u003e\u003ccode\u003ead949ee\u003c/code\u003e\u003c/a\u003e Release v3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/cae4ba779e0a543823894bd4136651c187944da8\"\u003e\u003ccode\u003ecae4ba7\u003c/code\u003e\u003c/a\u003e Second release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/8adb305165c77c4a45d1568a70ead75d2197692c\"\u003e\u003ccode\u003e8adb305\u003c/code\u003e\u003c/a\u003e Add space in RST link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/74cb2b652bb06133b0c4ab52cc98221be63162cf\"\u003e\u003ccode\u003e74cb2b6\u003c/code\u003e\u003c/a\u003e Release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/05dab09fdde5bbf7d52f757c4dc62e0ba934cca8\"\u003e\u003ccode\u003e05dab09\u003c/code\u003e\u003c/a\u003e Format idna-data with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/90eac78b737d26613776b490432fc6d926b15c55\"\u003e\u003ccode\u003e90eac78\u003c/code\u003e\u003c/a\u003e Apply ruff formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a31ce7ecc0b767e40abb5ce28744ac567b73f366\"\u003e\u003ccode\u003ea31ce7e\u003c/code\u003e\u003c/a\u003e Remove errant test vectors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/81f03334211c78c1832991ce70ebafb3cbfbb79c\"\u003e\u003ccode\u003e81f0333\u003c/code\u003e\u003c/a\u003e Omit vectors known to be broken in test suite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a0f32578c0cac28c7ffbb4c860c92eb2b9b579bd\"\u003e\u003ccode\u003ea0f3257\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into unicode-16-uts46-changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/38d98860e6a1ab92fd35ab09ea4739feabf339a3\"\u003e\u003ccode\u003e38d9886\u003c/code\u003e\u003c/a\u003e Remove extra UTS46 test vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kjd/idna/compare/v3.10...v3.11\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jellyfish` from 1.2.0 to 1.2.1\n\nUpdates `jmespath` from 1.0.1 to 1.1.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jmespath/jmespath.py/blob/develop/CHANGELOG.rst\"\u003ejmespath's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.1.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix concurrency issue with cache\n(\u003ccode\u003epr [#335](https://github.com/jmespath/jmespath.py/issues/335) \u0026lt;https://github.com/jmespath/jmespath.py/pull/335\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eAdded support for Python 3.12-3.14 (\u003ccode\u003epr [#331](https://github.com/jmespath/jmespath.py/issues/331) \u0026lt;https://github.com/jmespath/jmespath.py/pull/331\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eRemoved support for Python 3.7-3.8 (\u003ccode\u003epr [#335](https://github.com/jmespath/jmespath.py/issues/335) \u0026lt;https://github.com/jmespath/jmespath.py/pull/335\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/jmespath/jmespath.py/commit/6ff419a8b171d055a9bfc6904605bceb8b7a80ef\"\u003e\u003ccode\u003e6ff419a\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.1.0'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/17e964f81911b49babb33e8697b34a31f869420f\"\u003e\u003ccode\u003e17e964f\u003c/code\u003e\u003c/a\u003e Bump version to 1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/5ce13aab582ba08b07e1c615feeb3654a7cd8d62\"\u003e\u003ccode\u003e5ce13aa\u003c/code\u003e\u003c/a\u003e Merge branch 'v1.1.0' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/d8f0457f8f962724b2c1ae12f79d3ba65edf4d82\"\u003e\u003ccode\u003ed8f0457\u003c/code\u003e\u003c/a\u003e Revert versions back to current version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/8cb30825f62675f6018b812faa9e2c9566eba2e3\"\u003e\u003ccode\u003e8cb3082\u003c/code\u003e\u003c/a\u003e 1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/6e379910c1bc0ec0339b05da73e32cad9d3dddbc\"\u003e\u003ccode\u003e6e37991\u003c/code\u003e\u003c/a\u003e Update permissions in codeql.yml workflow (\u003ca href=\"https://redirect.github.com/jmespath/jmespath.py/issues/338\"\u003e#338\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/141734d98ac79c165ec31aa1c18dd29efc45ac49\"\u003e\u003ccode\u003e141734d\u003c/code\u003e\u003c/a\u003e Bring .github settings up-to-date (\u003ca href=\"https://redirect.github.com/jmespath/jmespath.py/issues/336\"\u003e#336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/07e30cf011056386c3dade2502a53eb2b1d4b3c1\"\u003e\u003ccode\u003e07e30cf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jmespath/jmespath.py/issues/337\"\u003e#337\u003c/a\u003e from nateprewitt/python_changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/9170711017c2be9e3057a384e4a6061ef71bdc6f\"\u003e\u003ccode\u003e9170711\u003c/code\u003e\u003c/a\u003e Add missing changelog entries for Python support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/cdb9327fd597dda1aff703e6e5b98d79503c6f4e\"\u003e\u003ccode\u003ecdb9327\u003c/code\u003e\u003c/a\u003e Fix file encoding for Windows\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jmespath/jmespath.py/compare/1.0.1...1.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `markdown-it-py` from 3.0.0 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/executablebooks/markdown-it-py/releases\"\u003emarkdown-it-py's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eThis primarily drops support for Python 3.8 and 3.9, adds support for Python 3.13,\nand updates the parser to comply with Commonmark 0.31.2 and Markdown-It v14.1.0.\u003c/p\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Drop Python 3.8, test 3.13 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/342\"\u003eexecutablebooks/markdown-it-py#342\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Drop support for Python 3.9 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/360\"\u003eexecutablebooks/markdown-it-py#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Comply with Commonmark 0.31.2 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/362\"\u003eexecutablebooks/markdown-it-py#362\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Improve performance of \u0026quot;text\u0026quot; inline rule by \u003ca href=\"https://github.com/hukkin\"\u003e\u003ccode\u003e@​hukkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/347\"\u003eexecutablebooks/markdown-it-py#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Use \u003ccode\u003estr.removesuffix\u003c/code\u003e by \u003ca href=\"https://github.com/hukkin\"\u003e\u003ccode\u003e@​hukkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/348\"\u003eexecutablebooks/markdown-it-py#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 limit the number of autocompleted cells in a table by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/364\"\u003eexecutablebooks/markdown-it-py#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 fix quadratic complexity in reference parser by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/367\"\u003eexecutablebooks/markdown-it-py#367\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix emphasis inside raw links bugs by \u003ca href=\"https://github.com/tsutsu3\"\u003e\u003ccode\u003e@​tsutsu3\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/320\"\u003eexecutablebooks/markdown-it-py#320\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔧 Replace black and isort with ruff formatter by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/313\"\u003eexecutablebooks/markdown-it-py#313\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Fixed Code Style paragraph still referring to flake8 by \u003ca href=\"https://github.com/venthur\"\u003e\u003ccode\u003e@​venthur\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/309\"\u003eexecutablebooks/markdown-it-py#309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Add \u0026quot;store_labels\u0026quot; to OptionsType by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/343\"\u003eexecutablebooks/markdown-it-py#343\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Move \u003ccode\u003ecode_style\u003c/code\u003e to dependency group by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/344\"\u003eexecutablebooks/markdown-it-py#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Update codecov action by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/345\"\u003eexecutablebooks/markdown-it-py#345\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Update pre-commit and upload-artifact by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/359\"\u003eexecutablebooks/markdown-it-py#359\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Improve spec update script by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/361\"\u003eexecutablebooks/markdown-it-py#361\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 simplify logic in scanDelims by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/365\"\u003eexecutablebooks/markdown-it-py#365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Add CI testing for Python 3.12 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/303\"\u003eexecutablebooks/markdown-it-py#303\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Fix codecov by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/332\"\u003eexecutablebooks/markdown-it-py#332\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📚 Fix typo by \u003ca href=\"https://github.com/bwagner\"\u003e\u003ccode\u003e@​bwagner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/315\"\u003eexecutablebooks/markdown-it-py#315\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix RTD build by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/322\"\u003eexecutablebooks/markdown-it-py#322\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Fix a few old URLs by \u003ca href=\"https://github.com/elijahgreenstein\"\u003e\u003ccode\u003e@​elijahgreenstein\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/358\"\u003eexecutablebooks/markdown-it-py#358\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Improve README by \u003ca href=\"https://github.com/mrmurilo75\"\u003e\u003ccode\u003e@​mrmurilo75\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/340\"\u003eexecutablebooks/markdown-it-py#340\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix CI badge link by \u003ca href=\"https://github.com/tsutsu3\"\u003e\u003ccode\u003e@​tsutsu3\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/291\"\u003eexecutablebooks/markdown-it-py#291\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Update docs by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/292\"\u003eexecutablebooks/markdown-it-py#292\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Add icon to readme by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/293\"\u003eexecutablebooks/markdown-it-py#293\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Update icon by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/294\"\u003eexecutablebooks/markdown-it-py#294\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Clarify docs regarding security configuration by \u003ca href=\"https://github.com/djramones\"\u003e\u003ccode\u003e@​djramones\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/296\"\u003eexecutablebooks/markdown-it-py#296\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix the RTD build by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/311\"\u003eexecutablebooks/markdown-it-py#311\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Fix typos by \u003ca href=\"https://github.com/elijahgreenstein\"\u003e\u003ccode\u003e@​elijahgreenstein\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/366\"\u003eexecutablebooks/markdown-it-py#366\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/executablebooks/markdown-it-py/blob/master/CHANGELOG.md\"\u003emarkdown-it-py's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.0 - 2024-08-10\u003c/h2\u003e\n\u003cp\u003eThis primarily drops support for Python 3.9, adds support for Python 3.13,\nand updates the parser to comply with Commonmark 0.31.2 and Markdown-It v14.1.0.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Drop support for Python 3.9 in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/360\"\u003e#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Comply with Commonmark 0.31.2 in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/362\"\u003e#362\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve performance of \u0026quot;text\u0026quot; inline rule in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/347\"\u003e#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Use \u003ccode\u003estr.removesuffix\u003c/code\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/348\"\u003e#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 limit the number of autocompleted cells in a table in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/364\"\u003e#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 fix quadratic complexity in reference parser in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/367\"\u003e#367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 Fix emphasis inside raw links bugs in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/320\"\u003e#320\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.0\"\u003ehttps://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.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/executablebooks/markdown-it-py/commit/c62983f1554124391b47170180e6c62df4d476ca\"\u003e\u003ccode\u003ec62983f\u003c/code\u003e\u003c/a\u003e 🚀 RELEASE v4.0.0 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/368\"\u003e#368\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/9e93bd554147ffb8582581e14620c7611103d2ff\"\u003e\u003ccode\u003e9e93bd5\u003c/code\u003e\u003c/a\u003e 👌 fix quadratic complexity in reference parser (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/367\"\u003e#367\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/da45c8764b2077425c091fa1811bbb1c5f211bd1\"\u003e\u003ccode\u003eda45c87\u003c/code\u003e\u003c/a\u003e 📚 DOCS: Fix typos (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/366\"\u003e#366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/87b16e272bf8207182084e07a63253b98fc437d7\"\u003e\u003ccode\u003e87b16e2\u003c/code\u003e\u003c/a\u003e 🔧 simplify logic in scanDelims (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/365\"\u003e#365\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/e4009641db528444b85d384af815e9cad997a016\"\u003e\u003ccode\u003ee400964\u003c/code\u003e\u003c/a\u003e 👌 limit the number of autocompleted cells in a table (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/364\"\u003e#364\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/4535d77edcb5f51450a266135687eeae8bcc5033\"\u003e\u003ccode\u003e4535d77\u003c/code\u003e\u003c/a\u003e ⬆️ Comply with Commonmark 0.31.2 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/8eb20ac1cb63e09dcd78e84a0c71dab8446bb73c\"\u003e\u003ccode\u003e8eb20ac\u003c/code\u003e\u003c/a\u003e 🔧 Improve spec update script (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/361\"\u003e#361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/fb9d3ab646e4f752dc8fd52e1dd7613c350ff190\"\u003e\u003ccode\u003efb9d3ab\u003c/code\u003e\u003c/a\u003e ⬆️ Drop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/360\"\u003e#360\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/9ffe841832d33264201aaff120349f001a02953a\"\u003e\u003ccode\u003e9ffe841\u003c/code\u003e\u003c/a\u003e 📚 DOCS: Fix a few old URLs (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/358\"\u003e#358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/154fe43feb17947e2c933d0bb3e26618129909a8\"\u003e\u003ccode\u003e154fe43\u003c/code\u003e\u003c/a\u003e 🔧 Update pre-commit and upload-artifact (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `numpy` from 2.2.5 to 2.4.1\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.1 (Jan 10, 2026)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.4.1 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.4.1 is a patch release that fixes bugs discoved after the\n2.4.0 release. In particular, the typo \u003ccode\u003eSeedlessSequence\u003c/code\u003e is preserved to\nenable wheels using the random Cython API and built against NumPy \u0026lt; 2.4.0\nto run without errors.\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 9 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\u003eAlexander Shadchin\u003c/li\u003e\n\u003cli\u003eBill Tompkins +\u003c/li\u003e\n\u003cli\u003eCharles Harris\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eMarten van Kerkwijk\u003c/li\u003e\n\u003cli\u003eNathan Goldbaum\u003c/li\u003e\n\u003cli\u003eRaghuveer Devulapalli\u003c/li\u003e\n\u003cli\u003eRalf Gommers\u003c/li\u003e\n\u003cli\u003eSebastian Berg\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ePull requests merged\u003c/h2\u003e\n\u003cp\u003eA total of 15 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/30490\"\u003e#30490\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/30503\"\u003e#30503\u003c/a\u003e: DOC: \u003ccode\u003enumpy.select\u003c/code\u003e: fix \u003ccode\u003edefault\u003c/code\u003e parameter docstring...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30504\"\u003e#30504\u003c/a\u003e: REV: Revert part of \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30164\"\u003e#30164\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30500\"\u003e#30500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30506\"\u003e#30506\u003c/a\u003e: TYP: \u003ccode\u003enumpy.select\u003c/code\u003e: allow passing array-like \u003ccode\u003edefault\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30507\"\u003e#30507\u003c/a\u003e: MNT: use if constexpr for compile-time branch selection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30513\"\u003e#30513\u003c/a\u003e: BUG: Fix leak i...\n\n_Description has been truncated_","html_url":"https://github.com/reichlab/cladetime/pull/190","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/reichlab%2Fcladetime/issues/190","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/190/packages"},{"uuid":"3829335206","node_id":"PR_kwDOHGh9Jc69_OsB","number":923,"state":"closed","title":"build(deps): bump the pipenv group across 1 directory with 11 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-02-03T10:28:07.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-19T11:43:59.000Z","updated_at":"2026-02-03T10:28:10.000Z","time_to_close":1291448,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"pipenv","update_count":11,"packages":[{"name":"sphinx-rtd-theme","old_version":"3.0.2","new_version":"3.1.0","repository_url":"https://github.com/readthedocs/sphinx_rtd_theme"},{"name":"sphinxcontrib-plantuml","old_version":"0.30","new_version":"0.31","repository_url":"https://github.com/sphinx-contrib/plantuml"},{"name":"mistune","old_version":"3.1.3","new_version":"3.2.0","repository_url":"https://github.com/lepture/mistune"},{"name":"myst-parser","old_version":"4.0.1","new_version":"5.0.0","repository_url":"https://github.com/executablebooks/MyST-Parser"},{"name":"pytest","old_version":"8.4.1","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"dynaconf","old_version":"3.2.11","new_version":"3.2.12","repository_url":"https://github.com/dynaconf/dynaconf"},{"name":"isort","old_version":"6.0.1","new_version":"7.0.0","repository_url":"https://github.com/PyCQA/isort"},{"name":"black","old_version":"25.1.0","new_version":"26.1.0","repository_url":"https://github.com/psf/black"},{"name":"pytest-html","old_version":"4.1.1","new_version":"4.2.0","repository_url":"https://github.com/pytest-dev/pytest-html"},{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.2","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"},{"name":"sphinx-needs","old_version":"5.1.0","new_version":"6.3.0","repository_url":"https://github.com/useblocks/sphinx-needs"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pipenv group with 11 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) | `3.0.2` | `3.1.0` |\n| [sphinxcontrib-plantuml](https://github.com/sphinx-contrib/plantuml) | `0.30` | `0.31` |\n| [mistune](https://github.com/lepture/mistune) | `3.1.3` | `3.2.0` |\n| [myst-parser](https://github.com/executablebooks/MyST-Parser) | `4.0.1` | `5.0.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.4.1` | `8.4.2` |\n| [dynaconf](https://github.com/dynaconf/dynaconf) | `3.2.11` | `3.2.12` |\n| [isort](https://github.com/PyCQA/isort) | `6.0.1` | `7.0.0` |\n| [black](https://github.com/psf/black) | `25.1.0` | `26.1.0` |\n| [pytest-html](https://github.com/pytest-dev/pytest-html) | `4.1.1` | `4.2.0` |\n| [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) | `4.0.0` | `4.1.2` |\n| [sphinx-needs](https://github.com/useblocks/sphinx-needs) | `5.1.0` | `6.3.0` |\n\n\nUpdates `sphinx-rtd-theme` from 3.0.2 to 3.1.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/blob/master/docs/changelog.rst\"\u003esphinx-rtd-theme's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.1.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for docutils 0.22\u003c/li\u003e\n\u003cli\u003eAdded support for Sphinx 9.x\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _release-3.1.0rc2:\u003c/p\u003e\n\u003ch1\u003e3.1.0rc2\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for docutils 0.22\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _release-3.1.0rc1:\u003c/p\u003e\n\u003ch1\u003e3.1.0rc1\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Sphinx 9.x\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _release-3.0.2:\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/795de79c8b311592f5863a25307d85924bf52164\"\u003e\u003ccode\u003e795de79\u003c/code\u003e\u003c/a\u003e Release 3.1.0 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1676\"\u003e#1676\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/66d0fdd910e142d058c20b474338051b0751f03c\"\u003e\u003ccode\u003e66d0fdd\u003c/code\u003e\u003c/a\u003e Add Python 3.14 to the test suite (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1668\"\u003e#1668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/fbe5e6004195a1e75654eface1884485c57eb68e\"\u003e\u003ccode\u003efbe5e60\u003c/code\u003e\u003c/a\u003e 3.1.0rc2 with support for docutils 0.22 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/a76174c0bb0af755718f3cbdffbf97d19d0ac0ec\"\u003e\u003ccode\u003ea76174c\u003c/code\u003e\u003c/a\u003e Add support for docutils 0.22 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1671\"\u003e#1671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/20733c3bcc60df8eda23512a0f3ccb2861486110\"\u003e\u003ccode\u003e20733c3\u003c/code\u003e\u003c/a\u003e Add support for Sphinx 9.0.0 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1666\"\u003e#1666\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/71aacd35048c8bc2ab646ed4e3e9af1075034387\"\u003e\u003ccode\u003e71aacd3\u003c/code\u003e\u003c/a\u003e Update Code of Conduct URL (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1664\"\u003e#1664\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/5a263753d52c1628c88392fbf52c729f5a8e79b5\"\u003e\u003ccode\u003e5a26375\u003c/code\u003e\u003c/a\u003e Run tests and build docs with Sphinx 8.2 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1640\"\u003e#1640\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/8d4d394dad2d55cf9a4db880effac6aa5c7b12e6\"\u003e\u003ccode\u003e8d4d394\u003c/code\u003e\u003c/a\u003e Sidebar should not be floating on mobile (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1622\"\u003e#1622\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/compare/3.0.2...3.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinxcontrib-plantuml` from 0.30 to 0.31\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/d15308432fc659319417a3f57f2190860c854b20\"\u003e\u003ccode\u003ed153084\u003c/code\u003e\u003c/a\u003e bump version to 0.31\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/123c26239e24d829c67950a4ee6b02d9a8a04179\"\u003e\u003ccode\u003e123c262\u003c/code\u003e\u003c/a\u003e search for ImageConverter capable of svg to pdf conversion after init\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/2d2adc477058594a81391cfda781f8c99be5f893\"\u003e\u003ccode\u003e2d2adc4\u003c/code\u003e\u003c/a\u003e github: bump actions, add Python 3.12 and 3.13, remove some middle/dead versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/27ece3637c0ec5fa91cacf511349e290a1440ba9\"\u003e\u003ccode\u003e27ece36\u003c/code\u003e\u003c/a\u003e tests: use inspect.getdoc() to get around breaking change in Python 3.13\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sphinx-contrib/plantuml/compare/0.30...0.31\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mistune` from 3.1.3 to 3.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lepture/mistune/releases\"\u003emistune's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.2.0\u003c/h2\u003e\n\u003ch3\u003e   🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport footnotes that start on the next line.  -  by \u003ca href=\"https://github.com/kylechui\"\u003e\u003ccode\u003e@​kylechui\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/2677e2d\"\u003e\u003c!-- raw HTML omitted --\u003e(2677e)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eProperly handle code blocks inside footnotes.  -  by \u003ca href=\"https://github.com/kylechui\"\u003e\u003ccode\u003e@​kylechui\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/0516c9e\"\u003e\u003c!-- raw HTML omitted --\u003e(0516c)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport python 3.14  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/7e0eb65\"\u003e\u003c!-- raw HTML omitted --\u003e(7e0eb)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRender ref links and footnotes in footnotes.  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/bd90e44\"\u003e\u003c!-- raw HTML omitted --\u003e(bd90e)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRender ref links in TOC.  -  by \u003ca href=\"https://github.com/lemon24\"\u003e\u003ccode\u003e@​lemon24\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/a0a0148\"\u003e\u003c!-- raw HTML omitted --\u003e(a0a01)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate typing for mypy upgrades  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/8d49cba\"\u003e\u003c!-- raw HTML omitted --\u003e(8d49c)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRender correct html for footnotes  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/9b62204\"\u003e\u003c!-- raw HTML omitted --\u003e(9b622)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/lepture/mistune/compare/v3.1.4...v3.2.0\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev3.1.4\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd fenced directive break rule in list parser, \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/412\"\u003e#412\u003c/a\u003e  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/412\"\u003elepture/mistune#412\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/ea3ecaf\"\u003e\u003c!-- raw HTML omitted --\u003e(ea3ec)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrevent remove unicode whitespace when parsing atx heading  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/9e72063\"\u003e\u003c!-- raw HTML omitted --\u003e(9e720)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/lepture/mistune/compare/v3.1.3...v3.1.4\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\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/lepture/mistune/blob/main/docs/changes.rst\"\u003emistune's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.2.0\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eReleased on Dec 23, 2025\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAnnounce supports for python 3.14\u003c/li\u003e\n\u003cli\u003eFix footnotes plugins for code blocks, ref links, blockquote and etc.\u003c/li\u003e\n\u003cli\u003eFix ref links in TOC.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.1.4\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eReleased on Aug 29, 2025\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd fenced directive break rule in list parser.\u003c/li\u003e\n\u003cli\u003ePrevent removing unicode whitespace when parsing atx heading.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/df23edd60b43b639d2e6760ef9dd3d618aa11c21\"\u003e\u003ccode\u003edf23edd\u003c/code\u003e\u003c/a\u003e chore: release 3.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/55fe3aff1e543faa0db281bbe60eb9e1a5f35933\"\u003e\u003ccode\u003e55fe3af\u003c/code\u003e\u003c/a\u003e chore: move permissions to job level\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/db9df8687d75915628ef20b4210b6aeb999cf4af\"\u003e\u003ccode\u003edb9df86\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/429\"\u003e#429\u003c/a\u003e from lepture/fix-428\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/9b6220486d7591c3204c82edff4376bfe40fdc19\"\u003e\u003ccode\u003e9b62204\u003c/code\u003e\u003c/a\u003e fix: render correct html for footnotes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/7dda5f5d321608a7c906e167c1ee6f1110dd5802\"\u003e\u003ccode\u003e7dda5f5\u003c/code\u003e\u003c/a\u003e chore: remove python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/0eb68715e08405158ad589def3fb4594ba2a004c\"\u003e\u003ccode\u003e0eb6871\u003c/code\u003e\u003c/a\u003e chore: mypy 1.19 has bugs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/8d49cba8ffa69fc807e3b30b87822d89069dff72\"\u003e\u003ccode\u003e8d49cba\u003c/code\u003e\u003c/a\u003e fix: update typing for mypy upgrades\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/7e0eb658e70e27e409cbf61f49a0907731e17acf\"\u003e\u003ccode\u003e7e0eb65\u003c/code\u003e\u003c/a\u003e feat: support python 3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/28e7d464aa898f23a4975c76c19f6977aaa738e0\"\u003e\u003ccode\u003e28e7d46\u003c/code\u003e\u003c/a\u003e chore: update deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/c82ad09675a5603166cf34bf1682953b56efb9ae\"\u003e\u003ccode\u003ec82ad09\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/427\"\u003e#427\u003c/a\u003e from lemon24/main\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/lepture/mistune/compare/v3.1.3...v3.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `myst-parser` from 4.0.1 to 5.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/executablebooks/MyST-Parser/releases\"\u003emyst-parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.0.0\u003c/h2\u003e\n\u003ch1\u003eMyST-Parser 5.0.0\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eRelease Date\u003c/strong\u003e: 2026-01-15\u003c/p\u003e\n\u003cp\u003eThis release significantly bumps the supported versions of core dependencies:\u003c/p\u003e\n\u003ch2\u003e‼️ Breaking Changes\u003c/h2\u003e\n\u003cp\u003eThis release updates the minimum supported versions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ePython\u003c/strong\u003e: \u003ccode\u003e\u0026gt;=3.11\u003c/code\u003e (dropped Python 3.10, tests up to 3.14)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eSphinx\u003c/strong\u003e: \u003ccode\u003e\u0026gt;=8,\u0026lt;10\u003c/code\u003e (dropped Sphinx 7, added Sphinx 9)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDocutils\u003c/strong\u003e: \u003ccode\u003e\u0026gt;=0.20,\u0026lt;0.23\u003c/code\u003e (dropped docutils 0.19, added docutils 0.22)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emarkdown-it-py\u003c/strong\u003e: \u003ccode\u003e~=4.0\u003c/code\u003e (upgraded from v3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e⬆️ Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Upgrade to markdown-it-py v4 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1060\"\u003e#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Drop Python 3.10 and Sphinx 7 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1059\"\u003e#1059\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Drop docutils 0.19 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1061\"\u003e#1061\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Add support for Python 3.14 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1075\"\u003e#1075\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Support Sphinx v9 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1076\"\u003e#1076\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Allow docutils 0.22 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1084\"\u003e#1084\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e👌 Improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Improve generation of meta nodes by \u003ca href=\"https://github.com/AA-Turner\"\u003e\u003ccode\u003e@​AA-Turner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1080\"\u003e#1080\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e📚 Fix typo in tables.md by \u003ca href=\"https://github.com/electricalgorithm\"\u003e\u003ccode\u003e@​electricalgorithm\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1034\"\u003e#1034\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix minor typo in \u003ccode\u003ecross-referencing.md\u003c/code\u003e by \u003ca href=\"https://github.com/krassowski\"\u003e\u003ccode\u003e@​krassowski\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1036\"\u003e#1036\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔧 Internal / Maintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🔧 Update pre-commit by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1058\"\u003e#1058\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Add \u003ccode\u003eAGENTS.md\u003c/code\u003e by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1083\"\u003e#1083\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/executablebooks/MyST-Parser/compare/v4.0.1...v5.0.0\"\u003ev4.0.1...v5.0.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/executablebooks/MyST-Parser/blob/master/CHANGELOG.md\"\u003emyst-parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.0.0 - 2026-01-15\u003c/h2\u003e\n\u003cp\u003eThis release significantly bumps the supported versions of core dependencies:\u003c/p\u003e\n\u003ch3\u003e‼️ Breaking Changes\u003c/h3\u003e\n\u003cp\u003eThis release updates the minimum supported versions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ePython\u003c/strong\u003e: \u003ccode\u003e\u0026gt;=3.11\u003c/code\u003e (dropped Python 3.10, tests up to 3.14)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eSphinx\u003c/strong\u003e: \u003ccode\u003e\u0026gt;=8,\u0026lt;10\u003c/code\u003e (dropped Sphinx 7, added Sphinx 9)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDocutils\u003c/strong\u003e: \u003ccode\u003e\u0026gt;=0.20,\u0026lt;0.23\u003c/code\u003e (dropped docutils 0.19, added docutils 0.22)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emarkdown-it-py\u003c/strong\u003e: \u003ccode\u003e~=4.0\u003c/code\u003e (upgraded from v3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e⬆️ Dependency Upgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Upgrade to markdown-it-py v4 by \u003ca href=\"gh-user:chrisjsewell\"\u003egh-user:chrisjsewell\u003c/a\u003e in \u003ca href=\"gh-pr:1060\"\u003egh-pr:1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Drop Python 3.10 and Sphinx 7 by \u003ca href=\"gh-user:chrisjsewell\"\u003egh-user:chrisjsewell\u003c/a\u003e in \u003ca href=\"gh-pr:1059\"\u003egh-pr:1059\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Drop docutils 0.19 by \u003ca href=\"gh-user:chrisjsewell\"\u003egh-user:chrisjsewell\u003c/a\u003e in \u003ca href=\"gh-pr:1061\"\u003egh-pr:1061\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Add support for Python 3.14 by \u003ca href=\"gh-user:chrisjsewell\"\u003egh-user:chrisjsewell\u003c/a\u003e in \u003ca href=\"gh-pr:1075\"\u003egh-pr:1075\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Support Sphinx v9 by \u003ca href=\"gh-user:chrisjsewell\"\u003egh-user:chrisjsewell\u003c/a\u003e in \u003ca href=\"gh-pr:1076\"\u003egh-pr:1076\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Allow docutils 0.22 by \u003ca href=\"gh-user:chrisjsewell\"\u003egh-user:chrisjsewell\u003c/a\u003e in \u003ca href=\"gh-pr:1084\"\u003egh-pr:1084\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e👌 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Improve generation of meta nodes by \u003ca href=\"gh-user:AA-Turner\"\u003egh-user:AA-Turner\u003c/a\u003e in \u003ca href=\"gh-pr:1080\"\u003egh-pr:1080\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📚 Fix typo in tables.md by \u003ca href=\"gh-user:electricalgorithm\"\u003egh-user:electricalgorithm\u003c/a\u003e in \u003ca href=\"gh-pr:1034\"\u003egh-pr:1034\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix minor typo in \u003ccode\u003ecross-referencing.md\u003c/code\u003e by \u003ca href=\"gh-user:krassowski\"\u003egh-user:krassowski\u003c/a\u003e in \u003ca href=\"gh-pr:1036\"\u003egh-pr:1036\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🔧 Internal / Maintenance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔧 Update pre-commit by \u003ca href=\"gh-user:chrisjsewell\"\u003egh-user:chrisjsewell\u003c/a\u003e in \u003ca href=\"gh-pr:1058\"\u003egh-pr:1058\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Add \u003ccode\u003eAGENTS.md\u003c/code\u003e by \u003ca href=\"gh-user:chrisjsewell\"\u003egh-user:chrisjsewell\u003c/a\u003e in \u003ca href=\"gh-pr:1083\"\u003egh-pr:1083\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/executablebooks/MyST-Parser/compare/v4.0.1...v5.0.0\"\u003ev4.0.1...v5.0.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/executablebooks/MyST-Parser/commit/a139a1fd47277c5adcb7ec033e9f4ad52e6c779e\"\u003e\u003ccode\u003ea139a1f\u003c/code\u003e\u003c/a\u003e 🚀 Release v5.0.0 (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1085\"\u003e#1085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/540511016f1f7a791b300201b069c05cf76b6b65\"\u003e\u003ccode\u003e5405110\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1071\"\u003e#1071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/19512c00ae2b4af7866850305d63c7a08f81684f\"\u003e\u003ccode\u003e19512c0\u003c/code\u003e\u003c/a\u003e ⬆️ Allow docutils 0.22 (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1084\"\u003e#1084\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/a9e529f279ebd3192b870632e92d47036b75d240\"\u003e\u003ccode\u003ea9e529f\u003c/code\u003e\u003c/a\u003e ⬆️ Support Sphinx v9 (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/fcf78ca56fafd4454e3537cc8728e9af6b1052d0\"\u003e\u003ccode\u003efcf78ca\u003c/code\u003e\u003c/a\u003e 👌 Improve generation of meta nodes (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1080\"\u003e#1080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/e0fc7a32ae6dee181213b86c6f85195bc08b2706\"\u003e\u003ccode\u003ee0fc7a3\u003c/code\u003e\u003c/a\u003e 🔧 Add \u003ccode\u003eAGENTS.md\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1083\"\u003e#1083\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/59d5384732ea25c9a4d7e8615ee74b97631326da\"\u003e\u003ccode\u003e59d5384\u003c/code\u003e\u003c/a\u003e ⬆️ Add support for Python 3.14 (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1075\"\u003e#1075\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/7b7d961c12c1bf267dc5f87f69f87c603f18c8b9\"\u003e\u003ccode\u003e7b7d961\u003c/code\u003e\u003c/a\u003e ⬆️ Update pytest requirement from \u0026lt;9,\u0026gt;=8 to \u0026gt;=9,\u0026lt;10 (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1063\"\u003e#1063\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/3342a3c7d89dfd8de6a09bbf17bc9134160fe609\"\u003e\u003ccode\u003e3342a3c\u003c/code\u003e\u003c/a\u003e ⬆️ Update sphinxext-opengraph requirement from ~=0.9.0 to ~=0.13.0 (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1066\"\u003e#1066\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/2cf85deb227418c20fef5e9550a6f7e6671f6d4a\"\u003e\u003ccode\u003e2cf85de\u003c/code\u003e\u003c/a\u003e ⬆️ Update sphinxext-rediraffe requirement from ~=0.2.7 to ~=0.3.0 (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1064\"\u003e#1064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/executablebooks/MyST-Parser/compare/v4.0.1...v5.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 8.4.1 to 8.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.2\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.2 (2025-09-03)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13478\"\u003e#13478\u003c/a\u003e: Fixed a crash when using \u003ccode\u003econsole_output_style\u003c/code\u003e{.interpreted-text role=\u0026quot;confval\u0026quot;} with \u003ccode\u003etimes\u003c/code\u003e and a module is skipped.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13530\"\u003e#13530\u003c/a\u003e: Fixed a crash when using \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and \u003ccode\u003edecimal.Decimal\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} instances with the \u003ccode\u003edecimal.FloatOperation\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} trap set.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13549\"\u003e#13549\u003c/a\u003e: No longer evaluate type annotations in Python \u003ccode\u003e3.14\u003c/code\u003e when inspecting function signatures.\u003c/p\u003e\n\u003cp\u003eThis prevents crashes during module collection when modules do not explicitly use \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e and import types for annotations within a \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13559\"\u003e#13559\u003c/a\u003e: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in \u003ccode\u003epytest.Parser.addini\u003c/code\u003e{.interpreted-text role=\u0026quot;meth\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13563\"\u003e#13563\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now only imports \u003ccode\u003enumpy\u003c/code\u003e if NumPy is already in \u003ccode\u003esys.modules\u003c/code\u003e. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13577\"\u003e#13577\u003c/a\u003e: Clarify that \u003ccode\u003epytest_generate_tests\u003c/code\u003e is discovered in test modules/classes; other hooks must be in \u003ccode\u003econftest.py\u003c/code\u003e or plugins.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13480\"\u003e#13480\u003c/a\u003e: Self-testing: fixed a few test failures when run with \u003ccode\u003e-Wdefault\u003c/code\u003e or a similar override.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13547\"\u003e#13547\u003c/a\u003e: Self-testing: corrected expected message for \u003ccode\u003etest_doctest_unexpected_exception\u003c/code\u003e in Python \u003ccode\u003e3.14\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13684\"\u003e#13684\u003c/a\u003e: Make pytest's own testsuite insensitive to the presence of the \u003ccode\u003eCI\u003c/code\u003e environment variable -- by \u003ccode\u003eogrisel\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bfae4224fd554d3d7f2c277a4cc092b6ec6af3ae\"\u003e\u003ccode\u003ebfae422\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/89905381a163be30ae87d62e5f750e902d750c5f\"\u003e\u003ccode\u003e8990538\u003c/code\u003e\u003c/a\u003e Fix passenv CI in tox ini and make tests insensitive to the presence of the C...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ca676bfe005aebcb12f4146d1b0f1d2772e2cd5d\"\u003e\u003ccode\u003eca676bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13687\"\u003e#13687\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/e63f6e51c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/975a60a63ce385a44655596e254c1899feaa53e4\"\u003e\u003ccode\u003e975a60a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13686\"\u003e#13686\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/12bde8af6...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7723ce84b87ab08f86ddafcb342acc28ba5ec99d\"\u003e\u003ccode\u003e7723ce8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13683\"\u003e#13683\u003c/a\u003e from even-even/fix_Exeption_to_Exception_in_errorMe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7f05680d1301e0969b30bcb3c4b27433c9ee2b7\"\u003e\u003ccode\u003eb7f0568\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13685\"\u003e#13685\u003c/a\u003e from CoretexShadow/fix/docs-pytest-generate-tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2c94c4a6948ba53440818389298157fa5d5f94cd\"\u003e\u003ccode\u003e2c94c4a\u003c/code\u003e\u003c/a\u003e add missing colon (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13640\"\u003e#13640\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13641\"\u003e#13641\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c3d7684bc01c8c48d05145a30c5211ca8656c68c\"\u003e\u003ccode\u003ec3d7684\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13606\"\u003e#13606\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/5f9938563...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/dc6e3be2ddc75a149b6d102d9b7c82ee47a00cfa\"\u003e\u003ccode\u003edc6e3be\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13605\"\u003e#13605\u003c/a\u003e from The-Compiler/training-update-2025-07\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f87289c36c8dbe7740e3020f5546b6f8b0861ff0\"\u003e\u003ccode\u003ef87289c\u003c/code\u003e\u003c/a\u003e Fix crash with \u003ccode\u003etimes\u003c/code\u003e output style and skipped module (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13573\"\u003e#13573\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13579\"\u003e#13579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.4.1...8.4.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dynaconf` from 3.2.11 to 3.2.12\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dynaconf/dynaconf/releases\"\u003edynaconf's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.12\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIncremental improvment to access performance by \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1304\"\u003edynaconf/dynaconf#1304\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: get method to return Any type. by \u003ca href=\"https://github.com/rochacbruno\"\u003e\u003ccode\u003e@​rochacbruno\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1314\"\u003edynaconf/dynaconf#1314\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: add lru caching to \u003ccode\u003efind_the_correct_casing\u003c/code\u003e function by \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1326\"\u003edynaconf/dynaconf#1326\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\"\u003ehttps://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dynaconf/dynaconf/blob/3.2.12/CHANGELOG.md\"\u003edynaconf's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/pedro-psb/dynaconf/releases/tag/3.2.12\"\u003e3.2.12\u003c/a\u003e - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eget method to return Any type.. \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eremove unnecessary recursive evaluation call on Settings.get. \u003cem\u003eBy Pedro Brochado\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eimprove performance of settings access in a loop (part 1). \u003cem\u003eBy Pedro Brochado\u003c/em\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/7606f351ac460b15c56e7a538300de4a501c56e7\"\u003e\u003ccode\u003e7606f35\u003c/code\u003e\u003c/a\u003e Release version 3.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/da44e5182940299dd90ca3e2a0e0e3c23cb9ebf7\"\u003e\u003ccode\u003eda44e51\u003c/code\u003e\u003c/a\u003e perf: add lru caching to \u003ccode\u003efind_the_correct_casing\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1326\"\u003e#1326\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/b75eda0da141bdc29f707f2cb0c29e06b03a72bb\"\u003e\u003ccode\u003eb75eda0\u003c/code\u003e\u003c/a\u003e fix: get method to return Any type.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/4f3df1a47bcb71feddf7565f603e7994c65ede65\"\u003e\u003ccode\u003e4f3df1a\u003c/code\u003e\u003c/a\u003e misc: add some profile/perf scripts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/420acebf64e77ba475df94dfd7d409207e5e239d\"\u003e\u003ccode\u003e420aceb\u003c/code\u003e\u003c/a\u003e refactor: merge \u003cem\u003esafe\u003c/em\u003e{get,copy} into .get and .copy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/18c0c8422dc9651d57c76d1b098ad6fb3f75c09d\"\u003e\u003ccode\u003e18c0c84\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary recursive evaluation call on Settings.get\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/0fde96f2e0b71309e63800ddac8eceda062155a9\"\u003e\u003ccode\u003e0fde96f\u003c/code\u003e\u003c/a\u003e refactor: rewrite decorator as explicit call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/52efd9ed78d2187550e03a2ae5008661d5e28df9\"\u003e\u003ccode\u003e52efd9e\u003c/code\u003e\u003c/a\u003e Bump to version 3.2.12-dev0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isort` from 6.0.1 to 7.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/releases\"\u003eisort's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.0.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003ch2\u003e:boom: Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:rocket: Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eShow absolute paths in skipped file messages (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2416\"\u003e#2416\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSome fixes for Python 3.14 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on \u003ccode\u003e3.14\u003c/code\u003e and fix any bugs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2425\"\u003e#2425\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CHANGELOG.md + Fix Formatting and Grammar (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2419\"\u003e#2419\u003c/a\u003e) \u003ca href=\"https://github.com/lukbrew25\"\u003e\u003ccode\u003e@​lukbrew25\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix output of hanging indent for long lines with noqa (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2407\"\u003e#2407\u003c/a\u003e) \u003ca href=\"https://github.com/matan1008\"\u003e\u003ccode\u003e@​matan1008\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFormat with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTarget 3.10 for \u003ccode\u003eruff\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate development dependencies to latest version (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2426\"\u003e#2426\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update pre-commit examples to version 6.1.0 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2413\"\u003e#2413\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSmall cleanup for developer environment (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2418\"\u003e#2418\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/setup-python from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2411\"\u003e#2411\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.1.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs discussions channel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2410\"\u003e#2410\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse working isort version in pre-commit example (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2402\"\u003e#2402\u003c/a\u003e) \u003ca href=\"https://github.com/iainelder\"\u003e\u003ccode\u003e@​iainelder\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix typo in _get_files_from_dir_cached test (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2392\"\u003e#2392\u003c/a\u003e) \u003ca href=\"https://github.com/tiltingpenguin\"\u003e\u003ccode\u003e@​tiltingpenguin\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eResolve bandit warnings (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2379\"\u003e#2379\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd tox for cross-platform, parallel test suite execution (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2378\"\u003e#2378\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Project URLs to PyPI Side Panel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2387\"\u003e#2387\u003c/a\u003e) \u003ca href=\"https://github.com/guillermodotn\"\u003e\u003ccode\u003e@​guillermodotn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typos (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2376\"\u003e#2376\u003c/a\u003e) \u003ca href=\"https://github.com/co63oc\"\u003e\u003ccode\u003e@​co63oc\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd make bash scripts portable (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2377\"\u003e#2377\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 4 to 5 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2406\"\u003e#2406\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/blob/main/CHANGELOG.md\"\u003eisort's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003eNOTE: isort follows the \u003ca href=\"https://semver.org/\"\u003esemver\u003c/a\u003e versioning standard.\nFind out more about isort's release policy \u003ca href=\"https://pycqa.github.io/isort/docs/major_releases/release_policy\"\u003ehere\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eUnreleased\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved \u003ccode\u003e--old-finders\u003c/code\u003e and \u003ccode\u003e--magic-placement\u003c/code\u003e flags and \u003ccode\u003eold_finders\u003c/code\u003e configuration option. The legacy finder logic that relied on environment introspection has been removed (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2445\"\u003e#2445\u003c/a\u003e) \u003ca href=\"https://github.com/joao-faria-dev\"\u003e\u003ccode\u003e@​joao-faria-dev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e6.1.0 October 1 2025\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0a09c783808cfe77bb3269250f663ff733d23302\"\u003e\u003ccode\u003e0a09c78\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e from DanielNoord/python-314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0fee794a05b5d0c471ac80bc8943f9843ca29644\"\u003e\u003ccode\u003e0fee794\u003c/code\u003e\u003c/a\u003e Add 3.14 to \u003ccode\u003estdlibds\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/332a1ad0b68bf3a3acac055b0ec3666408b3b425\"\u003e\u003ccode\u003e332a1ad\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003ezstandard\u003c/code\u003e for 3.14 compat\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/f756e5653afcf6d79ec4d0240b1868cbebd8fafd\"\u003e\u003ccode\u003ef756e56\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/52f5134889d345ff35afdcb86501c8221b804c70\"\u003e\u003ccode\u003e52f5134\u003c/code\u003e\u003c/a\u003e Format with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/012aa69fcadb3c89ff92a3d96aa449be7ae6746f\"\u003e\u003ccode\u003e012aa69\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/89773dbb371192541092657972a74e9ce0bbbc74\"\u003e\u003ccode\u003e89773db\u003c/code\u003e\u003c/a\u003e Target 3.10 with \u003ccode\u003eruff\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/933e382f98a0c77b4c6e33c4e3ef12bd57192884\"\u003e\u003ccode\u003e933e382\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e from DanielNoord/drop-39\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/8b6e00cbe643a216da57fed4baa282d0a4a1b829\"\u003e\u003ccode\u003e8b6e00c\u003c/code\u003e\u003c/a\u003e Remove support for Python 3.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/b5f9f296ad873734e8caa3a731f27360648d9b37\"\u003e\u003ccode\u003eb5f9f29\u003c/code\u003e\u003c/a\u003e Bump profile plugin to 3.10+ and re-lock\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/isort/compare/6.0.1...7.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `black` from 25.1.0 to 26.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e26.1.0\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cp\u003eIntroduces the 2026 stable style (\u003ca href=\"https://redirect.github.com/psf/black/issues/4892\"\u003e#4892\u003c/a\u003e), stabilizing the following changes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ealways_one_newline_after_import\u003c/code\u003e: Always force one blank line after import\nstatements, except when the line after the import is a comment or an import statement\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4489\"\u003e#4489\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e: Fix \u003ccode\u003e# fmt: skip\u003c/code\u003e behavior on one-liner declarations,\nsuch as \u003ccode\u003edef foo(): return \u0026quot;mock\u0026quot; # fmt: skip\u003c/code\u003e, where previously the declaration would\nhave been incorrectly collapsed (\u003ca href=\"https://redirect.github.com/psf/black/issues/4800\"\u003e#4800\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efix_module_docstring_detection\u003c/code\u003e: Fix module docstrings being treated as normal\nstrings if preceded by comments (\u003ca href=\"https://redirect.github.com/psf/black/issues/4764\"\u003e#4764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efix_type_expansion_split\u003c/code\u003e: Fix type expansions split in generic functions (\u003ca href=\"https://redirect.github.com/psf/black/issues/4777\"\u003e#4777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emultiline_string_handling\u003c/code\u003e: Make expressions involving multiline strings more compact\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/1879\"\u003e#1879\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enormalize_cr_newlines\u003c/code\u003e: Add \u003ccode\u003e\\r\u003c/code\u003e style newlines to the potential newlines to\nnormalize file newlines both from and to (\u003ca href=\"https://redirect.github.com/psf/black/issues/4710\"\u003e#4710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eremove_parens_around_except_types\u003c/code\u003e: Remove parentheses around multiple exception\ntypes in \u003ccode\u003eexcept\u003c/code\u003e and \u003ccode\u003eexcept*\u003c/code\u003e without \u003ccode\u003eas\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4720\"\u003e#4720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eremove_parens_from_assignment_lhs\u003c/code\u003e: Remove unnecessary parentheses from the left-hand\nside of assignments while preserving magic trailing commas and intentional multiline\nformatting (\u003ca href=\"https://redirect.github.com/psf/black/issues/4865\"\u003e#4865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003estandardize_type_comments\u003c/code\u003e: Format type comments which have zero or more spaces\nbetween \u003ccode\u003e#\u003c/code\u003e and \u003ccode\u003etype:\u003c/code\u003e or between \u003ccode\u003etype:\u003c/code\u003e and value to \u003ccode\u003e# type: (value)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe following change was not in any previous stable release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRegenerated the \u003ccode\u003e_width_table.py\u003c/code\u003e and added tests for the Khmer language (\u003ca href=\"https://redirect.github.com/psf/black/issues/4253\"\u003e#4253\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThis release alo bumps \u003ccode\u003epathspec\u003c/code\u003e to v1 and fixes inconsistencies with Git's\n\u003ccode\u003e.gitignore\u003c/code\u003e logic (\u003ca href=\"https://redirect.github.com/psf/black/issues/4958\"\u003e#4958\u003c/a\u003e). Now, files will be ignored if a pattern matches them, even\nif the parent directory is directly unignored. For example, Black would previously\nformat \u003ccode\u003eexclude/not_this/foo.py\u003c/code\u003e with this \u003ccode\u003e.gitignore\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexclude/\n!exclude/not_this/\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNow, \u003ccode\u003eexclude/not_this/foo.py\u003c/code\u003e will remain ignored. To ensure \u003ccode\u003eexclude/not_this/\u003c/code\u003e and\nall of it's children are included in formatting (and in Git), use this \u003ccode\u003e.gitignore\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e*/exclude/*\n!*/exclude/not_this/\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eThis new behavior matches Git. The leading \u003ccode\u003e*/\u003c/code\u003e are only necessary if you wish to ignore\nmatching subdirectories (like the previous behavior did), and not just matching root\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e26.1.0\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cp\u003eIntroduces the 2026 stable style (\u003ca href=\"https://redirect.github.com/psf/black/issues/4892\"\u003e#4892\u003c/a\u003e), stabilizing the following changes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ealways_one_newline_after_import\u003c/code\u003e: Always force one blank line after import\nstatements, except when the line after the import is a comment or an import statement\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4489\"\u003e#4489\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e: Fix \u003ccode\u003e# fmt: skip\u003c/code\u003e behavior on one-liner declarations,\nsuch as \u003ccode\u003edef foo(): return \u0026quot;mock\u0026quot; # fmt: skip\u003c/code\u003e, where previously the declaration would\nhave been incorrectly collapsed (\u003ca href=\"https://redirect.github.com/psf/black/issues/4800\"\u003e#4800\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efix_module_docstring_detection\u003c/code\u003e: Fix module docstrings being treated as normal\nstrings if preceded by comments (\u003ca href=\"https://redirect.github.com/psf/black/issues/4764\"\u003e#4764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efix_type_expansion_split\u003c/code\u003e: Fix type expansions split in generic functions (\u003ca href=\"https://redirect.github.com/psf/black/issues/4777\"\u003e#4777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emultiline_string_handling\u003c/code\u003e: Make expressions involving multiline strings more compact\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/1879\"\u003e#1879\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enormalize_cr_newlines\u003c/code\u003e: Add \u003ccode\u003e\\r\u003c/code\u003e style newlines to the potential newlines to\nnormalize file newlines both from and to (\u003ca href=\"https://redirect.github.com/psf/black/issues/4710\"\u003e#4710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eremove_parens_around_except_types\u003c/code\u003e: Remove parentheses around multiple exception\ntypes in \u003ccode\u003eexcept\u003c/code\u003e and \u003ccode\u003eexcept*\u003c/code\u003e without \u003ccode\u003eas\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4720\"\u003e#4720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eremove_parens_from_assignment_lhs\u003c/code\u003e: Remove unnecessary parentheses from the left-hand\nside of assignments while preserving magic trailing commas and intentional multiline\nformatting (\u003ca href=\"https://redirect.github.com/psf/black/issues/4865\"\u003e#4865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003estandardize_type_comments\u003c/code\u003e: Format type comments which have zero or more spaces\nbetween \u003ccode\u003e#\u003c/code\u003e and \u003ccode\u003etype:\u003c/code\u003e or between \u003ccode\u003etype:\u003c/code\u003e and value to \u003ccode\u003e# type: (value)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe following change was not in any previous stable release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRegenerated the \u003ccode\u003e_width_table.py\u003c/code\u003e and added tests for the Khmer language (\u003ca href=\"https://redirect.github.com/psf/black/issues/4253\"\u003e#4253\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThis release alo bumps \u003ccode\u003epathspec\u003c/code\u003e to v1 and fixes inconsistencies with Git's\n\u003ccode\u003e.gitignore\u003c/code\u003e logic (\u003ca href=\"https://redirect.github.com/psf/black/issues/4958\"\u003e#4958\u003c/a\u003e). Now, files will be ignored if a pattern matches them, even\nif the parent directory is directly unignored. For example, Black would previously\nformat \u003ccode\u003eexclude/not_this/foo.py\u003c/code\u003e with this \u003ccode\u003e.gitignore\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexclude/\n!exclude/not_this/\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNow, \u003ccode\u003eexclude/not_this/foo.py\u003c/code\u003e will remain ignored. To ensure \u003ccode\u003eexclude/not_this/\u003c/code\u003e and\nall of it's children are included in formatting (and in Git), use this \u003ccode\u003e.gitignore\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e*/exclude/*\n!*/exclude/not_this/\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eThis new behavior matches Git. The leading \u003ccode\u003e*/\u003c/code\u003e are only necessary if you wish to ignore\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/6305bf1ae645ab7541be4f5028a86239316178eb\"\u003e\u003ccode\u003e6305bf1\u003c/code\u003e\u003c/a\u003e Prepare 2026.1.0 release (\u003ca href=\"https://redirect.github.com/psf/black/issues/4892\"\u003e#4892\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/e71305bee302f7f9016b228361e5ae69669dca7b\"\u003e\u003ccode\u003ee71305b\u003c/code\u003e\u003c/a\u003e Bump pypa/cibuildwheel from 3.3.0 to 3.3.1 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4961\"\u003e#4961\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/21a2a8c2b1d0c8d47bc00cc59591470f6a9e2307\"\u003e\u003ccode\u003e21a2a8c\u003c/code\u003e\u003c/a\u003e Fix Shutdown multiprocessing Manager in schedule_formatting (\u003ca href=\"https://redirect.github.com/psf/black/issues/4952\"\u003e#4952\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/e3146cea4245fcee29d007cb45d9faaf63271586\"\u003e\u003ccode\u003ee3146ce\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.11.1 to 3.12.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4919\"\u003e#4919\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/fe1fbc4fdfa03fa1d460f975b8aca77e4b4f1a4a\"\u003e\u003ccode\u003efe1fbc4\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4923\"\u003e#4923\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/2b4b7fcfe00bb0d99322e07e87fc2f0992f7a4d8\"\u003e\u003ccode\u003e2b4b7fc\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 6.0.0 to 7.0.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4922\"\u003e#4922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/d745be69bfa9d85ec2ef6e5f9b7ec7e253b5e8ab\"\u003e\u003ccode\u003ed745be6\u003c/code\u003e\u003c/a\u003e docs: document --force-exclude for pre-commit workflows (\u003ca href=\"https://redirect.github.com/psf/black/issues/4957\"\u003e#4957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b41acd6ebbe76e18b49286166924f73f01c3fd02\"\u003e\u003ccode\u003eb41acd6\u003c/code\u003e\u003c/a\u003e Various CI and doc refactors (\u003ca href=\"https://redirect.github.com/psf/black/issues/4928\"\u003e#4928\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/6f43612766da4a2f275b575af0802c3e73b6ed83\"\u003e\u003ccode\u003e6f43612\u003c/code\u003e\u003c/a\u003e Handle pathspec v1 changes (\u003ca href=\"https://redirect.github.com/psf/black/issues/4958\"\u003e#4958\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/200c550aff44372f801a6d826a361cb26f45a504\"\u003e\u003ccode\u003e200c550\u003c/code\u003e\u003c/a\u003e Bump furo from 2025.9.25 to 2025.12.19 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4933\"\u003e#4933\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/25.1.0...26.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-html` from 4.1.1 to 4.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-html/releases\"\u003epytest-html's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: Extras from setup/teardown missing in report by \u003ca href=\"https://github.com/BeyondEvil\"\u003e\u003ccode\u003e@​BeyondEvil\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/784\"\u003epytest-dev/pytest-html#784\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Total duration when running in parallel by \u003ca href=\"https://github.com/BeyondEvil\"\u003e\u003ccode\u003e@​BeyondEvil\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/785\"\u003epytest-dev/pytest-html#785\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix license classifier in pyproject.toml by \u003ca href=\"https://github.com/tapdiego-amzn\"\u003e\u003ccode\u003e@​tapdiego-amzn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/789\"\u003epytest-dev/pytest-html#789\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/771\"\u003epytest-dev/pytest-html#771\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix for \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/806\"\u003e#806\u003c/a\u003e (if results table order changed, hide/show details hover over broken) by \u003ca href=\"https://github.com/volkan-aslan\"\u003e\u003ccode\u003e@​volkan-aslan\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/807\"\u003epytest-dev/pytest-html#807\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump certifi from 2023.5.7 to 2023.7.22 in /docs 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/pytest-dev/pytest-html/pull/699\"\u003epytest-dev/pytest-html#699\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart tag has wrong closing tag by \u003ca href=\"https://github.com/zingero\"\u003e\u003ccode\u003e@​zingero\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/834\"\u003epytest-dev/pytest-html#834\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop python 3.8, add support for 3.12, 3.13 by \u003ca href=\"https://github.com/Pierre-Sassoulas\"\u003e\u003ccode\u003e@​Pierre-Sassoulas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/842\"\u003epytest-dev/pytest-html#842\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump elliptic from 6.5.4 to 6.6.1 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/pytest-dev/pytest-html/pull/843\"\u003epytest-dev/pytest-html#843\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump browserify-sign from 4.2.1 to 4.2.3 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/pytest-dev/pytest-html/pull/831\"\u003epytest-dev/pytest-html#831\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump requests from 2.30.0 to 2.32.2 in /docs 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/pytest-dev/pytest-html/pull/832\"\u003epytest-dev/pytest-html#832\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump urllib3 from 2.0.2 to 2.2.2 in /docs 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/pytest-dev/pytest-html/pull/830\"\u003epytest-dev/pytest-html#830\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump certifi from 2023.7.22 to 2024.7.4 in /docs 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/pytest-dev/pytest-html/pull/829\"\u003epytest-dev/pytest-html#829\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump braces from 3.0.2 to 3.0.3 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/pytest-dev/pytest-html/pull/826\"\u003epytest-dev/pytest-html#826\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump idna from 3.4 to 3.7 in /docs 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/pytest-dev/pytest-html/pull/827\"\u003epytest-dev/pytest-html#827\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump \u003ccode\u003e@​babel/traverse\u003c/code\u003e from 7.21.3 to 7.25.9 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/pytest-dev/pytest-html/pull/844\"\u003epytest-dev/pytest-html#844\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump jinja2 from 3.1.2 to 3.1.4 in /docs 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/pytest-dev/pytest-html/pull/828\"\u003epytest-dev/pytest-html#828\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump word-wrap from 1.2.3 to 1.2.5 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/pytest-dev/pytest-html/pull/845\"\u003epytest-dev/pytest-html#845\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/800\"\u003epytest-dev/pytest-html#800\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd mypy to CI pipeline and begin typing modules by \u003ca href=\"https://github.com/gnikonorov\"\u003e\u003ccode\u003e@​gnikonorov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/435\"\u003epytest-dev/pytest-html#435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit] Add pyproject-fmt to normalize the pyproject.toml by \u003ca href=\"https://github.com/Pierre-Sassoulas\"\u003e\u003ccode\u003e@​Pierre-Sassoulas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/846\"\u003epytest-dev/pytest-html#846\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix the pyproject.toml following concurrent merge by \u003ca href=\"https://github.com/Pierre-Sassoulas\"\u003e\u003ccode\u003e@​Pierre-Sassoulas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/847\"\u003epytest-dev/pytest-html#847\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade tool for python 3.9 by \u003ca href=\"https://github.com/Pierre-Sassoulas\"\u003e\u003ccode\u003e@​Pierre-Sassoulas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/848\"\u003epytest-dev/pytest-html#848\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix report template by \u003ca href=\"https://github.com/hendzeld\"\u003e\u003ccode\u003e@​hendzeld\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/804\"\u003epytest-dev/pytest-html#804\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/851\"\u003epytest-dev/pytest-html#851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump jinja2 from 3.1.4 to 3.1.5 in /docs 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/pytest-dev/pytest-html/pull/855\"\u003epytest-dev/pytest-html#855\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/854\"\u003epytest-dev/pytest-html#854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCreate a dependabot.yml to be explicit about what need to be updated by \u003ca href=\"https://github.com/Pierre-Sassoulas\"\u003e\u003ccode\u003e@​Pierre-Sassoulas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/861\"\u003epytest-dev/pytest-html#861\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump actions/cache from 3 to 4 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/pytest-dev/pytest-html/pull/862\"\u003epytest-dev/pytest-html#862\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump codecov/codecov-action from 3 to 5 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/pytest-dev/pytest-html/pull/863\"\u003epytest-dev/pytest-html#863\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump release-drafter/release-drafter from 5 to 6 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/864\"\u003epytest-dev/pytest-html#864\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump actions/setup-python from 4 to 5 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/pytest-dev/pytest-html/pull/865\"\u003epytest-dev/pytest-html#865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump sphinx-rtd-theme from 1.2.0 to 3.0.2 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/871\"\u003epytest-dev/pytest-html#871\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump sass from 1.58.0 to 1.83.4 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/pytest-dev/pytest-html/pull/867\"\u003epytest-dev/pytest-html#867\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump sinon from 14.0.2 to 19.0.2 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/868\"\u003epytest-dev/pytest-html#868\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump nyc from 15.1.0 to 17.1.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/869\"\u003epytest-dev/pytest-html#869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump browserify from 17.0.0 to 17.0.1 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/pytest-dev/pytest-html/pull/876\"\u003epytest-dev/pytest-html#876\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump mocha from 10.2.0 to 11.1.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/875\"\u003epytest-dev/pytest-html#875\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump sass from 1.83.4 to 1.84.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/874\"\u003epytest-dev/pytest-html#874\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump sphinx from 6.2.1 to 7.2.2 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/877\"\u003epytest-dev/pytest-html#877\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/878\"\u003epytest-dev/pytest-html#878\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/882\"\u003epytest-dev/pytest-html#882\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump sphinx from 7.2.2 to 8.1.3 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/pytest-dev/pytest-html/pull/881\"\u003epytest-dev/pytest-html#881\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump sass from 1.84.0 to 1.85.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/879\"\u003epytest-dev/pytest-html#879\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate index.jinja2 by \u003ca href=\"https://github.com/TCMPK\"\u003e\u003ccode\u003e@​TCMPK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/883\"\u003epytest-dev/pytest-html#883\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump sphinx from 8.1.3 to 8.2.1 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/pytest-dev/pytest-html/pull/885\"\u003epytest-dev/pytest-html#885\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/886\"\u003epytest-dev/pytest-html#886\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump sphinx from 8.2.1 to 8.2.3 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/pytest-dev/pytest-html/pull/888\"\u003epytest-dev/pytest-html#888\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/pytest-dev/pytest-html/blob/master/docs/changelog.rst\"\u003epytest-html's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003eVersions follow \u003ccode\u003eSemantic Versioning\u003c/code\u003e_ (\u003ccode\u003e\u0026lt;major\u0026gt;.\u0026lt;minor\u0026gt;.\u0026lt;patch\u0026gt;\u003c/code\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion History\u003c/h2\u003e\n\u003c/blockquote\u003e\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-html/commit/d8fa812281d735948fd6678e680fbfe6316d9f4b\"\u003e\u003ccode\u003ed8fa812\u003c/code\u003e\u003c/a\u003e ci: switch to trusted publishing (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/992\"\u003e#992\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/36a2911d1177113e2737755616c7339a37a5f92c\"\u003e\u003ccode\u003e36a2911\u003c/code\u003e\u003c/a\u003e Chore(deps-dev): Bump sass from 1.97.1 to 1.97.2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/990\"\u003e#990\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/6c8a66e89d4f2fdcb19582bb8ccdae899ab1ab0f\"\u003e\u003ccode\u003e6c8a66e\u003c/code\u003e\u003c/a\u003e Chore(deps-dev): Bump chai from 6.2.1 to 6.2.2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/989\"\u003e#989\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/aca223fb39f30ce795afa8916f26fb7300c5d855\"\u003e\u003ccode\u003eaca223f\u003c/code\u003e\u003c/a\u003e Chore(deps-dev): Bump sinon from 21.0.0 to 21.0.1 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/987\"\u003e#987\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/9ad73892ca4420478f8d04e8b47509f3d9057846\"\u003e\u003ccode\u003e9ad7389\u003c/code\u003e\u003c/a\u003e Chore(deps-dev): Bump sass from 1.96.0 to 1.97.1 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/988\"\u003e#988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/ffec3a50da100dac782b7eb659340d659f5077c7\"\u003e\u003ccode\u003effec3a5\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/986\"\u003e#986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/c965f6dfbc3fe230656abfdbaa8348a6e9521804\"\u003e\u003ccode\u003ec965f6d\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/974\"\u003e#974\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/ba3790382be6dc72cf213518510c0c68641aeb77\"\u003e\u003ccode\u003eba37903\u003c/code\u003e\u003c/a\u003e Chore(deps-dev): Bump sass from 1.94.2 to 1.96.0 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/983\"\u003e#983\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/5ddb4bce264f451e0aadb16ecb3f13c008074cc5\"\u003e\u003ccode\u003e5ddb4bc\u003c/code\u003e\u003c/a\u003e Chore(deps): Bump actions/cache from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/984\"\u003e#984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/e5ac7de16ca2a7a797924d8952f30a986df5d293\"\u003e\u003ccode\u003ee5ac7de\u003c/code\u003e\u003c/a\u003e Fix rst-lint: error: unrecognized arguments: --encoding\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-html/compare/4.1.1...4.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-toolbox` from 4.0.0 to 4.1.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.2\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.2\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e📝 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e:octocat: repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🙋 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🏪 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 4.1.1\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.1\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/424ec8cc2b7af5faf6114c06f9a528ef00601911\"\u003e\u003ccode\u003e424ec8c\u003c/code\u003e\u003c/a\u003e Bump version v4.1.1 -\u0026gt; v4.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/6646ea845522b5e8b2a78f066cf9c0a080e37979\"\u003e\u003ccode\u003e6646ea8\u003c/code\u003e\u003c/a\u003e Updated files with 'repo_helper'. (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/206\"\u003e#206\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/eb99359653b8a34c7bf13d79f1fdd0ab7f7ef26b\"\u003e\u003ccode\u003eeb99359\u003c/code\u003e\u003c/a\u003e Ignore man page builds for CollapseNode (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/0efd91a93cac16622119784eacaf8f0129d26505\"\u003e\u003ccode\u003e0efd91a\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/1c79c9c38a8594479846af7f83787ff6a1a9db40\"\u003e\u003ccode\u003e1c79c9c\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/a88102b4a9aee2a547b810b23b4b344eee8d192b\"\u003e\u003ccode\u003ea88102b\u003c/code\u003e\u003c/a\u003e Updated files with 'repo_helper'. (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/202\"...\n\n_Description has been truncated_","html_url":"https://github.com/repository-service-tuf/repository-service-tuf/pull/923","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/repository-service-tuf%2Frepository-service-tuf/issues/923","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/923/packages"},{"uuid":"3820843672","node_id":"PR_kwDOFmS81M69jmEi","number":125,"state":"closed","title":"Bump sphinx-toolbox from 4.1.0 to 4.1.1 in the sphinx group","user":"dependabot[bot]","labels":["dependencies","maintenance"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-02-01T20:23:43.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-16T07:48:42.000Z","updated_at":"2026-02-01T20:23:44.000Z","time_to_close":1427701,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.1.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":"the sphinx group","ecosystem":"pip"},"body":"Bumps the sphinx group with 1 update: [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox).\n\nUpdates `sphinx-toolbox` from 4.1.0 to 4.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.1\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.1\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.1.0...v4.1.1\"\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=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.1.0\u0026new-version=4.1.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nYou can trigger a rebase of this PR by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/hakostra/pyvista/pull/125","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/hakostra%2Fpyvista/issues/125","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/125/packages"},{"uuid":"3811169401","node_id":"PR_kwDOC_dG4M69DRQ3","number":63,"state":"open","title":"Bump sphinx-toolbox from 4.0.0 to 4.1.1","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-01-14T01:33:05.000Z","updated_at":"2026-01-14T01:34:13.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.0.0 to 4.1.1.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.1\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.1\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.0.0...v4.1.1\"\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=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.0.0\u0026new-version=4.1.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/Senzing/mapper-csv/pull/63","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Senzing%2Fmapper-csv/issues/63","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/63/packages"},{"uuid":"3811097021","node_id":"PR_kwDOMs4Zzc69DD9r","number":20,"state":"open","title":"Bump sphinx-toolbox from 4.0.0 to 4.1.1","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-01-14T00:54:11.000Z","updated_at":"2026-01-14T17:01:02.578Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.0.0 to 4.1.1.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.1\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.1\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.0.0...v4.1.1\"\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=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.0.0\u0026new-version=4.1.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/Senzing/mapper-spire/pull/20","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Senzing%2Fmapper-spire/issues/20","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/20/packages"},{"uuid":"3808241482","node_id":"PR_kwDOHGh9Jc685hF5","number":920,"state":"closed","title":"build(deps): bump the pipenv group across 1 directory with 9 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-15T10:18:45.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-13T10:39:15.000Z","updated_at":"2026-01-15T10:18:47.000Z","time_to_close":171570,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"pipenv","update_count":9,"packages":[{"name":"sphinx-rtd-theme","old_version":"3.0.2","new_version":"3.1.0","repository_url":"https://github.com/readthedocs/sphinx_rtd_theme"},{"name":"sphinxcontrib-plantuml","old_version":"0.30","new_version":"0.31","repository_url":"https://github.com/sphinx-contrib/plantuml"},{"name":"mistune","old_version":"3.1.3","new_version":"3.2.0","repository_url":"https://github.com/lepture/mistune"},{"name":"pytest","old_version":"8.4.1","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"dynaconf","old_version":"3.2.11","new_version":"3.2.12","repository_url":"https://github.com/dynaconf/dynaconf"},{"name":"isort","old_version":"6.0.1","new_version":"7.0.0","repository_url":"https://github.com/PyCQA/isort"},{"name":"black","old_version":"25.1.0","new_version":"25.12.0","repository_url":"https://github.com/psf/black"},{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"},{"name":"sphinx-needs","old_version":"5.1.0","new_version":"6.3.0","repository_url":"https://github.com/useblocks/sphinx-needs"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pipenv group with 9 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) | `3.0.2` | `3.1.0` |\n| [sphinxcontrib-plantuml](https://github.com/sphinx-contrib/plantuml) | `0.30` | `0.31` |\n| [mistune](https://github.com/lepture/mistune) | `3.1.3` | `3.2.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.4.1` | `8.4.2` |\n| [dynaconf](https://github.com/dynaconf/dynaconf) | `3.2.11` | `3.2.12` |\n| [isort](https://github.com/PyCQA/isort) | `6.0.1` | `7.0.0` |\n| [black](https://github.com/psf/black) | `25.1.0` | `25.12.0` |\n| [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) | `4.0.0` | `4.1.1` |\n| [sphinx-needs](https://github.com/useblocks/sphinx-needs) | `5.1.0` | `6.3.0` |\n\n\nUpdates `sphinx-rtd-theme` from 3.0.2 to 3.1.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/blob/master/docs/changelog.rst\"\u003esphinx-rtd-theme's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.1.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for docutils 0.22\u003c/li\u003e\n\u003cli\u003eAdded support for Sphinx 9.x\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _release-3.1.0rc2:\u003c/p\u003e\n\u003ch1\u003e3.1.0rc2\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for docutils 0.22\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _release-3.1.0rc1:\u003c/p\u003e\n\u003ch1\u003e3.1.0rc1\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Sphinx 9.x\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _release-3.0.2:\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/795de79c8b311592f5863a25307d85924bf52164\"\u003e\u003ccode\u003e795de79\u003c/code\u003e\u003c/a\u003e Release 3.1.0 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1676\"\u003e#1676\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/66d0fdd910e142d058c20b474338051b0751f03c\"\u003e\u003ccode\u003e66d0fdd\u003c/code\u003e\u003c/a\u003e Add Python 3.14 to the test suite (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1668\"\u003e#1668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/fbe5e6004195a1e75654eface1884485c57eb68e\"\u003e\u003ccode\u003efbe5e60\u003c/code\u003e\u003c/a\u003e 3.1.0rc2 with support for docutils 0.22 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/a76174c0bb0af755718f3cbdffbf97d19d0ac0ec\"\u003e\u003ccode\u003ea76174c\u003c/code\u003e\u003c/a\u003e Add support for docutils 0.22 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1671\"\u003e#1671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/20733c3bcc60df8eda23512a0f3ccb2861486110\"\u003e\u003ccode\u003e20733c3\u003c/code\u003e\u003c/a\u003e Add support for Sphinx 9.0.0 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1666\"\u003e#1666\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/71aacd35048c8bc2ab646ed4e3e9af1075034387\"\u003e\u003ccode\u003e71aacd3\u003c/code\u003e\u003c/a\u003e Update Code of Conduct URL (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1664\"\u003e#1664\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/5a263753d52c1628c88392fbf52c729f5a8e79b5\"\u003e\u003ccode\u003e5a26375\u003c/code\u003e\u003c/a\u003e Run tests and build docs with Sphinx 8.2 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1640\"\u003e#1640\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/8d4d394dad2d55cf9a4db880effac6aa5c7b12e6\"\u003e\u003ccode\u003e8d4d394\u003c/code\u003e\u003c/a\u003e Sidebar should not be floating on mobile (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1622\"\u003e#1622\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/compare/3.0.2...3.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinxcontrib-plantuml` from 0.30 to 0.31\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/d15308432fc659319417a3f57f2190860c854b20\"\u003e\u003ccode\u003ed153084\u003c/code\u003e\u003c/a\u003e bump version to 0.31\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/123c26239e24d829c67950a4ee6b02d9a8a04179\"\u003e\u003ccode\u003e123c262\u003c/code\u003e\u003c/a\u003e search for ImageConverter capable of svg to pdf conversion after init\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/2d2adc477058594a81391cfda781f8c99be5f893\"\u003e\u003ccode\u003e2d2adc4\u003c/code\u003e\u003c/a\u003e github: bump actions, add Python 3.12 and 3.13, remove some middle/dead versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/27ece3637c0ec5fa91cacf511349e290a1440ba9\"\u003e\u003ccode\u003e27ece36\u003c/code\u003e\u003c/a\u003e tests: use inspect.getdoc() to get around breaking change in Python 3.13\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sphinx-contrib/plantuml/compare/0.30...0.31\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mistune` from 3.1.3 to 3.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lepture/mistune/releases\"\u003emistune's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.2.0\u003c/h2\u003e\n\u003ch3\u003e   🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport footnotes that start on the next line.  -  by \u003ca href=\"https://github.com/kylechui\"\u003e\u003ccode\u003e@​kylechui\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/2677e2d\"\u003e\u003c!-- raw HTML omitted --\u003e(2677e)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eProperly handle code blocks inside footnotes.  -  by \u003ca href=\"https://github.com/kylechui\"\u003e\u003ccode\u003e@​kylechui\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/0516c9e\"\u003e\u003c!-- raw HTML omitted --\u003e(0516c)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport python 3.14  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/7e0eb65\"\u003e\u003c!-- raw HTML omitted --\u003e(7e0eb)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRender ref links and footnotes in footnotes.  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/bd90e44\"\u003e\u003c!-- raw HTML omitted --\u003e(bd90e)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRender ref links in TOC.  -  by \u003ca href=\"https://github.com/lemon24\"\u003e\u003ccode\u003e@​lemon24\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/a0a0148\"\u003e\u003c!-- raw HTML omitted --\u003e(a0a01)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate typing for mypy upgrades  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/8d49cba\"\u003e\u003c!-- raw HTML omitted --\u003e(8d49c)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRender correct html for footnotes  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/9b62204\"\u003e\u003c!-- raw HTML omitted --\u003e(9b622)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/lepture/mistune/compare/v3.1.4...v3.2.0\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev3.1.4\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd fenced directive break rule in list parser, \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/412\"\u003e#412\u003c/a\u003e  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/412\"\u003elepture/mistune#412\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/ea3ecaf\"\u003e\u003c!-- raw HTML omitted --\u003e(ea3ec)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrevent remove unicode whitespace when parsing atx heading  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/9e72063\"\u003e\u003c!-- raw HTML omitted --\u003e(9e720)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/lepture/mistune/compare/v3.1.3...v3.1.4\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\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/lepture/mistune/blob/main/docs/changes.rst\"\u003emistune's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.2.0\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eReleased on Dec 23, 2025\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAnnounce supports for python 3.14\u003c/li\u003e\n\u003cli\u003eFix footnotes plugins for code blocks, ref links, blockquote and etc.\u003c/li\u003e\n\u003cli\u003eFix ref links in TOC.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.1.4\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eReleased on Aug 29, 2025\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd fenced directive break rule in list parser.\u003c/li\u003e\n\u003cli\u003ePrevent removing unicode whitespace when parsing atx heading.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/df23edd60b43b639d2e6760ef9dd3d618aa11c21\"\u003e\u003ccode\u003edf23edd\u003c/code\u003e\u003c/a\u003e chore: release 3.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/55fe3aff1e543faa0db281bbe60eb9e1a5f35933\"\u003e\u003ccode\u003e55fe3af\u003c/code\u003e\u003c/a\u003e chore: move permissions to job level\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/db9df8687d75915628ef20b4210b6aeb999cf4af\"\u003e\u003ccode\u003edb9df86\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/429\"\u003e#429\u003c/a\u003e from lepture/fix-428\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/9b6220486d7591c3204c82edff4376bfe40fdc19\"\u003e\u003ccode\u003e9b62204\u003c/code\u003e\u003c/a\u003e fix: render correct html for footnotes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/7dda5f5d321608a7c906e167c1ee6f1110dd5802\"\u003e\u003ccode\u003e7dda5f5\u003c/code\u003e\u003c/a\u003e chore: remove python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/0eb68715e08405158ad589def3fb4594ba2a004c\"\u003e\u003ccode\u003e0eb6871\u003c/code\u003e\u003c/a\u003e chore: mypy 1.19 has bugs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/8d49cba8ffa69fc807e3b30b87822d89069dff72\"\u003e\u003ccode\u003e8d49cba\u003c/code\u003e\u003c/a\u003e fix: update typing for mypy upgrades\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/7e0eb658e70e27e409cbf61f49a0907731e17acf\"\u003e\u003ccode\u003e7e0eb65\u003c/code\u003e\u003c/a\u003e feat: support python 3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/28e7d464aa898f23a4975c76c19f6977aaa738e0\"\u003e\u003ccode\u003e28e7d46\u003c/code\u003e\u003c/a\u003e chore: update deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/c82ad09675a5603166cf34bf1682953b56efb9ae\"\u003e\u003ccode\u003ec82ad09\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/427\"\u003e#427\u003c/a\u003e from lemon24/main\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/lepture/mistune/compare/v3.1.3...v3.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 8.4.1 to 8.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.2\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.2 (2025-09-03)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13478\"\u003e#13478\u003c/a\u003e: Fixed a crash when using \u003ccode\u003econsole_output_style\u003c/code\u003e{.interpreted-text role=\u0026quot;confval\u0026quot;} with \u003ccode\u003etimes\u003c/code\u003e and a module is skipped.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13530\"\u003e#13530\u003c/a\u003e: Fixed a crash when using \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and \u003ccode\u003edecimal.Decimal\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} instances with the \u003ccode\u003edecimal.FloatOperation\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} trap set.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13549\"\u003e#13549\u003c/a\u003e: No longer evaluate type annotations in Python \u003ccode\u003e3.14\u003c/code\u003e when inspecting function signatures.\u003c/p\u003e\n\u003cp\u003eThis prevents crashes during module collection when modules do not explicitly use \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e and import types for annotations within a \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13559\"\u003e#13559\u003c/a\u003e: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in \u003ccode\u003epytest.Parser.addini\u003c/code\u003e{.interpreted-text role=\u0026quot;meth\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13563\"\u003e#13563\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now only imports \u003ccode\u003enumpy\u003c/code\u003e if NumPy is already in \u003ccode\u003esys.modules\u003c/code\u003e. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13577\"\u003e#13577\u003c/a\u003e: Clarify that \u003ccode\u003epytest_generate_tests\u003c/code\u003e is discovered in test modules/classes; other hooks must be in \u003ccode\u003econftest.py\u003c/code\u003e or plugins.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13480\"\u003e#13480\u003c/a\u003e: Self-testing: fixed a few test failures when run with \u003ccode\u003e-Wdefault\u003c/code\u003e or a similar override.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13547\"\u003e#13547\u003c/a\u003e: Self-testing: corrected expected message for \u003ccode\u003etest_doctest_unexpected_exception\u003c/code\u003e in Python \u003ccode\u003e3.14\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13684\"\u003e#13684\u003c/a\u003e: Make pytest's own testsuite insensitive to the presence of the \u003ccode\u003eCI\u003c/code\u003e environment variable -- by \u003ccode\u003eogrisel\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bfae4224fd554d3d7f2c277a4cc092b6ec6af3ae\"\u003e\u003ccode\u003ebfae422\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/89905381a163be30ae87d62e5f750e902d750c5f\"\u003e\u003ccode\u003e8990538\u003c/code\u003e\u003c/a\u003e Fix passenv CI in tox ini and make tests insensitive to the presence of the C...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ca676bfe005aebcb12f4146d1b0f1d2772e2cd5d\"\u003e\u003ccode\u003eca676bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13687\"\u003e#13687\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/e63f6e51c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/975a60a63ce385a44655596e254c1899feaa53e4\"\u003e\u003ccode\u003e975a60a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13686\"\u003e#13686\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/12bde8af6...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7723ce84b87ab08f86ddafcb342acc28ba5ec99d\"\u003e\u003ccode\u003e7723ce8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13683\"\u003e#13683\u003c/a\u003e from even-even/fix_Exeption_to_Exception_in_errorMe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7f05680d1301e0969b30bcb3c4b27433c9ee2b7\"\u003e\u003ccode\u003eb7f0568\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13685\"\u003e#13685\u003c/a\u003e from CoretexShadow/fix/docs-pytest-generate-tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2c94c4a6948ba53440818389298157fa5d5f94cd\"\u003e\u003ccode\u003e2c94c4a\u003c/code\u003e\u003c/a\u003e add missing colon (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13640\"\u003e#13640\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13641\"\u003e#13641\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c3d7684bc01c8c48d05145a30c5211ca8656c68c\"\u003e\u003ccode\u003ec3d7684\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13606\"\u003e#13606\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/5f9938563...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/dc6e3be2ddc75a149b6d102d9b7c82ee47a00cfa\"\u003e\u003ccode\u003edc6e3be\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13605\"\u003e#13605\u003c/a\u003e from The-Compiler/training-update-2025-07\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f87289c36c8dbe7740e3020f5546b6f8b0861ff0\"\u003e\u003ccode\u003ef87289c\u003c/code\u003e\u003c/a\u003e Fix crash with \u003ccode\u003etimes\u003c/code\u003e output style and skipped module (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13573\"\u003e#13573\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13579\"\u003e#13579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.4.1...8.4.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dynaconf` from 3.2.11 to 3.2.12\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dynaconf/dynaconf/releases\"\u003edynaconf's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.12\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIncremental improvment to access performance by \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1304\"\u003edynaconf/dynaconf#1304\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: get method to return Any type. by \u003ca href=\"https://github.com/rochacbruno\"\u003e\u003ccode\u003e@​rochacbruno\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1314\"\u003edynaconf/dynaconf#1314\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: add lru caching to \u003ccode\u003efind_the_correct_casing\u003c/code\u003e function by \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1326\"\u003edynaconf/dynaconf#1326\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\"\u003ehttps://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dynaconf/dynaconf/blob/3.2.12/CHANGELOG.md\"\u003edynaconf's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/pedro-psb/dynaconf/releases/tag/3.2.12\"\u003e3.2.12\u003c/a\u003e - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eget method to return Any type.. \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eremove unnecessary recursive evaluation call on Settings.get. \u003cem\u003eBy Pedro Brochado\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eimprove performance of settings access in a loop (part 1). \u003cem\u003eBy Pedro Brochado\u003c/em\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/7606f351ac460b15c56e7a538300de4a501c56e7\"\u003e\u003ccode\u003e7606f35\u003c/code\u003e\u003c/a\u003e Release version 3.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/da44e5182940299dd90ca3e2a0e0e3c23cb9ebf7\"\u003e\u003ccode\u003eda44e51\u003c/code\u003e\u003c/a\u003e perf: add lru caching to \u003ccode\u003efind_the_correct_casing\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1326\"\u003e#1326\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/b75eda0da141bdc29f707f2cb0c29e06b03a72bb\"\u003e\u003ccode\u003eb75eda0\u003c/code\u003e\u003c/a\u003e fix: get method to return Any type.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/4f3df1a47bcb71feddf7565f603e7994c65ede65\"\u003e\u003ccode\u003e4f3df1a\u003c/code\u003e\u003c/a\u003e misc: add some profile/perf scripts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/420acebf64e77ba475df94dfd7d409207e5e239d\"\u003e\u003ccode\u003e420aceb\u003c/code\u003e\u003c/a\u003e refactor: merge \u003cem\u003esafe\u003c/em\u003e{get,copy} into .get and .copy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/18c0c8422dc9651d57c76d1b098ad6fb3f75c09d\"\u003e\u003ccode\u003e18c0c84\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary recursive evaluation call on Settings.get\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/0fde96f2e0b71309e63800ddac8eceda062155a9\"\u003e\u003ccode\u003e0fde96f\u003c/code\u003e\u003c/a\u003e refactor: rewrite decorator as explicit call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/52efd9ed78d2187550e03a2ae5008661d5e28df9\"\u003e\u003ccode\u003e52efd9e\u003c/code\u003e\u003c/a\u003e Bump to version 3.2.12-dev0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isort` from 6.0.1 to 7.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/releases\"\u003eisort's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.0.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003ch2\u003e:boom: Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:rocket: Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eShow absolute paths in skipped file messages (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2416\"\u003e#2416\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSome fixes for Python 3.14 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on \u003ccode\u003e3.14\u003c/code\u003e and fix any bugs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2425\"\u003e#2425\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CHANGELOG.md + Fix Formatting and Grammar (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2419\"\u003e#2419\u003c/a\u003e) \u003ca href=\"https://github.com/lukbrew25\"\u003e\u003ccode\u003e@​lukbrew25\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix output of hanging indent for long lines with noqa (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2407\"\u003e#2407\u003c/a\u003e) \u003ca href=\"https://github.com/matan1008\"\u003e\u003ccode\u003e@​matan1008\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFormat with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTarget 3.10 for \u003ccode\u003eruff\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate development dependencies to latest version (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2426\"\u003e#2426\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update pre-commit examples to version 6.1.0 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2413\"\u003e#2413\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSmall cleanup for developer environment (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2418\"\u003e#2418\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/setup-python from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2411\"\u003e#2411\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.1.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs discussions channel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2410\"\u003e#2410\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse working isort version in pre-commit example (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2402\"\u003e#2402\u003c/a\u003e) \u003ca href=\"https://github.com/iainelder\"\u003e\u003ccode\u003e@​iainelder\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix typo in _get_files_from_dir_cached test (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2392\"\u003e#2392\u003c/a\u003e) \u003ca href=\"https://github.com/tiltingpenguin\"\u003e\u003ccode\u003e@​tiltingpenguin\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eResolve bandit warnings (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2379\"\u003e#2379\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd tox for cross-platform, parallel test suite execution (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2378\"\u003e#2378\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Project URLs to PyPI Side Panel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2387\"\u003e#2387\u003c/a\u003e) \u003ca href=\"https://github.com/guillermodotn\"\u003e\u003ccode\u003e@​guillermodotn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typos (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2376\"\u003e#2376\u003c/a\u003e) \u003ca href=\"https://github.com/co63oc\"\u003e\u003ccode\u003e@​co63oc\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd make bash scripts portable (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2377\"\u003e#2377\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 4 to 5 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2406\"\u003e#2406\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/blob/main/CHANGELOG.md\"\u003eisort's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003eNOTE: isort follows the \u003ca href=\"https://semver.org/\"\u003esemver\u003c/a\u003e versioning standard.\nFind out more about isort's release policy \u003ca href=\"https://pycqa.github.io/isort/docs/major_releases/release_policy\"\u003ehere\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eUnreleased\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved \u003ccode\u003e--old-finders\u003c/code\u003e and \u003ccode\u003e--magic-placement\u003c/code\u003e flags and \u003ccode\u003eold_finders\u003c/code\u003e configuration option. The legacy finder logic that relied on environment introspection has been removed (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2445\"\u003e#2445\u003c/a\u003e) \u003ca href=\"https://github.com/joao-faria-dev\"\u003e\u003ccode\u003e@​joao-faria-dev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e6.1.0 October 1 2025\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0a09c783808cfe77bb3269250f663ff733d23302\"\u003e\u003ccode\u003e0a09c78\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e from DanielNoord/python-314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0fee794a05b5d0c471ac80bc8943f9843ca29644\"\u003e\u003ccode\u003e0fee794\u003c/code\u003e\u003c/a\u003e Add 3.14 to \u003ccode\u003estdlibds\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/332a1ad0b68bf3a3acac055b0ec3666408b3b425\"\u003e\u003ccode\u003e332a1ad\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003ezstandard\u003c/code\u003e for 3.14 compat\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/f756e5653afcf6d79ec4d0240b1868cbebd8fafd\"\u003e\u003ccode\u003ef756e56\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/52f5134889d345ff35afdcb86501c8221b804c70\"\u003e\u003ccode\u003e52f5134\u003c/code\u003e\u003c/a\u003e Format with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/012aa69fcadb3c89ff92a3d96aa449be7ae6746f\"\u003e\u003ccode\u003e012aa69\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/89773dbb371192541092657972a74e9ce0bbbc74\"\u003e\u003ccode\u003e89773db\u003c/code\u003e\u003c/a\u003e Target 3.10 with \u003ccode\u003eruff\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/933e382f98a0c77b4c6e33c4e3ef12bd57192884\"\u003e\u003ccode\u003e933e382\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e from DanielNoord/drop-39\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/8b6e00cbe643a216da57fed4baa282d0a4a1b829\"\u003e\u003ccode\u003e8b6e00c\u003c/code\u003e\u003c/a\u003e Remove support for Python 3.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/b5f9f296ad873734e8caa3a731f27360648d9b37\"\u003e\u003ccode\u003eb5f9f29\u003c/code\u003e\u003c/a\u003e Bump profile plugin to 3.10+ and re-lock\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/isort/compare/6.0.1...7.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `black` from 25.1.0 to 25.12.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e25.12.0\u003c/h2\u003e\n\u003cp\u003ePlease test out the draft 2026 style in version 26.1a1! This style will be finalized in\nthe January release (26.1.0). Most of the changes in \u003ccode\u003e--preview\u003c/code\u003e will be in the 2026\nstable style, but not all.\n\u003ca href=\"https://redirect.github.com/psf/black/issues/4042\"\u003ePlease share your feedback!\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis release (25.12.0) will still produce the 2025 style.\u003c/p\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBlack no longer supports running with Python 3.9 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4842\"\u003e#4842\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bug where comments preceding \u003ccode\u003e# fmt: off\u003c/code\u003e/\u003ccode\u003e# fmt: on\u003c/code\u003e blocks were incorrectly\nremoved, particularly affecting Jupytext's \u003ccode\u003e# %% [markdown]\u003c/code\u003e comments (\u003ca href=\"https://redirect.github.com/psf/black/issues/4845\"\u003e#4845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash when multiple \u003ccode\u003e# fmt: skip\u003c/code\u003e comments are used in a multi-part if-clause, on\nstring literals, or on dictionary entries with long lines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4872\"\u003e#4872\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix possible crash when \u003ccode\u003efmt: \u003c/code\u003e directives aren't on the top level (\u003ca href=\"https://redirect.github.com/psf/black/issues/4856\"\u003e#4856\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePreview style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003efmt: skip\u003c/code\u003e skipping the line after instead of the line it's on (\u003ca href=\"https://redirect.github.com/psf/black/issues/4855\"\u003e#4855\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary parentheses from the left-hand side of assignments while preserving\nmagic trailing commas and intentional multiline formatting (\u003ca href=\"https://redirect.github.com/psf/black/issues/4865\"\u003e#4865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e crashing on \u003ccode\u003ewith\u003c/code\u003e statements (\u003ca href=\"https://redirect.github.com/psf/black/issues/4853\"\u003e#4853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e crashing on annotated parameters (\u003ca href=\"https://redirect.github.com/psf/black/issues/4854\"\u003e#4854\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix new lines being added after imports with \u003ccode\u003e# fmt: skip\u003c/code\u003e on them (\u003ca href=\"https://redirect.github.com/psf/black/issues/4894\"\u003e#4894\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReleases now include arm64 Windows binaries and wheels (\u003ca href=\"https://redirect.github.com/psf/black/issues/4814\"\u003e#4814\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eIntegrations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eoutput-file\u003c/code\u003e input to GitHub Action \u003ccode\u003epsf/black\u003c/code\u003e to write formatter output to a\nfile for artifact capture and log cleanliness (\u003ca href=\"https://redirect.github.com/psf/black/issues/4824\"\u003e#4824\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e25.11.0\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnable base 3.14 support (\u003ca href=\"https://redirect.github.com/psf/black/issues/4804\"\u003e#4804\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for the new Python 3.14 t-string syntax introduced by PEP 750 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4805\"\u003e#4805\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bug where comments between \u003ccode\u003e# fmt: off\u003c/code\u003e and \u003ccode\u003e# fmt: on\u003c/code\u003e were reformatted (\u003ca href=\"https://redirect.github.com/psf/black/issues/4811\"\u003e#4811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eComments containing fmt directives now preserve their exact formatting instead of\nbeing normalized (\u003ca href=\"https://redirect.github.com/psf/black/issues/4811\"\u003e#4811\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e25.12.0\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBlack no longer supports running with Python 3.9 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4842\"\u003e#4842\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bug where comments preceding \u003ccode\u003e# fmt: off\u003c/code\u003e/\u003ccode\u003e# fmt: on\u003c/code\u003e blocks were incorrectly\nremoved, particularly affecting Jupytext's \u003ccode\u003e# %% [markdown]\u003c/code\u003e comments (\u003ca href=\"https://redirect.github.com/psf/black/issues/4845\"\u003e#4845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash when multiple \u003ccode\u003e# fmt: skip\u003c/code\u003e comments are used in a multi-part if-clause, on\nstring literals, or on dictionary entries with long lines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4872\"\u003e#4872\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix possible crash when \u003ccode\u003efmt: \u003c/code\u003e directives aren't on the top level (\u003ca href=\"https://redirect.github.com/psf/black/issues/4856\"\u003e#4856\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePreview style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003efmt: skip\u003c/code\u003e skipping the line after instead of the line it's on (\u003ca href=\"https://redirect.github.com/psf/black/issues/4855\"\u003e#4855\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary parentheses from the left-hand side of assignments while preserving\nmagic trailing commas and intentional multiline formatting (\u003ca href=\"https://redirect.github.com/psf/black/issues/4865\"\u003e#4865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e crashing on \u003ccode\u003ewith\u003c/code\u003e statements (\u003ca href=\"https://redirect.github.com/psf/black/issues/4853\"\u003e#4853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e crashing on annotated parameters (\u003ca href=\"https://redirect.github.com/psf/black/issues/4854\"\u003e#4854\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix new lines being added after imports with \u003ccode\u003e# fmt: skip\u003c/code\u003e on them (\u003ca href=\"https://redirect.github.com/psf/black/issues/4894\"\u003e#4894\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReleases now include arm64 Windows binaries and wheels (\u003ca href=\"https://redirect.github.com/psf/black/issues/4814\"\u003e#4814\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eIntegrations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eoutput-file\u003c/code\u003e input to GitHub Action \u003ccode\u003epsf/black\u003c/code\u003e to write formatter output to a\nfile for artifact capture and log cleanliness (\u003ca href=\"https://redirect.github.com/psf/black/issues/4824\"\u003e#4824\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e25.11.0\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnable base 3.14 support (\u003ca href=\"https://redirect.github.com/psf/black/issues/4804\"\u003e#4804\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for the new Python 3.14 t-string syntax introduced by PEP 750 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4805\"\u003e#4805\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bug where comments between \u003ccode\u003e# fmt: off\u003c/code\u003e and \u003ccode\u003e# fmt: on\u003c/code\u003e were reformatted (\u003ca href=\"https://redirect.github.com/psf/black/issues/4811\"\u003e#4811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eComments containing fmt directives now preserve their exact formatting instead of\nbeing normalized (\u003ca href=\"https://redirect.github.com/psf/black/issues/4811\"\u003e#4811\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePreview style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove \u003ccode\u003emultiline_string_handling\u003c/code\u003e from \u003ccode\u003e--unstable\u003c/code\u003e to \u003ccode\u003e--preview\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4760\"\u003e#4760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug where module docstrings would be treated as normal strings if preceded by\ncomments (\u003ca href=\"https://redirect.github.com/psf/black/issues/4764\"\u003e#4764\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/psf/black/commit/782e5605c86aab56be6f905da10dcd3e463fd9c2\"\u003e\u003ccode\u003e782e560\u003c/code\u003e\u003c/a\u003e Pin actions/checkout@v5.0.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4895\"\u003e#4895\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/f0f40945c1b0ebaa9ca733aca517610574c451d6\"\u003e\u003ccode\u003ef0f4094\u003c/code\u003e\u003c/a\u003e Fix new lines being added after imports with \u003ccode\u003e# fmt: skip\u003c/code\u003e on them (\u003ca href=\"https://redirect.github.com/psf/black/issues/4894\"\u003e#4894\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/70fc194172184861aafb418c124824cae0fbe3b0\"\u003e\u003ccode\u003e70fc194\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Fix \u003ccode\u003e# fmt: skip\u003c/code\u003e ignored in deeply nested expressions\u0026quot; (\u003ca href=\"https://redirect.github.com/psf/black/issues/4893\"\u003e#4893\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7044b145f4826e0d6e07178d89666856a8e37aff\"\u003e\u003ccode\u003e7044b14\u003c/code\u003e\u003c/a\u003e Prepare 25.12.0 release (\u003ca href=\"https://redirect.github.com/psf/black/issues/4891\"\u003e#4891\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/5b470f0e577f3c39e0f7d668934d587c0733a652\"\u003e\u003ccode\u003e5b470f0\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003e# fmt: skip\u003c/code\u003e ignored in deeply nested expressions (\u003ca href=\"https://redirect.github.com/psf/black/issues/4883\"\u003e#4883\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/1b342ef5b0433fc1ed61a7e05a65744bef706fc9\"\u003e\u003ccode\u003e1b342ef\u003c/code\u003e\u003c/a\u003e Fix crash when multiple \u003ccode\u003e# fmt: skip\u003c/code\u003e comments are used in multi-part if-clau...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7b265f16634155dafcca65f6122ef7ed8d14a67f\"\u003e\u003ccode\u003e7b265f1\u003c/code\u003e\u003c/a\u003e Pin Hatch to hopefully fix Docker builds (\u003ca href=\"https://redirect.github.com/psf/black/issues/4878\"\u003e#4878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/c9523f463fdc9d9f9f0e61ca92d9b37acdf0d8fc\"\u003e\u003ccode\u003ec9523f4\u003c/code\u003e\u003c/a\u003e Attempt to fix Docker build failures (\u003ca href=\"https://redirect.github.com/psf/black/issues/4876\"\u003e#4876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/0f376e0c35bcb29f87ce18eace30333a3e105841\"\u003e\u003ccode\u003e0f376e0\u003c/code\u003e\u003c/a\u003e Fix crashes when fmt directives are indented (\u003ca href=\"https://redirect.github.com/psf/black/issues/4856\"\u003e#4856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/a8bfcc1040fdfce2e02cdd85dc8bf4e7abe0462f\"\u003e\u003ccode\u003ea8bfcc1\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003efmt: skip\u003c/code\u003e skipping the line after instead of the line it's on (\u003ca href=\"https://redirect.github.com/psf/black/issues/4855\"\u003e#4855\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/25.1.0...25.12.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-toolbox` from 4.0.0 to 4.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.1\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.1\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.0.0...v4.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-needs` from 5.1.0 to 6.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/useblocks/sphinx-needs/releases\"\u003esphinx-needs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.3.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Relative paths from toml configuration by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1589\"\u003euseblocks/sphinx-needs#1589\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Ensure \u003ccode\u003eextra_links\u003c/code\u003e \u003ccode\u003eschema\u003c/code\u003e contains item type by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1595\"\u003euseblocks/sphinx-needs#1595\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Validate all schemas compile during config resolution by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1596\"\u003euseblocks/sphinx-needs#1596\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e♻️ Remove typeguard dependency by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1597\"\u003euseblocks/sphinx-needs#1597\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Support Python 3.14 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1598\"\u003euseblocks/sphinx-needs#1598\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix typo in tutorial documentation by \u003ca href=\"https://github.com/dskkato\"\u003e\u003ccode\u003e@​dskkato\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1591\"\u003euseblocks/sphinx-needs#1591\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1586\"\u003euseblocks/sphinx-needs#1586\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/dskkato\"\u003e\u003ccode\u003e@​dskkato\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1591\"\u003euseblocks/sphinx-needs#1591\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/useblocks/sphinx-needs/compare/6.2.0...6.3.0\"\u003ehttps://github.com/useblocks/sphinx-needs/compare/6.2.0...6.3.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🧪 Fix schema benchmark tests by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1577\"\u003euseblocks/sphinx-needs#1577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Improve schema process benchmarking by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1579\"\u003euseblocks/sphinx-needs#1579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Reduce nested functions in \u003ccode\u003eget_ontology_warnings\u003c/code\u003e by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1578\"\u003euseblocks/sphinx-needs#1578\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema validation performance (pre-compute validators) by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1581\"\u003euseblocks/sphinx-needs#1581\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema validation performance (use jsonschema-rs) by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1582\"\u003euseblocks/sphinx-needs#1582\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema validation performance (improve reduce_needs) by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1583\"\u003euseblocks/sphinx-needs#1583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema validation performance (cache recursive validators) by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1584\"\u003euseblocks/sphinx-needs#1584\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1421\"\u003euseblocks/sphinx-needs#1421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🚀 Release v6.2.0 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1585\"\u003euseblocks/sphinx-needs#1585\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/useblocks/sphinx-needs/compare/6.1.1...6.2.0\"\u003ehttps://github.com/useblocks/sphinx-needs/compare/6.1.1...6.2.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev6.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Allow . in schema regex by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1568\"\u003euseblocks/sphinx-needs#1568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 Fix schema network type injection by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1570\"\u003euseblocks/sphinx-needs#1570\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 needs.json for nullable fields by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1571\"\u003euseblocks/sphinx-needs#1571\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Remove mutable global variables by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1575\"\u003euseblocks/sphinx-needs#1575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eneeds_schema_validation_enabled\u003c/code\u003e configuration by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1574\"\u003euseblocks/sphinx-needs#1574\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eallow_type_coercion\u003c/code\u003e configuration for external/import \u003ccode\u003eneeds.json\u003c/code\u003e reads by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1573\"\u003euseblocks/sphinx-needs#1573\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/useblocks/sphinx-needs/compare/6.1.0...6.1.1\"\u003ehttps://github.com/useblocks/sphinx-needs/compare/6.1.0...6.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev6.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix schema rule severity by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1535\"\u003euseblocks/sphinx-needs#1535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Co-locate dynamic and variant function docs by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1544\"\u003euseblocks/sphinx-needs#1544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Add snapshot test for field schema by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1545\"\u003euseblocks/sphinx-needs#1545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Derive core \u003ccode\u003eFieldSchema\u003c/code\u003e from \u003ccode\u003eNeedsCoreFields\u003c/code\u003e by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1546\"\u003euseblocks/sphinx-needs#1546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Make \u003ccode\u003eincoming\u003c/code\u003e/\u003ccode\u003eoutgoing\u003c/code\u003e keys optional in \u003ccode\u003eneeds_extra_links\u003c/code\u003e by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1548\"\u003euseblocks/sphinx-needs#1548\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Removed unused code by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1550\"\u003euseblocks/sphinx-needs#1550\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/useblocks/sphinx-needs/blob/master/docs/changelog.rst\"\u003esphinx-needs's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.3.0\u003c/h2\u003e\n\u003cp\u003e:Released: 15.12.2025\n:Full Changelog: \u003ccode\u003ev6.2.0...v6.3.0 \u0026lt;https://github.com/useblocks/sphinx-needs/compare/6.2.0...f567c1fafb4e1ba1a7dabb3bd6afc5f17ded84cd\u0026gt;\u003c/code\u003e__\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e⬆️ Support Python 3.14 (:pr:\u003ccode\u003e1598\u003c/code\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e♻️ Remove \u003ccode\u003etypeguard\u003c/code\u003e dependency (:pr:\u003ccode\u003e1597\u003c/code\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e👌 Relative paths from toml configuration (:pr:\u003ccode\u003e1589\u003c/code\u003e)\u003c/p\u003e\n\u003cp\u003eEnsure that file paths originating from a :ref:\u003ccode\u003eneeds_from_toml\u003c/code\u003e file are relative to that file, rather than the :file:\u003ccode\u003econf.py\u003c/code\u003e file\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _\u003ccode\u003erelease:6.2.0\u003c/code\u003e:\u003c/p\u003e\n\u003ch2\u003e6.2.0\u003c/h2\u003e\n\u003cp\u003e:Released: 28.11.2025\n:Full Changelog: \u003ccode\u003ev6.1.1...v6.2.0 \u0026lt;https://github.com/useblocks/sphinx-needs/compare/6.1.1...6.2.0\u0026gt;\u003c/code\u003e__\u003c/p\u003e\n\u003cp\u003eThis release introduces performance improvements for schema validation, to make it ~3 times faster (:pr:\u003ccode\u003e1581\u003c/code\u003e, :pr:\u003ccode\u003e1582\u003c/code\u003e, :pr:\u003ccode\u003e1583\u003c/code\u003e, :pr:\u003ccode\u003e1584\u003c/code\u003e).\u003c/p\u003e\n\u003cp\u003eThis includes a change in dependencies, from \u003ccode\u003ejsonschema\u003c/code\u003e to \u003ccode\u003ejsonschema-rs\u003c/code\u003e for the core validation engine.\u003c/p\u003e\n\u003cp\u003e.. _\u003ccode\u003erelease:6.1.1\u003c/code\u003e:\u003c/p\u003e\n\u003ch2\u003e6.1.1\u003c/h2\u003e\n\u003cp\u003e:Released: 25.11.2025\n:Full Changelog: \u003ccode\u003ev6.1.0...v6.1.1 \u0026lt;https://github.com/useblocks/sphinx-needs/compare/6.1.0...6.1.1\u0026gt;\u003c/code\u003e__\u003c/p\u003e\n\u003cp\u003eThis release focuses on schema validation improvements and bug fixes.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e✨ Add \u003ccode\u003eneeds_schema_validation_enabled\u003c/code\u003e configuration (:pr:\u003ccode\u003e1574\u003c/code\u003e)\u003c/p\u003e\n\u003cp\u003eNew configuration option to disable schema validation entirely.\nThis is set to \u003ccode\u003eTrue\u003c/code\u003e by default, for backward compatibility,\nand provides an opt-out mechanism when schema validation is not needed.\u003c/p\u003e\n\u003cp\u003eSee :ref:\u003ccode\u003eneeds_schema_validation_enabled\u003c/code\u003e for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e✨ Add \u003ccode\u003eallow_type_coercion\u003c/code\u003e configuration for external/import \u003ccode\u003eneeds.json\u003c/code\u003e reads (:pr:\u003ccode\u003e1573\u003c/code\u003e)\u003c/p\u003e\n\u003cp\u003eNew configuration option for \u003ccode\u003eneeds_external_needs\u003c/code\u003e and the \u003ccode\u003eneedimport\u003c/code\u003e directive\nthat controls whether field values should be automatically coerced to expected types.\nFor example, enables/disables parsing comma-separated strings like \u003ccode\u003e\u0026quot;a,b,c\u0026quot;\u003c/code\u003e into\nlist types like \u003ccode\u003e[\u0026quot;a\u0026quot;, \u0026quot;b\u0026quot;, \u0026quot;c\u0026quot;]\u003c/code\u003e.\nSet to \u003ccode\u003eTrue\u003c/code\u003e by default for backward compatibility.\nSetting to \u003ccode\u003eFalse\u003c/code\u003e may improve performance by skipping additional parsing.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/0a059cecd1ac10ade89a9ba6ed28842053241ae5\"\u003e\u003ccode\u003e0a059ce\u003c/code\u003e\u003c/a\u003e 🚀 Release v6.3.0 (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1599\"\u003e#1599\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/f567c1fafb4e1ba1a7dabb3bd6afc5f17ded84cd\"\u003e\u003ccode\u003ef567c1f\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1586\"\u003e#1586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/a60a104cf2ae878a438ff718bc95b729f41276da\"\u003e\u003ccode\u003ea60a104\u003c/code\u003e\u003c/a\u003e 📚 Fix typo in tutorial documentation (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1591\"\u003e#1591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/2783b84169f0c2caffe1ded27c9b8d6993b18d4b\"\u003e\u003ccode\u003e2783b84\u003c/code\u003e\u003c/a\u003e ⬆️ Support Python 3.14 (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1598\"\u003e#1598\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/339b358a42f99572f297aa9923b80093679304f2\"\u003e\u003ccode\u003e339b358\u003c/code\u003e\u003c/a\u003e ♻️ Remove typeguard dependency (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1597\"\u003e#1597\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/f09fe6e7cfd4058c9aa8df36bd9eb796138d6d76\"\u003e\u003ccode\u003ef09fe6e\u003c/code\u003e\u003c/a\u003e 👌 Validate all schemas compile during config resolution (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1596\"\u003e#1596\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/4d7e4e132f6ce4044201dab51dde838ec2183136\"\u003e\u003ccode\u003e4d7e4e1\u003c/code\u003e\u003c/a\u003e 👌 Ensure \u003ccode\u003eextra_links\u003c/code\u003e \u003ccode\u003eschema\u003c/code\u003e contains item type (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1595\"\u003e#1595\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/94be2b14336e670505959f047c4f57ed721b1438\"\u003e\u003ccode\u003e94be2b1\u003c/code\u003e\u003c/a\u003e 👌 Relative paths from toml configuration (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1589\"\u003e#1589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/cd2024fe2f4eb3e1c28616a47493e3e8728ea8a9\"\u003e\u003ccode\u003ecd2024f\u003c/code\u003e\u003c/a\u003e 🚀 Release v6.2.0 (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1585\"\u003e#1585\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/92462bbc0a9559e01e1fa6b874a1031472dec1bf\"\u003e\u003ccode\u003e92462bb\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1421\"\u003e#1421\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/useblocks/sphinx-needs/compare/5.1.0...6.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/repository-service-tuf/repository-service-tuf/pull/920","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/repository-service-tuf%2Frepository-service-tuf/issues/920","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/920/packages"},{"uuid":"3802743037","node_id":"PR_kwDOMftbFc68njza","number":188,"state":"closed","title":"Bump the py-updates group across 1 directory with 79 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-19T04:50:43.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-12T04:41:08.000Z","updated_at":"2026-01-19T04:50:44.000Z","time_to_close":605375,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"py-updates","update_count":79,"packages":[{"name":"awscli","old_version":"1.40.17","new_version":"1.44.15","repository_url":"https://github.com/aws/aws-cli"},{"name":"polars","old_version":"1.28.1","new_version":"1.37.0","repository_url":"https://github.com/pola-rs/polars"},{"name":"requests","old_version":"2.32.3","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"biopython","old_version":"1.85","new_version":"1.86","repository_url":"https://github.com/biopython/biopython"},{"name":"boto3","old_version":"1.38.18","new_version":"1.42.25","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.38.18","new_version":"1.42.25","repository_url":"https://github.com/boto/botocore"},{"name":"certifi","old_version":"2025.4.26","new_version":"2026.1.4","repository_url":"https://github.com/certifi/python-certifi"},{"name":"charset-normalizer","old_version":"3.4.2","new_version":"3.4.4","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"cloudpathlib","old_version":"0.21.1","new_version":"0.23.0","repository_url":"https://github.com/drivendataorg/cloudpathlib"},{"name":"docutils","old_version":"0.19","new_version":"0.22.4","repository_url":"https://github.com/rtfd/recommonmark"},{"name":"idna","old_version":"3.10","new_version":"3.11","repository_url":"https://github.com/kjd/idna"},{"name":"jellyfish","old_version":"1.2.0","new_version":"1.2.1"},{"name":"markdown-it-py","old_version":"3.0.0","new_version":"4.0.0","repository_url":"https://github.com/executablebooks/markdown-it-py"},{"name":"numpy","old_version":"2.2.5","new_version":"2.4.1","repository_url":"https://github.com/numpy/numpy"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"pyarrow","old_version":"20.0.0","new_version":"22.0.0","repository_url":"https://github.com/apache/arrow"},{"name":"pygments","old_version":"2.19.1","new_version":"2.19.2","repository_url":"https://github.com/pygments/pygments"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"rich","old_version":"14.0.0","new_version":"14.2.0","repository_url":"https://github.com/Textualize/rich"},{"name":"rsa","old_version":"4.7.2","new_version":"4.9.1","repository_url":"https://github.com/sybrenstuvel/python-rsa"},{"name":"s3transfer","old_version":"0.12.0","new_version":"0.16.0","repository_url":"https://github.com/boto/s3transfer"},{"name":"structlog","old_version":"25.3.0","new_version":"25.5.0","repository_url":"https://github.com/hynek/structlog"},{"name":"tzdata","old_version":"2025.2","new_version":"2025.3","repository_url":"https://github.com/python/tzdata"},{"name":"urllib3","old_version":"2.4.0","new_version":"2.6.3","repository_url":"https://github.com/urllib3/urllib3"},{"name":"zstandard","old_version":"0.23.0","new_version":"0.25.0","repository_url":"https://github.com/indygreg/python-zstandard"},{"name":"boto3-stubs","old_version":"1.38.18","new_version":"1.42.25","repository_url":"https://github.com/youtype/mypy_boto3_builder"},{"name":"botocore-stubs","old_version":"1.38.18","new_version":"1.42.25","repository_url":"https://github.com/youtype/botocore-stubs"},{"name":"cffi","old_version":"1.17.1","new_version":"2.0.0","repository_url":"https://github.com/python-cffi/cffi"},{"name":"coverage","old_version":"7.8.0","new_version":"7.13.1","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cryptography","old_version":"44.0.3","new_version":"46.0.3","repository_url":"https://github.com/pyca/cryptography"},{"name":"freezegun","old_version":"1.5.1","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"iniconfig","old_version":"2.1.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"markupsafe","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/pallets/markupsafe"},{"name":"moto","old_version":"5.1.4","new_version":"5.1.19","repository_url":"https://github.com/getmoto/moto"},{"name":"mypy","old_version":"1.15.0","new_version":"1.19.1","repository_url":"https://github.com/python/mypy"},{"name":"mypy-boto3-s3","old_version":"1.38.0","new_version":"1.42.21","repository_url":"https://github.com/youtype/mypy_boto3_builder"},{"name":"pycparser","old_version":"2.22","new_version":"2.23","repository_url":"https://github.com/eliben/pycparser"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"responses","old_version":"0.25.7","new_version":"0.25.8","repository_url":"https://github.com/getsentry/responses"},{"name":"ruff","old_version":"0.11.10","new_version":"0.14.11","repository_url":"https://github.com/astral-sh/ruff"},{"name":"types-awscrt","old_version":"0.27.2","new_version":"0.30.0","repository_url":"https://github.com/youtype/types-awscrt"},{"name":"types-requests","old_version":"2.32.0.20250515","new_version":"2.32.4.20260107","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-s3transfer","old_version":"0.12.0","new_version":"0.16.0","repository_url":"https://github.com/youtype/types-s3transfer"},{"name":"typing-extensions","old_version":"4.13.2","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"werkzeug","old_version":"3.1.3","new_version":"3.1.5","repository_url":"https://github.com/pallets/werkzeug"},{"name":"xmltodict","old_version":"0.14.2","new_version":"1.0.2","repository_url":"https://github.com/martinblech/xmltodict"},{"name":"alabaster","old_version":"0.7.16","new_version":"1.0.0","repository_url":"https://github.com/sphinx-doc/alabaster"},{"name":"anyio","old_version":"4.9.0","new_version":"4.12.1","repository_url":"https://github.com/agronholm/anyio"},{"name":"beautifulsoup4","old_version":"4.13.4","new_version":"4.14.3"},{"name":"cachecontrol","old_version":"0.14.3","new_version":"0.14.4","repository_url":"https://github.com/psf/cachecontrol"},{"name":"click","old_version":"8.2.0","new_version":"8.3.1","repository_url":"https://github.com/pallets/click"},{"name":"contourpy","old_version":"1.3.2","new_version":"1.3.3","repository_url":"https://github.com/contourpy/contourpy"},{"name":"filelock","old_version":"3.18.0","new_version":"3.20.3","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"fonttools","old_version":"4.58.0","new_version":"4.61.1","repository_url":"https://github.com/fonttools/fonttools"},{"name":"furo","old_version":"2024.8.6","new_version":"2025.12.19","repository_url":"https://github.com/pradyunsg/furo"},{"name":"kiwisolver","old_version":"1.4.8","new_version":"1.4.9","repository_url":"https://github.com/nucleic/kiwi"},{"name":"matplotlib","old_version":"3.10.3","new_version":"3.10.8","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mdit-py-plugins","old_version":"0.4.2","new_version":"0.5.0","repository_url":"https://github.com/executablebooks/mdit-py-plugins"},{"name":"more-itertools","old_version":"10.7.0","new_version":"10.8.0","repository_url":"https://github.com/more-itertools/more-itertools"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.1.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"pillow","old_version":"11.2.1","new_version":"12.1.0","repository_url":"https://github.com/python-pillow/Pillow"},{"name":"platformdirs","old_version":"4.3.8","new_version":"4.5.1","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pyparsing","old_version":"3.2.3","new_version":"3.3.1","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"ruamel-yaml","old_version":"0.18.10","new_version":"0.19.1"},{"name":"ruamel-yaml-clib","old_version":"0.2.12","new_version":"0.2.15"},{"name":"soupsieve","old_version":"2.7","new_version":"2.8.1","repository_url":"https://github.com/facelessuser/soupsieve"},{"name":"sphinx","old_version":"7.3.7","new_version":"9.0.4","repository_url":"https://github.com/sphinx-doc/sphinx"},{"name":"sphinx-autobuild","old_version":"2024.10.3","new_version":"2025.8.25","repository_url":"https://github.com/sphinx-doc/sphinx-autobuild"},{"name":"sphinx-autodoc-typehints","old_version":"2.3.0","new_version":"3.6.1","repository_url":"https://github.com/tox-dev/sphinx-autodoc-typehints"},{"name":"sphinx-jinja2-compat","old_version":"0.3.0","new_version":"0.4.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-jinja2-compat"},{"name":"sphinx-prompt","old_version":"1.8.0","new_version":"1.10.2","repository_url":"https://github.com/sbrunner/sphinx-prompt"},{"name":"sphinx-tabs","old_version":"3.4.5","new_version":"3.4.7","repository_url":"https://github.com/executablebooks/sphinx-tabs"},{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"},{"name":"sphinxext-opengraph","old_version":"0.10.0","new_version":"0.13.0","repository_url":"https://github.com/sphinx-doc/sphinxext-opengraph"},{"name":"starlette","old_version":"0.46.2","new_version":"0.51.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"uvicorn","old_version":"0.34.2","new_version":"0.40.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"watchfiles","old_version":"1.0.5","new_version":"1.1.1","repository_url":"https://github.com/samuelcolvin/watchfiles"},{"name":"websockets","old_version":"15.0.1","new_version":"16.0","repository_url":"https://github.com/python-websockets/websockets"}],"path":null,"ecosystem":"pip"},"body":"Bumps the py-updates group with 79 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [awscli](https://github.com/aws/aws-cli) | `1.40.17` | `1.44.15` |\n| [polars](https://github.com/pola-rs/polars) | `1.28.1` | `1.37.0` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.32.5` |\n| [biopython](https://github.com/biopython/biopython) | `1.85` | `1.86` |\n| [boto3](https://github.com/boto/boto3) | `1.38.18` | `1.42.25` |\n| [botocore](https://github.com/boto/botocore) | `1.38.18` | `1.42.25` |\n| [certifi](https://github.com/certifi/python-certifi) | `2025.4.26` | `2026.1.4` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.2` | `3.4.4` |\n| [cloudpathlib](https://github.com/drivendataorg/cloudpathlib) | `0.21.1` | `0.23.0` |\n| [docutils](https://github.com/rtfd/recommonmark) | `0.19` | `0.22.4` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.11` |\n| [jellyfish](https://jellyfish.jpt.sh/) | `1.2.0` | `1.2.1` |\n| [markdown-it-py](https://github.com/executablebooks/markdown-it-py) | `3.0.0` | `4.0.0` |\n| [numpy](https://github.com/numpy/numpy) | `2.2.5` | `2.4.1` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [pyarrow](https://github.com/apache/arrow) | `20.0.0` | `22.0.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.19.1` | `2.19.2` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [rich](https://github.com/Textualize/rich) | `14.0.0` | `14.2.0` |\n| [rsa](https://github.com/sybrenstuvel/python-rsa) | `4.7.2` | `4.9.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.12.0` | `0.16.0` |\n| [structlog](https://github.com/hynek/structlog) | `25.3.0` | `25.5.0` |\n| [tzdata](https://github.com/python/tzdata) | `2025.2` | `2025.3` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.4.0` | `2.6.3` |\n| [zstandard](https://github.com/indygreg/python-zstandard) | `0.23.0` | `0.25.0` |\n| [boto3-stubs](https://github.com/youtype/mypy_boto3_builder) | `1.38.18` | `1.42.25` |\n| [botocore-stubs](https://github.com/youtype/botocore-stubs) | `1.38.18` | `1.42.25` |\n| [cffi](https://github.com/python-cffi/cffi) | `1.17.1` | `2.0.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.8.0` | `7.13.1` |\n| [cryptography](https://github.com/pyca/cryptography) | `44.0.3` | `46.0.3` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.1` | `1.5.5` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.1.0` | `2.3.0` |\n| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` |\n| [moto](https://github.com/getmoto/moto) | `5.1.4` | `5.1.19` |\n| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.19.1` |\n| [mypy-boto3-s3](https://github.com/youtype/mypy_boto3_builder) | `1.38.0` | `1.42.21` |\n| [pycparser](https://github.com/eliben/pycparser) | `2.22` | `2.23` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.2` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [responses](https://github.com/getsentry/responses) | `0.25.7` | `0.25.8` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.10` | `0.14.11` |\n| [types-awscrt](https://github.com/youtype/types-awscrt) | `0.27.2` | `0.30.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.32.0.20250515` | `2.32.4.20260107` |\n| [types-s3transfer](https://github.com/youtype/types-s3transfer) | `0.12.0` | `0.16.0` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.13.2` | `4.15.0` |\n| [werkzeug](https://github.com/pallets/werkzeug) | `3.1.3` | `3.1.5` |\n| [xmltodict](https://github.com/martinblech/xmltodict) | `0.14.2` | `1.0.2` |\n| [alabaster](https://github.com/sphinx-doc/alabaster) | `0.7.16` | `1.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.9.0` | `4.12.1` |\n| [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) | `4.13.4` | `4.14.3` |\n| [cachecontrol](https://github.com/psf/cachecontrol) | `0.14.3` | `0.14.4` |\n| [click](https://github.com/pallets/click) | `8.2.0` | `8.3.1` |\n| [contourpy](https://github.com/contourpy/contourpy) | `1.3.2` | `1.3.3` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.18.0` | `3.20.3` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.58.0` | `4.61.1` |\n| [furo](https://github.com/pradyunsg/furo) | `2024.8.6` | `2025.12.19` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.8` | `1.4.9` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.3` | `3.10.8` |\n| [mdit-py-plugins](https://github.com/executablebooks/mdit-py-plugins) | `0.4.2` | `0.5.0` |\n| [more-itertools](https://github.com/more-itertools/more-itertools) | `10.7.0` | `10.8.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.1.2` |\n| [pillow](https://github.com/python-pillow/Pillow) | `11.2.1` | `12.1.0` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.8` | `4.5.1` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.3` | `3.3.1` |\n| ruamel-yaml | `0.18.10` | `0.19.1` |\n| ruamel-yaml-clib | `0.2.12` | `0.2.15` |\n| [soupsieve](https://github.com/facelessuser/soupsieve) | `2.7` | `2.8.1` |\n| [sphinx](https://github.com/sphinx-doc/sphinx) | `7.3.7` | `9.0.4` |\n| [sphinx-autobuild](https://github.com/sphinx-doc/sphinx-autobuild) | `2024.10.3` | `2025.8.25` |\n| [sphinx-autodoc-typehints](https://github.com/tox-dev/sphinx-autodoc-typehints) | `2.3.0` | `3.6.1` |\n| [sphinx-jinja2-compat](https://github.com/sphinx-toolbox/sphinx-jinja2-compat) | `0.3.0` | `0.4.1` |\n| [sphinx-prompt](https://github.com/sbrunner/sphinx-prompt) | `1.8.0` | `1.10.2` |\n| [sphinx-tabs](https://github.com/executablebooks/sphinx-tabs) | `3.4.5` | `3.4.7` |\n| [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) | `4.0.0` | `4.1.1` |\n| [sphinxext-opengraph](https://github.com/sphinx-doc/sphinxext-opengraph) | `0.10.0` | `0.13.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.46.2` | `0.51.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.34.2` | `0.40.0` |\n| [watchfiles](https://github.com/samuelcolvin/watchfiles) | `1.0.5` | `1.1.1` |\n| [websockets](https://github.com/python-websockets/websockets) | `15.0.1` | `16.0` |\n\n\nUpdates `awscli` from 1.40.17 to 1.44.15\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/56a551a5916a09423336124a8967615e0d0be143\"\u003e\u003ccode\u003e56a551a\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.15'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/b78a64f27cce6dc86754f39196b44f5b1a7f266d\"\u003e\u003ccode\u003eb78a64f\u003c/code\u003e\u003c/a\u003e Bumping version to 1.44.15\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/715bce7cf992e841f04b6b15c701d4292450d9d6\"\u003e\u003ccode\u003e715bce7\u003c/code\u003e\u003c/a\u003e Update changelog based on model updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/72510f852833ea976520851bda26757265c6c207\"\u003e\u003ccode\u003e72510f8\u003c/code\u003e\u003c/a\u003e Create update-vpc-link.rst (\u003ca href=\"https://redirect.github.com/aws/aws-cli/issues/9405\"\u003e#9405\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/d6a71c953a9155fceb7fcecf4246718153522c4d\"\u003e\u003ccode\u003ed6a71c9\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.14'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/b2be64a7c3c8747a0cfd7b174307409f9c130420\"\u003e\u003ccode\u003eb2be64a\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.14' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/95337ce8110bbd70efef24b8255892a374698e52\"\u003e\u003ccode\u003e95337ce\u003c/code\u003e\u003c/a\u003e Bumping version to 1.44.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/3224f1b5e55abc438d1f86f06a70fef3dbaa89ca\"\u003e\u003ccode\u003e3224f1b\u003c/code\u003e\u003c/a\u003e Update changelog based on model updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/d90b023b6b34361dec3bffee9b64f62d662fa3d7\"\u003e\u003ccode\u003ed90b023\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.13'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/76549b03313edbe5b8e011b9cf35e3e89b5d5387\"\u003e\u003ccode\u003e76549b0\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.13' into develop\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-cli/compare/1.40.17...1.44.15\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `polars` from 1.28.1 to 1.37.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pola-rs/polars/releases\"\u003epolars's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePython Polars 1.37.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Performance improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up \u003ccode\u003eSQL\u003c/code\u003e interface \u0026quot;ORDER BY\u0026quot; clauses (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26037\"\u003e#26037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd fast kernel for is_nan and use it for numpy NaN-\u0026gt;null conversion (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26034\"\u003e#26034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOptimize ArrayFromIter implementations for ObjectArray (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25712\"\u003e#25712\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew streaming NDJSON sink pipeline (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25948\"\u003e#25948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew streaming CSV sink pipeline (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25900\"\u003e#25900\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDispatch partitioned usage of \u003ccode\u003esink_*\u003c/code\u003e functions to new-streaming by default (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25910\"\u003e#25910\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace ryu with faster zmij (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25885\"\u003e#25885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReduce memory usage for .item() count in grouped first/last (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25787\"\u003e#25787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip schema inference if schema provided for \u003ccode\u003escan_csv/ndjson\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25757\"\u003e#25757\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd width-aware chunking to prevent degradation with wide data (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25764\"\u003e#25764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse new sink pipeline for write/sink_ipc (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25746\"\u003e#25746\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReduce memory usage when scanning multiple parquet files in streaming (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25747\"\u003e#25747\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDon't call cluster_with_columns optimization if not needed (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25724\"\u003e#25724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e✨ Enhancements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new \u003ccode\u003epl.PartitionBy\u003c/code\u003e API (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26004\"\u003e#26004\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eArrowStreamExportable and sink_delta (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25994\"\u003e#25994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRelease musl builds (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25894\"\u003e#25894\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplement streaming decompression for CSV \u003ccode\u003eCOUNT(*)\u003c/code\u003e fast path (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25988\"\u003e#25988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd nulls support for rolling_mean_by (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25917\"\u003e#25917\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd lazy \u003ccode\u003ecollect_all\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25991\"\u003e#25991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd streaming decompression for NDJSON schema inference (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25992\"\u003e#25992\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved handling of unqualified SQL \u003ccode\u003eJOIN\u003c/code\u003e columns that are ambiguous (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25761\"\u003e#25761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDrop Python 3.9 support (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25984\"\u003e#25984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpose record batch size in \u003ccode\u003e{sink,write}_ipc\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25958\"\u003e#25958\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003enull_on_oob\u003c/code\u003e parameter to \u003ccode\u003eexpr.get\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25957\"\u003e#25957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSuggest correct timezone if timezone validation fails (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25937\"\u003e#25937\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport streaming IPC scan from S3 object store (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25868\"\u003e#25868\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplement streaming CSV schema inference (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25911\"\u003e#25911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport hashing of meta expressions (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25916\"\u003e#25916\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove \u003ccode\u003eSQLContext\u003c/code\u003e recognition of possible table objects in the Python globals (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25749\"\u003e#25749\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd pl.Expr.(min|max)_by (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25905\"\u003e#25905\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove MemSlice Debug impl (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25913\"\u003e#25913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplement or fix json encode/decode for (U)Int128, Categorical, Enum, Decimal (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25896\"\u003e#25896\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpand scatter to more dtypes (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25874\"\u003e#25874\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplement streaming CSV decompression (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25842\"\u003e#25842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd Series \u003ccode\u003esql\u003c/code\u003e method for API consistency (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25792\"\u003e#25792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMark Polars as safe for free-threading (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25677\"\u003e#25677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport Binary and Decimal in arg_(min|max) (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25839\"\u003e#25839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow Decimal parsing in str.json_decode (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25797\"\u003e#25797\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eshift\u003c/code\u003e support for Object data type (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25769\"\u003e#25769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing \u003ccode\u003eSeries.arr.mean\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25774\"\u003e#25774\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow scientific notation when parsing Decimals (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25711\"\u003e#25711\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐞 Bug fixes\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/1674b37a0a066e76d33eb8f66d31fd870c0cd52d\"\u003e\u003ccode\u003e1674b37\u003c/code\u003e\u003c/a\u003e Python Polars 1.37.0 (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26038\"\u003e#26038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/4c49bf5ebb9208e70a84a7effdc5368bc901ba84\"\u003e\u003ccode\u003e4c49bf5\u003c/code\u003e\u003c/a\u003e perf: Speed up \u003ccode\u003eSQL\u003c/code\u003e interface \u0026quot;ORDER BY\u0026quot; clauses (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26037\"\u003e#26037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/c1b9d86310269ae4ab22a9bff87d8f2657c8b050\"\u003e\u003ccode\u003ec1b9d86\u003c/code\u003e\u003c/a\u003e chore: Update rust compiler (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26017\"\u003e#26017\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/68911e4e9f7a2bdedca6d3aefa208a6ec02cf8ad\"\u003e\u003ccode\u003e68911e4\u003c/code\u003e\u003c/a\u003e chore: Improve csv test coverage (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25980\"\u003e#25980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/5f25b4f6b828bcd5df1116b0517358ad51c51529\"\u003e\u003ccode\u003e5f25b4f\u003c/code\u003e\u003c/a\u003e perf: Add fast kernel for is_nan and use it for numpy NaN-\u0026gt;null conversion (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/59463cefe36550547b50e5c6801b1d98516cc0c8\"\u003e\u003ccode\u003e59463ce\u003c/code\u003e\u003c/a\u003e docs(python): Fix display of deprecation warning (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26010\"\u003e#26010\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/21721eba70b9fc18dff58958997c151dfe214903\"\u003e\u003ccode\u003e21721eb\u003c/code\u003e\u003c/a\u003e fix(python): Release GIL on collect_batches (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26033\"\u003e#26033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/778dbb645ccbff8b1e5999a279037571a03c718b\"\u003e\u003ccode\u003e778dbb6\u003c/code\u003e\u003c/a\u003e fix: Missing buffer update in String is_in Parquet pushdown (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26019\"\u003e#26019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/807cfc5a2eae6af453b14a1663e74d07202ce92e\"\u003e\u003ccode\u003e807cfc5\u003c/code\u003e\u003c/a\u003e fix: Make \u003ccode\u003estruct.with_fields\u003c/code\u003e data model coherent (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25610\"\u003e#25610\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/e6d62387f64b225754c15ad1e0b3d4f981509692\"\u003e\u003ccode\u003ee6d6238\u003c/code\u003e\u003c/a\u003e refactor(rust): Use \u003ccode\u003efrom_any_values_and_dtype\u003c/code\u003e in \u003ccode\u003eSeries::extend_constant\u003c/code\u003e ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pola-rs/polars/compare/py-1.28.1...py-1.37.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.32.3 to 2.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/releases\"\u003erequests's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.32.5\u003c/h2\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b25c87d7cb8d6a18a37fa12442b5f883f9e41741\"\u003e\u003ccode\u003eb25c87d\u003c/code\u003e\u003c/a\u003e v2.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/131e506079d97606e4214cc4d87b780ac478de7a\"\u003e\u003ccode\u003e131e506\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/7010\"\u003e#7010\u003c/a\u003e from psf/dependabot/github_actions/actions/checkout-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b336cb2bc616a63a93c6470c558fc1f576b77f90\"\u003e\u003ccode\u003eb336cb2\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/46e939b5525d9c72b677340985582b04b128478a\"\u003e\u003ccode\u003e46e939b\u003c/code\u003e\u003c/a\u003e Update publish workflow to use \u003ccode\u003eartifact-id\u003c/code\u003e instead of \u003ccode\u003ename\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4b9c546aa3f35fca6ca24945376fe7462bb007c4\"\u003e\u003ccode\u003e4b9c546\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6999\"\u003e#6999\u003c/a\u003e from psf/dependabot/github_actions/step-security/har...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7618dbef01d333f23ba4b9c4d97397b06dd89cb6\"\u003e\u003ccode\u003e7618dbe\u003c/code\u003e\u003c/a\u003e Bump step-security/harden-runner from 2.12.0 to 2.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2edca11103c1c27dd8b572dab544b7f48cf3b446\"\u003e\u003ccode\u003e2edca11\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 and drop support for Python 3.8 (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6993\"\u003e#6993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/fec96cd5976ad763e45bac9a033d62cca1877a00\"\u003e\u003ccode\u003efec96cd\u003c/code\u003e\u003c/a\u003e Update Makefile rules (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6996\"\u003e#6996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/d58d8aa2f45c3575268d6d5250745ef69f9cf8b7\"\u003e\u003ccode\u003ed58d8aa\u003c/code\u003e\u003c/a\u003e docs: clarify timeout parameter uses seconds in Session.request (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6994\"\u003e#6994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/91a3eabd3dcc4d7f36dd8249e4777a90ef9b4305\"\u003e\u003ccode\u003e91a3eab\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.5 to 3.29.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `biopython` from 1.85 to 1.86\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/biopython/biopython/blob/master/NEWS.rst\"\u003ebiopython's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e28 October 2025: Biopython 1.86\u003c/h1\u003e\n\u003cp\u003eThis release of Biopython supports Python 3.10, 3.11, 3.12, 3.13 and 3.14.  It\nhas also been tested on PyPy3.10 v7.3.19.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.SearchIO\u003c/code\u003e now supports parsing the tabular and plain text output of\n\u003ccode\u003eInfernal \u0026lt;http://eddylab.org/infernal/\u0026gt;\u003c/code\u003e (v1.0.0+) RNA search tool. The\nformat names are \u003ccode\u003einfernal-tab\u003c/code\u003e and \u003ccode\u003einfernal-text\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe default value of the gap score of a \u003ccode\u003ePairwiseAligner\u003c/code\u003e object was changed\nin this release.  Previously, for consistency with \u003ccode\u003eBio.pairwise2\u003c/code\u003e, the\ndefault value for gap score was 0.  However, this means that a mismatch, an\ninsertion followed by a deletion, and a deletion followed by an insertion all\nget assigned a score of 0.  The aligner then finds a large number of alignments\nthat are logically the same, but have trivial differences between them.  For\nexample, aligning AAACAAA to AAAGAAA previously yielded the following three\nalignments, all with score 6::\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e AAACAAA        AAAC-AAA        AAA-CAAA\n AAAGAAA        AAA-GAAA        AAAG-AAA\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eWith the new default parameter for the gap score, only the first alignment is\nreturned.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.PDBIO\u003c/code\u003e now ensures that b-factor values are always at most 6 characters to\nensure that we do not violate the wwPDB specification. This should not have an impact\non the majority of uses, as b-factor values are generally small (less than 100). When\n1000 \u0026lt;= b-factor \u0026lt; 10_000, the value is rounded to a single decimal place. When,\n10_000 \u0026lt;= b-factor \u0026lt; 999_999, the value is rounded to zero decimal places. Values\nabove 999_999 are now clamped. The justification for this is the rise in the b-factor\nfield being used for additional metadata, typically from computational tools.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.Align\u003c/code\u003e now provides a method \u003ccode\u003eAlignment.from_alignments_with_same_reference\u003c/code\u003e\nto construct a multiple sequence alignment from a collection of alignments\nthat share the same reference sequence.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.PDBIO\u003c/code\u003e will now raise module specific warnings:\n\u003ccode\u003eBio.PDB.PDBExceptions.PDBIOWarning\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.SCADIO\u003c/code\u003e now supports object selection by color in the OpenSCAD\noutput file.  This enables generation of separate STL files for each color for\nprinting protein structures on multi-material 3D printers.\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eiplotx\u003c/code\u003e library is mentioned in the Tutorial as an option to visualise\ntrees using complex style options.\u003c/p\u003e\n\u003cp\u003eMany thanks to the Biopython developers and community for making this release\npossible, especially the following contributors:\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\u003eSee full diff in \u003ca href=\"https://github.com/biopython/biopython/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.18 to 1.42.25\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/8dd60074e59d29c733b6b6eefad3a75ab615090b\"\u003e\u003ccode\u003e8dd6007\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.25'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/0bf89db7865cfef4ed697b92199c093ca6f5f803\"\u003e\u003ccode\u003e0bf89db\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/34bf8f819c2870d7baa90c6e65f83dea34586bdd\"\u003e\u003ccode\u003e34bf8f8\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/9b8fbad82f97a16e4b468b7f9ff83bafa2e8d55d\"\u003e\u003ccode\u003e9b8fbad\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.24'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/6dda579bbbeafe145506fb40a65a2f7979f196c2\"\u003e\u003ccode\u003e6dda579\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.24' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/dc3945deb487ce84d804cb813b8075461973041f\"\u003e\u003ccode\u003edc3945d\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/60784e3398975b90331d227e1377a42232fd3f8a\"\u003e\u003ccode\u003e60784e3\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/dae67fb6753924da30b42cc61dc0d940a672afbd\"\u003e\u003ccode\u003edae67fb\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.23'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/c7b7d4157a8130921bf9e7bef024a1dd17eaf600\"\u003e\u003ccode\u003ec7b7d41\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.23' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/95878f640e54fa7658e242eb2213d361b92162c2\"\u003e\u003ccode\u003e95878f6\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.23\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.18...1.42.25\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `botocore` from 1.38.18 to 1.42.25\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/a35f376045da3bc2dcf0de2c1346482ce1ad30c7\"\u003e\u003ccode\u003ea35f376\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.25'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/721ab7860e75d7c5ef5c0eda91f18c568b2f31e1\"\u003e\u003ccode\u003e721ab78\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/b4541b5471194a63234467945b97397e42e265e4\"\u003e\u003ccode\u003eb4541b5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/90830226c8e3cd3b96755c3b71be3314225871e3\"\u003e\u003ccode\u003e9083022\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/331cd6689f458e58465234ad58a60881d49007fa\"\u003e\u003ccode\u003e331cd66\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.24'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/47f2b30e092fd853d28193d60cb10acf8a89b5ec\"\u003e\u003ccode\u003e47f2b30\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.24' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/230fac5f074e94b3c32f112624c04224d123873d\"\u003e\u003ccode\u003e230fac5\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/cc102f140d97d286544a36adb5c3fc6043c50321\"\u003e\u003ccode\u003ecc102f1\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/beaeab5eee438b737029aa27c7b7641ec89ba3ad\"\u003e\u003ccode\u003ebeaeab5\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/f6e323727729fb2aa26ec9f8362de39d6adf1d2e\"\u003e\u003ccode\u003ef6e3237\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.23'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/botocore/compare/1.38.18...1.42.25\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `certifi` from 2025.4.26 to 2026.1.4\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/c64d9f3a8496c0195548697f2080e716af66dd6a\"\u003e\u003ccode\u003ec64d9f3\u003c/code\u003e\u003c/a\u003e 2026.01.04 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/389\"\u003e#389\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/4ac232f05a547071543d2fb069aa3c62b1dc79f3\"\u003e\u003ccode\u003e4ac232f\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 6.0.0 to 7.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/387\"\u003e#387\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/95ae4b20e8abb7fa708e751e346466d16b36211a\"\u003e\u003ccode\u003e95ae4b2\u003c/code\u003e\u003c/a\u003e Update CI workflow to use Ubuntu 24.04 and Python 3.14 stable (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/386\"\u003e#386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/b72a7b1a40ae20755338d3132d8f880427b3b6fc\"\u003e\u003ccode\u003eb72a7b1\u003c/code\u003e\u003c/a\u003e Bump dessant/lock-threads from 5.0.1 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/385\"\u003e#385\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ecc267216fbdcecb1b2aa2aa175152b773cc5ced\"\u003e\u003ccode\u003eecc2672\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/384\"\u003e#384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/6a897dbc1124b17f179ef225742fcda481ec96f3\"\u003e\u003ccode\u003e6a897db\u003c/code\u003e\u003c/a\u003e Bump peter-evans/create-pull-request from 7.0.11 to 8.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/383\"\u003e#383\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/27ca98ad845ee6d130a88301622c137893f71620\"\u003e\u003ccode\u003e27ca98a\u003c/code\u003e\u003c/a\u003e Bump peter-evans/create-pull-request from 7.0.9 to 7.0.11 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/381\"\u003e#381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/56c59a63909cfd3162b37e7bc16956e64df0f737\"\u003e\u003ccode\u003e56c59a6\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 6.0.0 to 6.0.1 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/382\"\u003e#382\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ae0021cd43a77bfba67d20a041469cdf6996570e\"\u003e\u003ccode\u003eae0021c\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 6.0.0 to 6.1.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/380\"\u003e#380\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ddf5d0b5d2a3d55fd92a79f141dbb5e074caf924\"\u003e\u003ccode\u003eddf5d0b\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5.0.1 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/378\"\u003e#378\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/certifi/python-certifi/compare/2025.04.26...2026.01.04\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `charset-normalizer` from 3.4.2 to 3.4.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.3...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003e multiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/b30ffdcc2f11043c0d34e60fe66d3815cd49b32b\"\u003e\u003ccode\u003eb30ffdc\u003c/code\u003e\u003c/a\u003e :wrench: fix checksum step in cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/d3fbfcfad7dfe3c640886f1a6a6351da527f6634\"\u003e\u003ccode\u003ed3fbfcf\u003c/code\u003e\u003c/a\u003e :wrench: fix cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/dafbb95f8c00d3cc8b99158caa63006ffab98749\"\u003e\u003ccode\u003edafbb95\u003c/code\u003e\u003c/a\u003e Release 3.4.4 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/658\"\u003e#658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/1f18ffaa69d2c84fea7abedb8840197ba9c14562\"\u003e\u003ccode\u003e1f18ffa\u003c/code\u003e\u003c/a\u003e :arrow_up: raise mypy upper bound to 1.18.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/ef4ac69ad203891f24e26b2422ab3a08053044fa\"\u003e\u003ccode\u003eef4ac69\u003c/code\u003e\u003c/a\u003e Merge branch 'release-3.4.4' of github.com:jawah/charset_normalizer into rele...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/4b35dda053db5e2e60a247e80a116e4ef04f439b\"\u003e\u003ccode\u003e4b35dda\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/0ec6452f1a34cbc77a55b237c4118807b44c2a33\"\u003e\u003ccode\u003e0ec6452\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f341edec8a828dda394abfa011b1ded8b4b102e2\"\u003e\u003ccode\u003ef341ede\u003c/code\u003e\u003c/a\u003e :arrow_up: upgrade dependencies (dev, ci)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/a308841e660a4d61ea6c448e7b8bf97415ecdc4a\"\u003e\u003ccode\u003ea308841\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/9c906da611d5ca5ef076d6bf7f60e629f661d0b0\"\u003e\u003ccode\u003e9c906da\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.2...3.4.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cloudpathlib` from 0.21.1 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/drivendataorg/cloudpathlib/releases\"\u003ecloudpathlib's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14 (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/529\"\u003e#529\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/530\"\u003e#530\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eChanged \u003ccode\u003eCloudPath.copy\u003c/code\u003e to have the first parameter named \u003ccode\u003etarget\u003c/code\u003e instead of \u003ccode\u003edestination\u003c/code\u003e and added new \u003ccode\u003efollow_symlinks\u003c/code\u003e and \u003ccode\u003epreserve_metadata\u003c/code\u003e kwargs. \u003cstrong\u003eBreaking change for users that relied on the first parameter being named \u003ccode\u003edestination\u003c/code\u003e instead of \u003ccode\u003etarget\u003c/code\u003e.\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.copy_into\u003c/code\u003e to copy a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move\u003c/code\u003e to move a file or directory to another location.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move_into\u003c/code\u003e to move a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPathInfo\u003c/code\u003e and \u003ccode\u003eCloudPath.info\u003c/code\u003e to get information about a file or directory.\u003c/li\u003e\n\u003cli\u003eAdded additional no-op kwargs to \u003ccode\u003emkdir\u003c/code\u003e, \u003ccode\u003etouch\u003c/code\u003e, \u003ccode\u003eglob\u003c/code\u003e, \u003ccode\u003erglob\u003c/code\u003e, \u003ccode\u003estat\u003c/code\u003e to match pathlib.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.22.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed issue with GS credentials, using default auth enables a wider set of authentication methods in GS (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/390\"\u003e#390\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/514\"\u003e#514\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ljyanesm\"\u003e\u003ccode\u003e@​ljyanesm\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for http(s) urls with \u003ccode\u003eHttpClient\u003c/code\u003e, \u003ccode\u003eHttpPath\u003c/code\u003e, \u003ccode\u003eHttpsClient\u003c/code\u003e, and \u003ccode\u003eHttpsPath\u003c/code\u003e. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/455\"\u003e#455\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded experimental support for patching the builtins \u003ccode\u003eopen\u003c/code\u003e, \u003ccode\u003eos\u003c/code\u003e, \u003ccode\u003eos.path\u003c/code\u003e, and \u003ccode\u003eglob\u003c/code\u003e to work with \u003ccode\u003eCloudPath\u003c/code\u003e objects. It is off by default; see the new \u0026quot;Compatibility\u0026quot; section in the docs for more information. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/128\"\u003e#128\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for \u003ccode\u003eCloudPath(*parts)\u003c/code\u003e to create a \u003ccode\u003eCloudPath\u003c/code\u003e object from a list of parts (to match \u003ccode\u003epathlib.Path\u003c/code\u003e). \u003cstrong\u003eThis is a potentially breaking change for users that relied on the second arg being the \u003ccode\u003eclient\u003c/code\u003e instead of making it an explicit kwarg.\u003c/strong\u003e (PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\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/drivendataorg/cloudpathlib/blob/master/HISTORY.md\"\u003ecloudpathlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0 (2025-10-07)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14 (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/529\"\u003e#529\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/530\"\u003e#530\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eChanged \u003ccode\u003eCloudPath.copy\u003c/code\u003e to have the first parameter named \u003ccode\u003etarget\u003c/code\u003e instead of \u003ccode\u003edestination\u003c/code\u003e and added new \u003ccode\u003efollow_symlinks\u003c/code\u003e and \u003ccode\u003epreserve_metadata\u003c/code\u003e kwargs. \u003cstrong\u003eBreaking change for users that relied on the first parameter being named \u003ccode\u003edestination\u003c/code\u003e instead of \u003ccode\u003etarget\u003c/code\u003e.\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.copy_into\u003c/code\u003e to copy a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move\u003c/code\u003e to move a file or directory to another location.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move_into\u003c/code\u003e to move a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPathInfo\u003c/code\u003e and \u003ccode\u003eCloudPath.info\u003c/code\u003e to get information about a file or directory.\u003c/li\u003e\n\u003cli\u003eAdded additional no-op kwargs to \u003ccode\u003emkdir\u003c/code\u003e, \u003ccode\u003etouch\u003c/code\u003e, \u003ccode\u003eglob\u003c/code\u003e, \u003ccode\u003erglob\u003c/code\u003e, \u003ccode\u003estat\u003c/code\u003e to match pathlib.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.22.0 (2025-08-29)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed issue with GS credentials, using default auth enables a wider set of authentication methods in GS (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/390\"\u003e#390\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/514\"\u003e#514\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ljyanesm\"\u003e\u003ccode\u003e@​ljyanesm\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for http(s) urls with \u003ccode\u003eHttpClient\u003c/code\u003e, \u003ccode\u003eHttpPath\u003c/code\u003e, \u003ccode\u003eHttpsClient\u003c/code\u003e, and \u003ccode\u003eHttpsPath\u003c/code\u003e. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/455\"\u003e#455\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded experimental support for patching the builtins \u003ccode\u003eopen\u003c/code\u003e, \u003ccode\u003eos\u003c/code\u003e, \u003ccode\u003eos.path\u003c/code\u003e, and \u003ccode\u003eglob\u003c/code\u003e to work with \u003ccode\u003eCloudPath\u003c/code\u003e objects. It is off by default; see the new \u0026quot;Compatibility\u0026quot; section in the docs for more information. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/128\"\u003e#128\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for \u003ccode\u003eCloudPath(*parts)\u003c/code\u003e to create a \u003ccode\u003eCloudPath\u003c/code\u003e object from a list of parts (to match \u003ccode\u003epathlib.Path\u003c/code\u003e). \u003cstrong\u003eThis is a potentially breaking change for users that relied on the second arg being the \u003ccode\u003eclient\u003c/code\u003e instead of making it an explicit kwarg.\u003c/strong\u003e (PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\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/drivendataorg/cloudpathlib/commit/28f1d943078517262d045ae50136edf27a5298a1\"\u003e\u003ccode\u003e28f1d94\u003c/code\u003e\u003c/a\u003e WIP Support 3.14 (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/530\"\u003e#530\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/fec5918d6725e9f1f52bee003528f4f854454980\"\u003e\u003ccode\u003efec5918\u003c/code\u003e\u003c/a\u003e Bump pypa/gh-action-pypi-publish in /.github/workflows (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/531\"\u003e#531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/e7900023bf4b32b70ca5b2d798f9ce52187582f8\"\u003e\u003ccode\u003ee790002\u003c/code\u003e\u003c/a\u003e version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/bb1f1e4cb5eba0928cec2aaff30cb0f5ace1f108\"\u003e\u003ccode\u003ebb1f1e4\u003c/code\u003e\u003c/a\u003e WIP: Patch open, os and os.path builtins (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/12005505fc29ab4183968022a487416a31b1a1bd\"\u003e\u003ccode\u003e1200550\u003c/code\u003e\u003c/a\u003e Refactor GS authentication to use default credentials (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/514\"\u003e#514\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/526\"\u003e#526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/b21cac14f0090021594f7e3afae9c48f5d7dbd46\"\u003e\u003ccode\u003eb21cac1\u003c/code\u003e\u003c/a\u003e Implement HTTP(s) support (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/863e884cbf1cf141cdf7bf9c0623e0cd3d27841d\"\u003e\u003ccode\u003e863e884\u003c/code\u003e\u003c/a\u003e fix for azure typing differences (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/524\"\u003e#524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/65c5c012bd4297ce4e812cfb8bbf9827db346e03\"\u003e\u003ccode\u003e65c5c01\u003c/code\u003e\u003c/a\u003e Set pytest-cases\u0026gt;=3.9.1 (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/520\"\u003e#520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/drivendataorg/cloudpathlib/compare/v0.21.1...v0.23.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `docutils` from 0.19 to 0.22.4\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/rtfd/recommonmark/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `idna` from 3.10 to 3.11\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kjd/idna/blob/master/HISTORY.rst\"\u003eidna's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e3.11 (2025-10-12)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to Unicode 16.0.0, including significant changes to UTS46\nprocessing. As a result of Unicode ending support for it, transitional\nprocessing no longer has an effect and returns the same result.\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14, lowest supported version is Python 3.8.\u003c/li\u003e\n\u003cli\u003eVarious updates to packaging, including PEP 740 support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/ad949ee3052c2265c66e3df2dd8871a5832ba327\"\u003e\u003ccode\u003ead949ee\u003c/code\u003e\u003c/a\u003e Release v3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/cae4ba779e0a543823894bd4136651c187944da8\"\u003e\u003ccode\u003ecae4ba7\u003c/code\u003e\u003c/a\u003e Second release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/8adb305165c77c4a45d1568a70ead75d2197692c\"\u003e\u003ccode\u003e8adb305\u003c/code\u003e\u003c/a\u003e Add space in RST link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/74cb2b652bb06133b0c4ab52cc98221be63162cf\"\u003e\u003ccode\u003e74cb2b6\u003c/code\u003e\u003c/a\u003e Release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/05dab09fdde5bbf7d52f757c4dc62e0ba934cca8\"\u003e\u003ccode\u003e05dab09\u003c/code\u003e\u003c/a\u003e Format idna-data with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/90eac78b737d26613776b490432fc6d926b15c55\"\u003e\u003ccode\u003e90eac78\u003c/code\u003e\u003c/a\u003e Apply ruff formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a31ce7ecc0b767e40abb5ce28744ac567b73f366\"\u003e\u003ccode\u003ea31ce7e\u003c/code\u003e\u003c/a\u003e Remove errant test vectors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/81f03334211c78c1832991ce70ebafb3cbfbb79c\"\u003e\u003ccode\u003e81f0333\u003c/code\u003e\u003c/a\u003e Omit vectors known to be broken in test suite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a0f32578c0cac28c7ffbb4c860c92eb2b9b579bd\"\u003e\u003ccode\u003ea0f3257\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into unicode-16-uts46-changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/38d98860e6a1ab92fd35ab09ea4739feabf339a3\"\u003e\u003ccode\u003e38d9886\u003c/code\u003e\u003c/a\u003e Remove extra UTS46 test vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kjd/idna/compare/v3.10...v3.11\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jellyfish` from 1.2.0 to 1.2.1\n\nUpdates `markdown-it-py` from 3.0.0 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/executablebooks/markdown-it-py/releases\"\u003emarkdown-it-py's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eThis primarily drops support for Python 3.8 and 3.9, adds support for Python 3.13,\nand updates the parser to comply with Commonmark 0.31.2 and Markdown-It v14.1.0.\u003c/p\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Drop Python 3.8, test 3.13 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/342\"\u003eexecutablebooks/markdown-it-py#342\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Drop support for Python 3.9 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/360\"\u003eexecutablebooks/markdown-it-py#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Comply with Commonmark 0.31.2 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/362\"\u003eexecutablebooks/markdown-it-py#362\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Improve performance of \u0026quot;text\u0026quot; inline rule by \u003ca href=\"https://github.com/hukkin\"\u003e\u003ccode\u003e@​hukkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/347\"\u003eexecutablebooks/markdown-it-py#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Use \u003ccode\u003estr.removesuffix\u003c/code\u003e by \u003ca href=\"https://github.com/hukkin\"\u003e\u003ccode\u003e@​hukkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/348\"\u003eexecutablebooks/markdown-it-py#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 limit the number of autocompleted cells in a table by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/364\"\u003eexecutablebooks/markdown-it-py#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 fix quadratic complexity in reference parser by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/367\"\u003eexecutablebooks/markdown-it-py#367\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix emphasis inside raw links bugs by \u003ca href=\"https://github.com/tsutsu3\"\u003e\u003ccode\u003e@​tsutsu3\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/320\"\u003eexecutablebooks/markdown-it-py#320\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔧 Replace black and isort with ruff formatter by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/313\"\u003eexecutablebooks/markdown-it-py#313\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Fixed Code Style paragraph still referring to flake8 by \u003ca href=\"https://github.com/venthur\"\u003e\u003ccode\u003e@​venthur\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/309\"\u003eexecutablebooks/markdown-it-py#309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Add \u0026quot;store_labels\u0026quot; to OptionsType by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/343\"\u003eexecutablebooks/markdown-it-py#343\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Move \u003ccode\u003ecode_style\u003c/code\u003e to dependency group by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/344\"\u003eexecutablebooks/markdown-it-py#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Update codecov action by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/345\"\u003eexecutablebooks/markdown-it-py#345\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Update pre-commit and upload-artifact by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/359\"\u003eexecutablebooks/markdown-it-py#359\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Improve spec update script by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/361\"\u003eexecutablebooks/markdown-it-py#361\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 simplify logic in scanDelims by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/365\"\u003eexecutablebooks/markdown-it-py#365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Add CI testing for Python 3.12 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/303\"\u003eexecutablebooks/markdown-it-py#303\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Fix codecov by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/332\"\u003eexecutablebooks/markdown-it-py#332\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📚 Fix typo by \u003ca href=\"https://github.com/bwagner\"\u003e\u003ccode\u003e@​bwagner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/315\"\u003eexecutablebooks/markdown-it-py#315\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix RTD build by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/322\"\u003eexecutablebooks/markdown-it-py#322\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Fix a few old URLs by \u003ca href=\"https://github.com/elijahgreenstein\"\u003e\u003ccode\u003e@​elijahgreenstein\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/358\"\u003eexecutablebooks/markdown-it-py#358\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Improve README by \u003ca href=\"https://github.com/mrmurilo75\"\u003e\u003ccode\u003e@​mrmurilo75\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/340\"\u003eexecutablebooks/markdown-it-py#340\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix CI badge link by \u003ca href=\"https://github.com/tsutsu3\"\u003e\u003ccode\u003e@​tsutsu3\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/291\"\u003eexecutablebooks/markdown-it-py#291\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Update docs by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/292\"\u003eexecutablebooks/markdown-it-py#292\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Add icon to readme by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/293\"\u003eexecutablebooks/markdown-it-py#293\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Update icon by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/294\"\u003eexecutablebooks/markdown-it-py#294\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Clarify docs regarding security configuration by \u003ca href=\"https://github.com/djramones\"\u003e\u003ccode\u003e@​djramones\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/296\"\u003eexecutablebooks/markdown-it-py#296\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix the RTD build by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/311\"\u003eexecutablebooks/markdown-it-py#311\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Fix typos by \u003ca href=\"https://github.com/elijahgreenstein\"\u003e\u003ccode\u003e@​elijahgreenstein\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/366\"\u003eexecutablebooks/markdown-it-py#366\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/executablebooks/markdown-it-py/blob/master/CHANGELOG.md\"\u003emarkdown-it-py's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.0 - 2024-08-10\u003c/h2\u003e\n\u003cp\u003eThis primarily drops support for Python 3.9, adds support for Python 3.13,\nand updates the parser to comply with Commonmark 0.31.2 and Markdown-It v14.1.0.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Drop support for Python 3.9 in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/360\"\u003e#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Comply with Commonmark 0.31.2 in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/362\"\u003e#362\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve performance of \u0026quot;text\u0026quot; inline rule in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/347\"\u003e#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Use \u003ccode\u003estr.removesuffix\u003c/code\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/348\"\u003e#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 limit the number of autocompleted cells in a table in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/364\"\u003e#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 fix quadratic complexity in reference parser in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/367\"\u003e#367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 Fix emphasis inside raw links bugs in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/320\"\u003e#320\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.0\"\u003ehttps://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.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/executablebooks/markdown-it-py/commit/c62983f1554124391b47170180e6c62df4d476ca\"\u003e\u003ccode\u003ec62983f\u003c/code\u003e\u003c/a\u003e 🚀 RELEASE v4.0.0 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/368\"\u003e#368\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/9e93bd554147ffb8582581e14620c7611103d2ff\"\u003e\u003ccode\u003e9e93bd5\u003c/code\u003e\u003c/a\u003e 👌 fix quadratic complexity in reference parser (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/367\"\u003e#367\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/da45c8764b2077425c091fa1811bbb1c5f211bd1\"\u003e\u003ccode\u003eda45c87\u003c/code\u003e\u003c/a\u003e 📚 DOCS: Fix typos (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/366\"\u003e#366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/87b16e272bf8207182084e07a63253b98fc437d7\"\u003e\u003ccode\u003e87b16e2\u003c/code\u003e\u003c/a\u003e 🔧 simplify logic in scanDelims (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/365\"\u003e#365\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/e4009641db528444b85d384af815e9cad997a016\"\u003e\u003ccode\u003ee400964\u003c/code\u003e\u003c/a\u003e 👌 limit the number of autocompleted cells in a table (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/364\"\u003e#364\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/4535d77edcb5f51450a266135687eeae8bcc5033\"\u003e\u003ccode\u003e4535d77\u003c/code\u003e\u003c/a\u003e ⬆️ Comply with Commonmark 0.31.2 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/8eb20ac1cb63e09dcd78e84a0c71dab8446bb73c\"\u003e\u003ccode\u003e8eb20ac\u003c/code\u003e\u003c/a\u003e 🔧 Improve spec update script (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/361\"\u003e#361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/fb9d3ab646e4f752dc8fd52e1dd7613c350ff190\"\u003e\u003ccode\u003efb9d3ab\u003c/code\u003e\u003c/a\u003e ⬆️ Drop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/360\"\u003e#360\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/9ffe841832d33264201aaff120349f001a02953a\"\u003e\u003ccode\u003e9ffe841\u003c/code\u003e\u003c/a\u003e 📚 DOCS: Fix a few old URLs (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/358\"\u003e#358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/154fe43feb17947e2c933d0bb3e26618129909a8\"\u003e\u003ccode\u003e154fe43\u003c/code\u003e\u003c/a\u003e 🔧 Update pre-commit and upload-artifact (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `numpy` from 2.2.5 to 2.4.1\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.1 (Jan 10, 2026)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.4.1 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.4.1 is a patch release that fixes bugs discoved after the\n2.4.0 release. In particular, the typo \u003ccode\u003eSeedlessSequence\u003c/code\u003e is preserved to\nenable wheels using the random Cython API and built against NumPy \u0026lt; 2.4.0\nto run without errors.\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 9 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\u003eAlexander Shadchin\u003c/li\u003e\n\u003cli\u003eBill Tompkins +\u003c/li\u003e\n\u003cli\u003eCharles Harris\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eMarten van Kerkwijk\u003c/li\u003e\n\u003cli\u003eNathan Goldbaum\u003c/li\u003e\n\u003cli\u003eRaghuveer Devulapalli\u003c/li\u003e\n\u003cli\u003eRalf Gommers\u003c/li\u003e\n\u003cli\u003eSebastian Berg\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ePull requests merged\u003c/h2\u003e\n\u003cp\u003eA total of 15 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/30490\"\u003e#30490\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/30503\"\u003e#30503\u003c/a\u003e: DOC: \u003ccode\u003enumpy.select\u003c/code\u003e: fix \u003ccode\u003edefault\u003c/code\u003e parameter docstring...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30504\"\u003e#30504\u003c/a\u003e: REV: Revert part of \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30164\"\u003e#30164\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30500\"\u003e#30500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30506\"\u003e#30506\u003c/a\u003e: TYP: \u003ccode\u003enumpy.select\u003c/code\u003e: allow passing array-like \u003ccode\u003edefault\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30507\"\u003e#30507\u003c/a\u003e: MNT: use if constexpr for compile-time branch selection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30513\"\u003e#30513\u003c/a\u003e: BUG: Fix leak in flat assignment iterator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30516\"\u003e#30516\u003c/a\u003e: BUG: fix heap overflow in fixed-width string multiply (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30511\"\u003e#30511\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30523\"\u003e#30523\u003c/a\u003e: BUG: Ensure summed weights returned by np.average always are...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30527\"\u003e#30527\u003c/a\u003e: TYP: Fix return type of histogram2d\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30594\"\u003e#30594\u003c/a\u003e: MAINT: avoid passing ints to random functions that take double...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30595\"\u003e#30595\u003c/a\u003e: BLD: Avoiding conflict with pygit2 for static build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30596\"\u003e#30596\u003c/a\u003e: MAINT: Fix msvccompiler missing error on FreeBSD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30608\"\u003e#30608\u003c/a\u003e: BLD: update vendored Meson to 1.9.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30620\"\u003e#30620\u003c/a\u003e: ENH: use more fine-grained critical sections in array coercion...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30623\"\u003e#30623\u003c/a\u003e: BUG: Undo result type change of quantile/percentile but keep...\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.4.0 (Dec 20, 2025)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.4.0 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.4.0 release continues the work to improve free threaded Python\nsupport, user dtypes implementation, and annotations. There are many expired\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst\"\u003enumpy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eThis is a walkthrough of the NumPy 2.4.0 release on Linux, which will be the\nfirst feature release using the \u003ccode\u003enumpy/numpy-release \u0026lt;https://github.com/numpy/numpy-release\u0026gt;\u003c/code\u003e__ repository.\u003c/p\u003e\n\u003cp\u003eThe comm...\n\n_Description has been truncated_","html_url":"https://github.com/reichlab/cladetime/pull/188","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/reichlab%2Fcladetime/issues/188","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/188/packages"},{"uuid":"3793414951","node_id":"PR_kwDOEGPjt868JgB7","number":276,"state":"closed","title":"Bump the client-python group across 1 directory with 6 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-02-10T16:43:57.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-08T15:46:54.000Z","updated_at":"2026-02-10T16:43:59.000Z","time_to_close":2854623,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"client-python","update_count":6,"packages":[{"name":"sphinx","old_version":"7.1.2","new_version":"7.4.7","repository_url":"https://github.com/sphinx-doc/sphinx"},{"name":"sphinx-toolbox","old_version":"3.2.0b1","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"},{"name":"sphinx-markdown-builder","old_version":"0.5.5","new_version":"0.6.9","repository_url":"https://github.com/liran-funaro/sphinx-markdown-builder"},{"name":"pytest","old_version":"7.3.1","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"coverage","old_version":"6.5.0","new_version":"7.10.7","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"pytest-asyncio","old_version":"0.21.1","new_version":"1.2.0","repository_url":"https://github.com/pytest-dev/pytest-asyncio"}],"path":null,"ecosystem":"pip"},"body":"Bumps the client-python group with 6 updates in the /client/python directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [sphinx](https://github.com/sphinx-doc/sphinx) | `7.1.2` | `7.4.7` |\n| [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) | `3.2.0b1` | `4.1.1` |\n| [sphinx-markdown-builder](https://github.com/liran-funaro/sphinx-markdown-builder) | `0.5.5` | `0.6.9` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.3.1` | `8.4.2` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `6.5.0` | `7.10.7` |\n| [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) | `0.21.1` | `1.2.0` |\n\n\nUpdates `sphinx` from 7.1.2 to 7.4.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-doc/sphinx/releases\"\u003esphinx's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eSphinx 7.4.7\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.4.6\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.4.5\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.4.4\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.4.3\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.4.2\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.4.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.4.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.3.7\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.3.6\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.3.5\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.3.4\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.3.3\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.3.2\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.3.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.3.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.2.6\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-doc/sphinx/blob/v7.4.7/CHANGES.rst\"\u003esphinx's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease 7.4.7 (released Jul 20, 2024)\u003c/h1\u003e\n\u003ch2\u003eBugs fixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12096\"\u003e#12096\u003c/a\u003e: Warn when files are overwritten in the build directory.\nPatch by Adam Turner and Bénédikt Tran.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12620\"\u003e#12620\u003c/a\u003e: Ensure that old-style object description options are respected.\nPatch by Adam Turner.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12601\"\u003e#12601\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12625\"\u003e#12625\u003c/a\u003e: Support callable objects in :py:class:\u003ccode\u003e~typing.Annotated\u003c/code\u003e type\nmetadata in the Python domain.\nPatch by Adam Turner.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12601\"\u003e#12601\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12622\"\u003e#12622\u003c/a\u003e: Resolve :py:class:\u003ccode\u003e~typing.Annotated\u003c/code\u003e warnings with\n\u003ccode\u003esphinx.ext.autodoc\u003c/code\u003e,\nespecially when using :mod:\u003ccode\u003edataclasses\u003c/code\u003e as type metadata.\nPatch by Adam Turner.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12589\"\u003e#12589\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12626\"\u003e#12626\u003c/a\u003e: autosummary: Fix warnings with :rst:role:\u003ccode\u003e!autolink\u003c/code\u003e.\nPatch by Adam Turner.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease 7.4.6 (released Jul 18, 2024)\u003c/h1\u003e\n\u003ch2\u003eBugs fixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12589\"\u003e#12589\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/9743\"\u003e#9743\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12609\"\u003e#12609\u003c/a\u003e: autosummary: Do not add the package prefix when\ngenerating autosummary directives for modules within a package.\nPatch by Adam Turner.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12613\"\u003e#12613\u003c/a\u003e: Reduce log severity for ambiguity detection during inventory loading.\nPatch by James Addison.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease 7.4.5 (released Jul 16, 2024)\u003c/h1\u003e\n\u003ch2\u003eBugs fixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12593\"\u003e#12593\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12600\"\u003e#12600\u003c/a\u003e: Revert coercing the type of selected :confval:\u003ccode\u003ehtml_sidebars\u003c/code\u003e\nvalues to a list.\nLog an error message when string values are detected.\nPatch by Adam Turner.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12594\"\u003e#12594\u003c/a\u003e: LaTeX: since 7.4.0, :rst:dir:\u003ccode\u003eseealso\u003c/code\u003e and other \u0026quot;light\u0026quot; admonitions\nnow break PDF builds if they contain a :dudir:\u003ccode\u003efigure\u003c/code\u003e directive; and also\nif they are contained in a table cell (rendered by \u003ccode\u003etabulary\u003c/code\u003e).\nPatch by Jean-François B.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease 7.4.4 (released Jul 15, 2024)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/0d912c85fd3ec385432fe707f6a0678425d1e841\"\u003e\u003ccode\u003e0d912c8\u003c/code\u003e\u003c/a\u003e Bump to 7.4.7 final\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/bbc97e035720d96f617921dbd25022e121495b98\"\u003e\u003ccode\u003ebbc97e0\u003c/code\u003e\u003c/a\u003e autosummary: Filter invalid import prefixes in \u003ccode\u003eautolink\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12626\"\u003e#12626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/6c486a575c858b8b82d2580b76c410121663505f\"\u003e\u003ccode\u003e6c486a5\u003c/code\u003e\u003c/a\u003e Fix detecting file changes for the overwritten file warning (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12627\"\u003e#12627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/2bd973e7191c5bc382c1a92b37ab1f20268f42d6\"\u003e\u003ccode\u003e2bd973e\u003c/code\u003e\u003c/a\u003e autodoc: Fix warnings with dataclasses in \u003ccode\u003eAnnotated\u003c/code\u003e metadata (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12622\"\u003e#12622\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/dd77f851494d24d19aecf0328c6913d121b8b51c\"\u003e\u003ccode\u003edd77f85\u003c/code\u003e\u003c/a\u003e Support callables in \u003ccode\u003eAnnotated\u003c/code\u003e types (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12625\"\u003e#12625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/1ed4ca7e038364b3b10e3d36abb84ee034d4d94c\"\u003e\u003ccode\u003e1ed4ca7\u003c/code\u003e\u003c/a\u003e Mark \u003ccode\u003etest_build_manpage\u003c/code\u003e as XFAIL following changes in Docutils master\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/cd8ce07d31cfab61b6996cec1334681600dd3259\"\u003e\u003ccode\u003ecd8ce07\u003c/code\u003e\u003c/a\u003e Update message catalogues following reverted commits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/c6cd25f50dcc2a0bc369da80e75f105a4821d43b\"\u003e\u003ccode\u003ec6cd25f\u003c/code\u003e\u003c/a\u003e Partially revert \u0026quot;Update message catalogues (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/11626\"\u003e#11626\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/fa2ba7d5aeaff36aeb1a6c2f49846432fc932c7a\"\u003e\u003ccode\u003efa2ba7d\u003c/code\u003e\u003c/a\u003e Partially Revert \u0026quot;[bot]: Update message catalogues (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12563\"\u003e#12563\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/e439c6f33f8d8e7bc06b4f6f25dadfda74869ee0\"\u003e\u003ccode\u003ee439c6f\u003c/code\u003e\u003c/a\u003e Ensure that old-style object description options are respected (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12620\"\u003e#12620\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-doc/sphinx/compare/v7.1.2...v7.4.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-toolbox` from 3.2.0b1 to 4.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.1\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.1\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 4.0.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.0.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e📝 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e:octocat: repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🙋 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🏪 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 3.10.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/3.10.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e📝 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e:octocat: repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🙋 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🏪 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 3.9.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/3.9.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e📝 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e:octocat: repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🙋 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🏪 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003ch2\u003e4.0.0\u003c/h2\u003e\n\u003cp\u003eThe :mod:\u003ccode\u003esphinx_toolbox.source\u003c/code\u003e module no longer enables the :mod:\u003ccode\u003esphinx_toolbox.github\u003c/code\u003e extension automatically.\nIf you have :confval:\u003ccode\u003esource_link_target\u003c/code\u003e set to \u003ccode\u003e'GitHub'\u003c/code\u003e you may need to enable the extension manually.\u003c/p\u003e\n\u003ch2\u003e3.10.0\u003c/h2\u003e\n\u003cp\u003eAllow GitHub branch to be specified for :rst:dir:\u003ccode\u003einstallation\u003c/code\u003e directive.\u003c/p\u003e\n\u003ch2\u003e3.9.0\u003c/h2\u003e\n\u003cp\u003eImproved support for Sphinx 8.1+\u003c/p\u003e\n\u003ch2\u003e3.8.2\u003c/h2\u003e\n\u003cp\u003e(BUG) Fix GitHub issue title parsing.\u003c/p\u003e\n\u003ch2\u003e3.8.0\u003c/h2\u003e\n\u003cp\u003eImproved support for Sphinx 7.3+\u003c/p\u003e\n\u003ch2\u003e3.7.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd :class:\u003ccode\u003esphinx_toolbox.more_autodoc.variables.PropertyDocumenter\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUse sphinx's \u003ccode\u003eHTML5Translator\u003c/code\u003e over \u003ccode\u003eHTMLTranslator\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.6.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocumentation fixes in :mod:\u003ccode\u003e~.collapse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eDunder methods added in Python 3.13 are hidden by :mod:\u003ccode\u003e~.autoprotocol\u003c/code\u003e (\u003ccode\u003e__non_callable_proto_members__\u003c/code\u003e, \u003ccode\u003e__firstlineno__\u003c/code\u003e, \u003ccode\u003e__replace__\u003c/code\u003e, \u003ccode\u003e__static_attributes__\u003c/code\u003e)\u003c/li\u003e\n\u003cli\u003emod:\u003ccode\u003e~.autoprotocol\u003c/code\u003e doesn't document subclasses of protocols, unless :class:\u003ccode\u003e~.Protocol\u003c/code\u003e is one of their direct base classes.\u003c/li\u003e\n\u003cli\u003eSupport for Sphinx 7.x\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e3.5.0\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/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v3.2.0b1...v4.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-markdown-builder` from 0.5.5 to 0.6.9\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/liran-funaro/sphinx-markdown-builder/commits/0.6.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.3.1 to 8.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.2\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.2 (2025-09-03)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13478\"\u003e#13478\u003c/a\u003e: Fixed a crash when using \u003ccode\u003econsole_output_style\u003c/code\u003e{.interpreted-text role=\u0026quot;confval\u0026quot;} with \u003ccode\u003etimes\u003c/code\u003e and a module is skipped.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13530\"\u003e#13530\u003c/a\u003e: Fixed a crash when using \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and \u003ccode\u003edecimal.Decimal\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} instances with the \u003ccode\u003edecimal.FloatOperation\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} trap set.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13549\"\u003e#13549\u003c/a\u003e: No longer evaluate type annotations in Python \u003ccode\u003e3.14\u003c/code\u003e when inspecting function signatures.\u003c/p\u003e\n\u003cp\u003eThis prevents crashes during module collection when modules do not explicitly use \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e and import types for annotations within a \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13559\"\u003e#13559\u003c/a\u003e: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in \u003ccode\u003epytest.Parser.addini\u003c/code\u003e{.interpreted-text role=\u0026quot;meth\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13563\"\u003e#13563\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now only imports \u003ccode\u003enumpy\u003c/code\u003e if NumPy is already in \u003ccode\u003esys.modules\u003c/code\u003e. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13577\"\u003e#13577\u003c/a\u003e: Clarify that \u003ccode\u003epytest_generate_tests\u003c/code\u003e is discovered in test modules/classes; other hooks must be in \u003ccode\u003econftest.py\u003c/code\u003e or plugins.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13480\"\u003e#13480\u003c/a\u003e: Self-testing: fixed a few test failures when run with \u003ccode\u003e-Wdefault\u003c/code\u003e or a similar override.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13547\"\u003e#13547\u003c/a\u003e: Self-testing: corrected expected message for \u003ccode\u003etest_doctest_unexpected_exception\u003c/code\u003e in Python \u003ccode\u003e3.14\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13684\"\u003e#13684\u003c/a\u003e: Make pytest's own testsuite insensitive to the presence of the \u003ccode\u003eCI\u003c/code\u003e environment variable -- by \u003ccode\u003eogrisel\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.1 (2025-06-17)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13461\"\u003e#13461\u003c/a\u003e: Corrected \u003ccode\u003e_pytest.terminal.TerminalReporter.isatty\u003c/code\u003e to support\nbeing called as a method. Before it was just a boolean which could\nbreak correct code when using \u003ccode\u003e-o log_cli=true\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13477\"\u003e#13477\u003c/a\u003e: Reintroduced \u003ccode\u003epytest.PytestReturnNotNoneWarning\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which was removed by accident in pytest [8.4]{.title-ref}.\u003c/p\u003e\n\u003cp\u003eThis warning is raised when a test functions returns a value other than \u003ccode\u003eNone\u003c/code\u003e, which is often a mistake made by beginners.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ereturn-not-none\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13497\"\u003e#13497\u003c/a\u003e: Fixed compatibility with \u003ccode\u003eTwisted 25+\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e: Fixed outdated warning about \u003ccode\u003efaulthandler\u003c/code\u003e not working on Windows.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.0 (2025-06-02)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bfae4224fd554d3d7f2c277a4cc092b6ec6af3ae\"\u003e\u003ccode\u003ebfae422\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/89905381a163be30ae87d62e5f750e902d750c5f\"\u003e\u003ccode\u003e8990538\u003c/code\u003e\u003c/a\u003e Fix passenv CI in tox ini and make tests insensitive to the presence of the C...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ca676bfe005aebcb12f4146d1b0f1d2772e2cd5d\"\u003e\u003ccode\u003eca676bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13687\"\u003e#13687\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/e63f6e51c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/975a60a63ce385a44655596e254c1899feaa53e4\"\u003e\u003ccode\u003e975a60a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13686\"\u003e#13686\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/12bde8af6...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7723ce84b87ab08f86ddafcb342acc28ba5ec99d\"\u003e\u003ccode\u003e7723ce8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13683\"\u003e#13683\u003c/a\u003e from even-even/fix_Exeption_to_Exception_in_errorMe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7f05680d1301e0969b30bcb3c4b27433c9ee2b7\"\u003e\u003ccode\u003eb7f0568\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13685\"\u003e#13685\u003c/a\u003e from CoretexShadow/fix/docs-pytest-generate-tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2c94c4a6948ba53440818389298157fa5d5f94cd\"\u003e\u003ccode\u003e2c94c4a\u003c/code\u003e\u003c/a\u003e add missing colon (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13640\"\u003e#13640\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13641\"\u003e#13641\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c3d7684bc01c8c48d05145a30c5211ca8656c68c\"\u003e\u003ccode\u003ec3d7684\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13606\"\u003e#13606\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/5f9938563...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/dc6e3be2ddc75a149b6d102d9b7c82ee47a00cfa\"\u003e\u003ccode\u003edc6e3be\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13605\"\u003e#13605\u003c/a\u003e from The-Compiler/training-update-2025-07\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f87289c36c8dbe7740e3020f5546b6f8b0861ff0\"\u003e\u003ccode\u003ef87289c\u003c/code\u003e\u003c/a\u003e Fix crash with \u003ccode\u003etimes\u003c/code\u003e output style and skipped module (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13573\"\u003e#13573\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13579\"\u003e#13579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.3.1...8.4.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `coverage` from 6.5.0 to 7.10.7\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.10.7 — 2025-09-21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance: with branch coverage in large files, generating HTML, JSON, or\nLCOV reports could take far too long due to some quadratic behavior when\ncreating the function and class index pages.  This is now fixed, closing\n\u003ccode\u003eissue 2048\u003c/code\u003e_.  Thanks to Daniel Diniz for help diagnosing the problem.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eMost warnings and a few errors now have links to a page in the docs\nexplaining the specific message.  Closes \u003ccode\u003eissue 1921\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1921: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/1921\"\u003ecoveragepy/coveragepy#1921\u003c/a\u003e\n.. _issue 2048: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2048\"\u003ecoveragepy/coveragepy#2048\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-6:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.6 — 2025-08-29\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003esource\u003c/code\u003e directories were not properly communicated to subprocesses\nthat ran in different directories, as reported in \u003ccode\u003eissue 1499\u003c/code\u003e_.  This is now\nfixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance: \u003ccode\u003eAlex Gaynor continues fine-tuning \u0026lt;pull 2038_\u0026gt;\u003c/code\u003e_ the speed of\ncombination, especially with many contexts.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1499: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/1499\"\u003ecoveragepy/coveragepy#1499\u003c/a\u003e\n.. _pull 2038: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/pull/2038\"\u003ecoveragepy/coveragepy#2038\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-5:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.5 — 2025-08-23\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBig speed improvements for \u003ccode\u003ecoverage combine\u003c/code\u003e: it's now about twice as\nfast! Huge thanks to Alex Gaynor for pull requests \u003ccode\u003e2032 \u0026lt;pull 2032_\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e2033 \u0026lt;pull 2033_\u0026gt;\u003c/code\u003e\u003c/em\u003e, and \u003ccode\u003e2034 \u0026lt;pull 2034_\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _pull 2032: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/pull/2032\"\u003ecoveragepy/coveragepy#2032\u003c/a\u003e\n.. _pull 2033: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/pull/2033\"\u003ecoveragepy/coveragepy#2033\u003c/a\u003e\n.. _pull 2034: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/pull/2034\"\u003ecoveragepy/coveragepy#2034\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-4:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.4 — 2025-08-16\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/92a2af54e6bc948a9c536bd9b12bab70fb055904\"\u003e\u003ccode\u003e92a2af5\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.10.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/952afdaca658d5e1acdd533c727448a0b218caf0\"\u003e\u003ccode\u003e952afda\u003c/code\u003e\u003c/a\u003e docs: prep for 7.10.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/a301761e69da97b27662f395974d26f78fa8b2b5\"\u003e\u003ccode\u003ea301761\u003c/code\u003e\u003c/a\u003e build: riscv64 wheels (\u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2055\"\u003e#2055\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/5daff8d38786aa540ff9bec622eb3389f117f911\"\u003e\u003ccode\u003e5daff8d\u003c/code\u003e\u003c/a\u003e docs: now source is formatted with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/04bbc3acfd914fdd99ffec9873bc03bdc7329357\"\u003e\u003ccode\u003e04bbc3a\u003c/code\u003e\u003c/a\u003e docs: discuss cog in the contributing docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/c181b9315f59a81667da47cf3d760d0253872238\"\u003e\u003ccode\u003ec181b93\u003c/code\u003e\u003c/a\u003e build: use cog --check-fail-msg to instruct devs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/33c4ba196f49e0ee86ab0ff473c0876c0bacd5fa\"\u003e\u003ccode\u003e33c4ba1\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/0744b73b6b503ccf2cb75aba095c023672b921a8\"\u003e\u003ccode\u003e0744b73\u003c/code\u003e\u003c/a\u003e chore: bump the action-dependencies group across 1 directory with 2 updates (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/0d5a112fc54c1d5a07f3f2ec451779808902c9af\"\u003e\u003ccode\u003e0d5a112\u003c/code\u003e\u003c/a\u003e perf: bulk narrowing to avoid N**2. \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2048\"\u003e#2048\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/a868ed9269ca474748130f5c6360cd2aae66ffc8\"\u003e\u003ccode\u003ea868ed9\u003c/code\u003e\u003c/a\u003e docs: mention Python Discord on the index page\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/coveragepy/coveragepy/compare/6.5.0...7.10.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-asyncio` from 0.21.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/releases\"\u003epytest-asyncio's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epytest-asyncio 1.2.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/tree/1.2.0\"\u003e1.2.0\u003c/a\u003e - 2025-09-12\u003c/h1\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e--asyncio-debug\u003c/code\u003e CLI option and \u003ccode\u003easyncio_debug\u003c/code\u003e configuration option to enable asyncio debug mode for the default event loop. (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/980\"\u003e#980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eA \u003ccode\u003epytest.UsageError\u003c/code\u003e for invalid configuration values of \u003ccode\u003easyncio_default_fixture_loop_scope\u003c/code\u003e and \u003ccode\u003easyncio_default_test_loop_scope\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1189\"\u003e#1189\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompatibility with the Pyright type checker (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/731\"\u003e#731\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eRuntimeError: There is no current event loop in thread 'MainThread'\u003c/code\u003e when any test unsets the event loop (such as when using \u003ccode\u003easyncio.run\u003c/code\u003e and \u003ccode\u003easyncio.Runner\u003c/code\u003e). (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1177\"\u003e#1177\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDeprecation warning when decorating an asynchronous fixture with \u003ccode\u003e@pytest.fixture\u003c/code\u003e in [strict]{.title-ref} mode. The warning message now refers to the correct package. (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1198\"\u003e#1198\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNotes for Downstream Packagers\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump the minimum required version of tox to v4.28. This change is only relevant if you use the \u003ccode\u003etox.ini\u003c/code\u003e file provided by pytest-asyncio to run tests.\u003c/li\u003e\n\u003cli\u003eExtend dependency on typing-extensions\u0026gt;=4.12 from Python\u0026lt;3.10 to Python\u0026lt;3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epytest-asyncio 1.1.1\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/tree/v1.1.1\"\u003ev1.1.1\u003c/a\u003e - 2025-09-12\u003c/h1\u003e\n\u003ch2\u003eNotes for Downstream Packagers\u003c/h2\u003e\n\u003cp\u003e- Addresses a build problem with setuptoos-scm \u0026gt;= 9 caused by invalid setuptools-scm configuration in pytest-asyncio. (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1192\"\u003e#1192\u003c/a\u003e)\u003c/p\u003e\n\u003ch2\u003epytest-asyncio 1.1.0\u003c/h2\u003e\n\u003ch1\u003eAdded\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ePropagation of ContextVars from async fixtures to other fixtures and tests on Python 3.10 and older (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCancellation of tasks when the \u003ccode\u003eloop_scope\u003c/code\u003e ends (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/200\"\u003e#200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eWarning when the current event loop is closed by a test\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eFixed\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eError about missing loop when calling functions requiring a loop in the \u003ccode\u003efinally\u003c/code\u003e clause of a task (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/878\"\u003e#878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAn error that could cause duplicate warnings to be issued\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eNotes for Downstream Packagers\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded runtime dependency on \u003ca href=\"https://pypi.org/project/backports.asyncio.runner/\"\u003ebackports.asyncio.runner\u003c/a\u003e for use with Python 3.10 and older\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epytest-asyncio 1.1.0a1\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/tree/1.1.0a1\"\u003e1.1.0a1\u003c/a\u003e - 2025-06-30\u003c/h1\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePropagation of ContextVars from async fixtures to other fixtures and tests on Python 3.10 and older  (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCancellation of tasks when the \u003cem\u003eloop_scope\u003c/em\u003e ends   (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/200\"\u003e#200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eWarning when the current event loop is closed by a test\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\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-asyncio/commit/0d3988f5adc16e8b364266c9ecda42a36d5892ff\"\u003e\u003ccode\u003e0d3988f\u003c/code\u003e\u003c/a\u003e ci: Create GitHub release before publishing to PyPI.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/07c5a0b3e0bb99c7592ab87ed17a4bb2966fdf6a\"\u003e\u003ccode\u003e07c5a0b\u003c/code\u003e\u003c/a\u003e docs: Include orphaned news fragment in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/be24582b86375b761534639be6c2941d0b3f116c\"\u003e\u003ccode\u003ebe24582\u003c/code\u003e\u003c/a\u003e chore: Prepare release of v1.2.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/7aeb296b9f95e57c371734dcb1d3ece3f7c81727\"\u003e\u003ccode\u003e7aeb296\u003c/code\u003e\u003c/a\u003e docs: Streamline news fragments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/7b8311cf1d2f67931f4fd9bbbe6d9f3b09572ebb\"\u003e\u003ccode\u003e7b8311c\u003c/code\u003e\u003c/a\u003e ci: Fixes a bug that prevented SSH signature from being stripped from release...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/9d4c2bd8770d4073e015213373975f217d3ac8f5\"\u003e\u003ccode\u003e9d4c2bd\u003c/code\u003e\u003c/a\u003e docs: Add changelog entry for Pyright compatibility.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/94f6106ea0c7ee716d7cf85377c653baa9cb7cd9\"\u003e\u003ccode\u003e94f6106\u003c/code\u003e\u003c/a\u003e test: Added tests which assert that the event loop is reinstated if unset by ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/df61991f1805f45ab31ae2d2fb73a54ff25ccd0c\"\u003e\u003ccode\u003edf61991\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/f1f7941691ff506ab553dfd6d00b09e8213eeff7\"\u003e\u003ccode\u003ef1f7941\u003c/code\u003e\u003c/a\u003e Build(deps): Bump pytest from 8.4.1 to 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/c77d3d38f7adb41f5f6ea7b002da4e0f480c5c24\"\u003e\u003ccode\u003ec77d3d3\u003c/code\u003e\u003c/a\u003e Build(deps): Bump twine from 6.1.0 to 6.2.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/compare/v0.21.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/justinas-marozas/armada/pull/276","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/justinas-marozas%2Farmada/issues/276","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/276/packages"},{"uuid":"3784031341","node_id":"PR_kwDOJjWlhM67qe4Q","number":865,"state":"closed","title":"MAINT: Bump the docs-deps group across 1 directory with 3 updates","user":"dependabot[bot]","labels":["dependencies","maintenance"],"assignees":["pyansys-ci-bot"],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-08T07:09:57.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-06T07:10:22.000Z","updated_at":"2026-01-08T07:09:59.000Z","time_to_close":172775,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"MAINT: Bump","group_name":"docs-deps","update_count":3,"packages":[{"name":"sphinx","old_version":"8.2.3","new_version":"9.1.0","repository_url":"https://github.com/sphinx-doc/sphinx"},{"name":"sphinx-autodoc-typehints","old_version":"3.1.0","new_version":"3.6.2","repository_url":"https://github.com/tox-dev/sphinx-autodoc-typehints"},{"name":"sphinx-toolbox","old_version":"4.1.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps the docs-deps group with 3 updates in the / directory: [sphinx](https://github.com/sphinx-doc/sphinx), [sphinx-autodoc-typehints](https://github.com/tox-dev/sphinx-autodoc-typehints) and [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox).\n\nUpdates `sphinx` from 8.2.3 to 9.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-doc/sphinx/releases\"\u003esphinx's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eSphinx 9.1.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eDependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14153\"\u003e#14153\u003c/a\u003e: Drop Python 3.11 support.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12555\"\u003e#12555\u003c/a\u003e: Drop Docutils 0.20 support.\nPatch by Adam Turner\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures added\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eadd_static_dir()\u003c/code\u003e for copying static\nassets from extensions to the build output.\nPatch by Jared Dillard\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugs fixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14189\"\u003e#14189\u003c/a\u003e: autodoc: Fix duplicate \u003ccode\u003e:no-index-entry:\u003c/code\u003e for modules.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/13713\"\u003e#13713\u003c/a\u003e: Fix compatibility with MyST-Parser.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003eFix tests for Python 3.15.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14089\"\u003e#14089\u003c/a\u003e: autodoc: Fix default option parsing.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003eRemove incorrect static typing assertions.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14050\"\u003e#14050\u003c/a\u003e: LaTeXTranslator fails to build documents using the \u0026quot;acronym\u0026quot;\nstandard role.\nPatch by Günter Milde\u003c/li\u003e\n\u003cli\u003eLaTeX: Fix rendering for grid filled merged vertical cell.\nPatch by Tim Nordell\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14228\"\u003e#14228\u003c/a\u003e: LaTeX: Fix overrun footer for cases of merged vertical table cells.\nPatch by Tim Nordell\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14207\"\u003e#14207\u003c/a\u003e: Fix creating \u003ccode\u003eHTMLThemeFactory\u003c/code\u003e objects in third-party extensions.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/3099\"\u003e#3099\u003c/a\u003e: LaTeX: PDF build crashes if a code-block contains more than\ncirca 1350 codelines (about 27 a4-sized pages at default pointsize).\nPatch by Jean-François B.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14064\"\u003e#14064\u003c/a\u003e: LaTeX: TABs ending up in sphinxVerbatim fail to obey tab stops.\nPatch by Jean-François B.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14089\"\u003e#14089\u003c/a\u003e: autodoc: Improve support for non-weakreferencable objects.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003eLaTeX: Fix accidental removal at \u003ccode\u003e3.5.0\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/8854\"\u003e#8854\u003c/a\u003e) of the documentation of\n\u003ccode\u003eliteralblockcappos\u003c/code\u003e key of  sphinxsetup.\nPatch by Jean-François B.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- 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/sphinx-doc/sphinx/blob/master/CHANGES.rst\"\u003esphinx's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease 9.1.0 (released Dec 31, 2025)\u003c/h1\u003e\n\u003ch2\u003eDependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14153\"\u003e#14153\u003c/a\u003e: Drop Python 3.11 support.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12555\"\u003e#12555\u003c/a\u003e: Drop Docutils 0.20 support.\nPatch by Adam Turner\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures added\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd :meth:\u003ccode\u003e~sphinx.application.Sphinx.add_static_dir\u003c/code\u003e for copying static\nassets from extensions to the build output.\nPatch by Jared Dillard\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugs fixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14189\"\u003e#14189\u003c/a\u003e: autodoc: Fix duplicate \u003ccode\u003e:no-index-entry:\u003c/code\u003e for modules.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/13713\"\u003e#13713\u003c/a\u003e: Fix compatibility with MyST-Parser.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003eFix tests for Python 3.15.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14089\"\u003e#14089\u003c/a\u003e: autodoc: Fix default option parsing.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003eRemove incorrect static typing assertions.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14050\"\u003e#14050\u003c/a\u003e: LaTeXTranslator fails to build documents using the \u0026quot;acronym\u0026quot;\nstandard role.\nPatch by Günter Milde\u003c/li\u003e\n\u003cli\u003eLaTeX: Fix rendering for grid filled merged vertical cell.\nPatch by Tim Nordell\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14228\"\u003e#14228\u003c/a\u003e: LaTeX: Fix overrun footer for cases of merged vertical table cells.\nPatch by Tim Nordell\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14207\"\u003e#14207\u003c/a\u003e: Fix creating \u003ccode\u003eHTMLThemeFactory\u003c/code\u003e objects in third-party extensions.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/3099\"\u003e#3099\u003c/a\u003e: LaTeX: PDF build crashes if a code-block contains more than\ncirca 1350 codelines (about 27 a4-sized pages at default pointsize).\nPatch by Jean-François B.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14064\"\u003e#14064\u003c/a\u003e: LaTeX: TABs ending up in sphinxVerbatim fail to obey tab stops.\nPatch by Jean-François B.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14089\"\u003e#14089\u003c/a\u003e: autodoc: Improve support for non-weakreferencable objects.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003eLaTeX: Fix accidental removal at \u003ccode\u003e3.5.0\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/8854\"\u003e#8854\u003c/a\u003e) of the documentation of\n\u003ccode\u003eliteralblockcappos\u003c/code\u003e key of  :ref:\u003ccode\u003e'sphinxsetup' \u0026lt;latexsphinxsetup\u0026gt;\u003c/code\u003e.\nPatch by Jean-François B.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/cc7c6f435ad37bb12264f8118c8461b230e6830c\"\u003e\u003ccode\u003ecc7c6f4\u003c/code\u003e\u003c/a\u003e Bump to 9.1.0 final\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/b127b9478aa4654a82eeadf1a1e89715d3927608\"\u003e\u003ccode\u003eb127b94\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eapp.add_static_dir()\u003c/code\u003e for copying extension static files (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14219\"\u003e#14219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/20f1c46790d370b50fa7396cca3e1cc658ce9f89\"\u003e\u003ccode\u003e20f1c46\u003c/code\u003e\u003c/a\u003e LaTeX: Inhibit breaks for rows with merged vertical cells (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14227\"\u003e#14227\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/3c85411fd06a1c3026f7991818312e5358ef52e5\"\u003e\u003ccode\u003e3c85411\u003c/code\u003e\u003c/a\u003e Polish CHANGES.rst (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14225\"\u003e#14225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/9ee5446c6cfb997a6b92f5cfb84d045ec947417a\"\u003e\u003ccode\u003e9ee5446\u003c/code\u003e\u003c/a\u003e LaTeX: restore 1.7 documentation of literalblockcappos (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14224\"\u003e#14224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/d75d602005be7567abc7741ee777f6f8c302d827\"\u003e\u003ccode\u003ed75d602\u003c/code\u003e\u003c/a\u003e LaTeX: improve (again...) some code comments in time for 9.1.0 (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14222\"\u003e#14222\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/8dca61d69a4a05c56702980e4f6cbe6451dd9ebc\"\u003e\u003ccode\u003e8dca61d\u003c/code\u003e\u003c/a\u003e Improve some LaTeX code comments (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14220\"\u003e#14220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/8ab960098a8e12b8893bd3ceafc394759118346b\"\u003e\u003ccode\u003e8ab9600\u003c/code\u003e\u003c/a\u003e Bump to 9.1.0 candidate 2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/d59b2375945ed04414a11b0adb3e5655525f3e9e\"\u003e\u003ccode\u003ed59b237\u003c/code\u003e\u003c/a\u003e autodoc: Improve support for non-weakreferencable objects\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/964424b3dbc92ed1718272fd45123878f3eec14d\"\u003e\u003ccode\u003e964424b\u003c/code\u003e\u003c/a\u003e Use the correct reference for using existing extensions (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14157\"\u003e#14157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-doc/sphinx/compare/v8.2.3...v9.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-autodoc-typehints` from 3.1.0 to 3.6.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/releases\"\u003esphinx-autodoc-typehints's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.6.2\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix compatibility with 9.1.0 by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/pull/595\"\u003etox-dev/sphinx-autodoc-typehints#595\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.6.1...3.6.2\"\u003ehttps://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.6.1...3.6.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.6.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eInclude metadata in type hints by \u003ca href=\"https://github.com/AllanChain\"\u003e\u003ccode\u003e@​AllanChain\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/pull/594\"\u003etox-dev/sphinx-autodoc-typehints#594\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/AllanChain\"\u003e\u003ccode\u003e@​AllanChain\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/pull/594\"\u003etox-dev/sphinx-autodoc-typehints#594\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.6.0...3.6.1\"\u003ehttps://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.6.0...3.6.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.6.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUse Sphinx 9 class interface by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/pull/589\"\u003etox-dev/sphinx-autodoc-typehints#589\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.5.2...3.6.0\"\u003ehttps://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.5.2...3.6.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.5.2\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreserve type information from docstrings if no type annotation is present and parameter has default value. by \u003ca href=\"https://github.com/christianaguilera-foundry\"\u003e\u003ccode\u003e@​christianaguilera-foundry\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/pull/576\"\u003etox-dev/sphinx-autodoc-typehints#576\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/christianaguilera-foundry\"\u003e\u003ccode\u003e@​christianaguilera-foundry\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/pull/576\"\u003etox-dev/sphinx-autodoc-typehints#576\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.5.1...3.5.2\"\u003ehttps://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.5.1...3.5.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.5.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDeclare 3.14 support by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/pull/571\"\u003etox-dev/sphinx-autodoc-typehints#571\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.5.0...3.5.1\"\u003ehttps://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.5.0...3.5.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.5.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/c9ee0e399767a83909ac00a0f912d1031b6ab260\"\u003e\u003ccode\u003ec9ee0e3\u003c/code\u003e\u003c/a\u003e Fix compatibility with 9.1.0 (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/595\"\u003e#595\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/65ad3c43111a5eea6bbaec6803c9a1bcf78cdb6c\"\u003e\u003ccode\u003e65ad3c4\u003c/code\u003e\u003c/a\u003e Include metadata in type hints (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/594\"\u003e#594\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/3501b47ca738726f704f41e795caeaa5ff8123a9\"\u003e\u003ccode\u003e3501b47\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/593\"\u003e#593\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/136044f097480713d11083ad0a09d0c3f59b42aa\"\u003e\u003ccode\u003e136044f\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/592\"\u003e#592\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/9e7037ff0c9b26215bccd5434c46e42e7b56ed94\"\u003e\u003ccode\u003e9e7037f\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/591\"\u003e#591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/1289a796eae8e0fcf572071444f06841db352653\"\u003e\u003ccode\u003e1289a79\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/590\"\u003e#590\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/7abd95a25ac65bfabab68e1fcb71beb7b5d9f832\"\u003e\u003ccode\u003e7abd95a\u003c/code\u003e\u003c/a\u003e Use Sphinx 9 class interface (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/589\"\u003e#589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/52114b2408a605fa53877a926b471cf317954c65\"\u003e\u003ccode\u003e52114b2\u003c/code\u003e\u003c/a\u003e Support Sphinx 9+ (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/587\"\u003e#587\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/78f49cd27cfb0954f20f275b90ade63e495bc370\"\u003e\u003ccode\u003e78f49cd\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/585\"\u003e#585\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/00a035bdab3395becf1c6faf13c7a55a83243b81\"\u003e\u003ccode\u003e00a035b\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/584\"\u003e#584\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.1.0...3.6.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-toolbox` from 4.1.0 to 4.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.1\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.1\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.1.0...v4.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/ansys/pyadditive/pull/865","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansys%2Fpyadditive/issues/865","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/865/packages"},{"uuid":"3776160708","node_id":"PR_kwDOEzpkRM67Rnvi","number":1668,"state":"closed","title":"Build(deps): Bump the minor-and-patch group across 1 directory with 3 updates","user":"dependabot[bot]","labels":["dependencies","python:uv"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-01-05T11:17:51.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-02T11:18:58.000Z","updated_at":"2026-01-05T11:17:52.000Z","time_to_close":259133,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Build(deps): Bump","group_name":"minor-and-patch","update_count":3,"packages":[{"name":"psutil","old_version":"7.1.3","new_version":"7.2.1","repository_url":"https://github.com/giampaolo/psutil"},{"name":"pillow","old_version":"12.0.0","new_version":"12.1.0","repository_url":"https://github.com/python-pillow/Pillow"},{"name":"sphinx-toolbox","old_version":"4.1.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-and-patch group with 3 updates in the / directory: [psutil](https://github.com/giampaolo/psutil), [pillow](https://github.com/python-pillow/Pillow) and [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox).\n\nUpdates `psutil` from 7.1.3 to 7.2.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/giampaolo/psutil/blob/master/HISTORY.rst\"\u003epsutil's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e7.2.1\u003c/h1\u003e\n\u003cp\u003e2025-12-29\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2699_, [FreeBSD], [NetBSD]: \u003ccode\u003eheap_info()\u003c/code\u003e_ does not detect small allocations\n(\u0026lt;= 1K). In order to fix that, we now flush internal jemalloc cache before\nfetching the metrics.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e7.2.0\u003c/h1\u003e\n\u003cp\u003e2025-12-23\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eEnhancements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e1275_: new \u003ccode\u003eheap_info()\u003c/code\u003e_ and \u003ccode\u003eheap_trim()\u003c/code\u003e_ functions, providing direct\naccess to the platform's native C heap allocator (glibc, mimalloc,\nlibmalloc). Useful to create tools to detect memory leaks.\u003c/li\u003e\n\u003cli\u003e2403_, [Linux]: publish wheels for Linux musl.\u003c/li\u003e\n\u003cli\u003e2680_: unit tests are no longer installed / part of the distribution. They\nnow live under \u003ccode\u003etests/\u003c/code\u003e instead of \u003ccode\u003epsutil/tests\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2684_, [FreeBSD], [critical]: compilation fails on FreeBSD 14 due to missing\ninclude.\u003c/li\u003e\n\u003cli\u003e2691_, [Windows]: fix memory leak in \u003ccode\u003enet_if_stats()\u003c/code\u003e_ due to missing\n\u003ccode\u003ePy_CLEAR\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eCompatibility notes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2680_: \u003ccode\u003eimport psutil.tests\u003c/code\u003e no longer works (but it was never documented to\nbegin with).\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/6130c19da2d01383befa0dfca2371a792f8881af\"\u003e\u003ccode\u003e6130c19\u003c/code\u003e\u003c/a\u003e Fix \u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2699\"\u003e#2699\u003c/a\u003e / BSD: flush internal jemalloc cache before returning metrics.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/899ee4efa9c1943de14a5818853b6dc9c019eb4f\"\u003e\u003ccode\u003e899ee4e\u003c/code\u003e\u003c/a\u003e Mention psleak\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/704e218db7da14e98a54f2aa9f93372d5900e0b4\"\u003e\u003ccode\u003e704e218\u003c/code\u003e\u003c/a\u003e Pre-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/1a946cfe738045cecf031222cd5078da21946af4\"\u003e\u003ccode\u003e1a946cf\u003c/code\u003e\u003c/a\u003e Take psleak from PYPI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/5085421cabed317d5e2f7164e6072b0be05ba4f1\"\u003e\u003ccode\u003e5085421\u003c/code\u003e\u003c/a\u003e Use external psleak module for memleak tests (\u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2698\"\u003e#2698\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/ac56e6ad0b7c08755a5542afdacb668ad164fd09\"\u003e\u003ccode\u003eac56e6a\u003c/code\u003e\u003c/a\u003e CI: don't cancel CI in progress on 1st failure\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/10fe3d5e9372a504167b0a4df440ab949c0410fe\"\u003e\u003ccode\u003e10fe3d5\u003c/code\u003e\u003c/a\u003e Merge branch 'master' of github.com:giampaolo/psutil\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/ba507bd26bbfe5d1bdc45d606c8979f9e6f632cb\"\u003e\u003ccode\u003eba507bd\u003c/code\u003e\u003c/a\u003e Fix various CI errors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/d5a1398f0860c04883ef881c4760f32d14ef4abf\"\u003e\u003ccode\u003ed5a1398\u003c/code\u003e\u003c/a\u003e Update cpu_count docs: clarify differences from os.cpu_count (\u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2696\"\u003e#2696\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/556158f55fc3b2f1271b48c66c46912323cf8bec\"\u003e\u003ccode\u003e556158f\u003c/code\u003e\u003c/a\u003e Refact memleak.py\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/giampaolo/psutil/compare/release-7.1.3...release-7.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pillow` from 12.0.0 to 12.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python-pillow/Pillow/releases\"\u003epillow's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e12.1.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://pillow.readthedocs.io/en/stable/releasenotes/12.1.0.html\"\u003ehttps://pillow.readthedocs.io/en/stable/releasenotes/12.1.0.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eDeprecations\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate getdata(), in favour of new get_flattened_data() \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9292\"\u003e#9292\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSpecify APNG duration type when opening \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9368\"\u003e#9368\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eAdded release notes for \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9350\"\u003e#9350\u003c/a\u003e \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9366\"\u003e#9366\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdate ImageMorph documentation \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9349\"\u003e#9349\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eDocs: update major bump cadence \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9334\"\u003e#9334\u003c/a\u003e [\u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eAdd release notes for \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9070\"\u003e#9070\u003c/a\u003e \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9320\"\u003e#9320\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdated Ubuntu version \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9306\"\u003e#9306\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdate macOS tested Pillow versions \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9265\"\u003e#9265\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate harfbuzz to 12.3.0 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9355\"\u003e#9355\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdate xz to 5.8.2 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9343\"\u003e#9343\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdated libjpeg-turbo to 3.1.3 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9333\"\u003e#9333\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdated zlib-ng to 2.3.2 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9324\"\u003e#9324\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdated libpng to 1.6.53 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9325\"\u003e#9325\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdate actions/checkout action to v6 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9323\"\u003e#9323\u003c/a\u003e [@\u003ca href=\"https://github.com/apps/renovate\"\u003erenovate[bot]\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdate dependency mypy to v1.19.0 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9322\"\u003e#9322\u003c/a\u003e [@\u003ca href=\"https://github.com/apps/renovate\"\u003erenovate[bot]\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdated libpng to 1.6.51 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9305\"\u003e#9305\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdated brotli to 1.2.0 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9284\"\u003e#9284\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdate libimagequant to 4.4.1 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9301\"\u003e#9301\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdate zlib-ng to 2.3.1, except on manylinux2014 aarch64 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9312\"\u003e#9312\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdated harfbuzz to 12.2.0 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9289\"\u003e#9289\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdate github-actions \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9277\"\u003e#9277\u003c/a\u003e [@\u003ca href=\"https://github.com/apps/renovate\"\u003erenovate[bot]\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTesting\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eReplace pre-commit with prek \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9360\"\u003e#9360\u003c/a\u003e [\u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eTest PyQt6 on Python 3.14 on Windows \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9353\"\u003e#9353\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eTest 32-bit Windows on Windows Server 2022 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9345\"\u003e#9345\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eCorrect variable type \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9335\"\u003e#9335\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eResourceWarning\u003c/code\u003es in \u003ccode\u003eselftest.py\u003c/code\u003e \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9332\"\u003e#9332\u003c/a\u003e [\u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eFix testing good P mode BMP images \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9319\"\u003e#9319\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eTest Python 3.15 pre-release \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9331\"\u003e#9331\u003c/a\u003e [\u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eTest ImageFont.ImageFont, in case freetype2 is not supported \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9287\"\u003e#9287\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eAdd Fedora 43 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9290\"\u003e#9290\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eRemove Fedora 41 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9260\"\u003e#9260\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eType hints\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ImageFile context manager \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9367\"\u003e#9367\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eAssert fp is not None \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/8617\"\u003e#8617\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\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/python-pillow/Pillow/commit/46f45f674d47b5d8bc54230dda8fe9e214598b87\"\u003e\u003ccode\u003e46f45f6\u003c/code\u003e\u003c/a\u003e 12.1.0 version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/c9ac097edb5594f63c40acd9afe6802547200379\"\u003e\u003ccode\u003ec9ac097\u003c/code\u003e\u003c/a\u003e Simplify band splitting (\u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9291\"\u003e#9291\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/3baedf264804d199bc19458d11bcff02ce7598eb\"\u003e\u003ccode\u003e3baedf2\u003c/code\u003e\u003c/a\u003e Deprecate getdata(), in favour of new get_flattened_data() (\u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9292\"\u003e#9292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/b51a0366852c1d519d108dfec8fc2d738cd8080f\"\u003e\u003ccode\u003eb51a036\u003c/code\u003e\u003c/a\u003e Specify APNG duration type when opening (\u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9368\"\u003e#9368\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/8d08e31533065b623399a54bc92b39a756599ad4\"\u003e\u003ccode\u003e8d08e31\u003c/code\u003e\u003c/a\u003e Add release notes for \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9348\"\u003e#9348\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9369\"\u003e#9369\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/432707ea810ae619e2a9e4a9737c169cacaa8eda\"\u003e\u003ccode\u003e432707e\u003c/code\u003e\u003c/a\u003e Added release notes for \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9348\"\u003e#9348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/2d589107fb3a4aba8389932a65ff771bf9b4deb1\"\u003e\u003ccode\u003e2d58910\u003c/code\u003e\u003c/a\u003e Specify APNG duration type when opening\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/8dee8dd5ba4e592409db1a7fc11a61a51ba30f04\"\u003e\u003ccode\u003e8dee8dd\u003c/code\u003e\u003c/a\u003e Add ImageFile context manager (\u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9367\"\u003e#9367\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/b2d9bc3c766a9743d23a296a503ea2712cdc6745\"\u003e\u003ccode\u003eb2d9bc3\u003c/code\u003e\u003c/a\u003e Support saving APNG float durations (\u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9365\"\u003e#9365\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/f130c10a9c07bc4a4fe793dc3dabb3fe8bd8a1bd\"\u003e\u003ccode\u003ef130c10\u003c/code\u003e\u003c/a\u003e Allow 1 mode images in MorphOp (\u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9348\"\u003e#9348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python-pillow/Pillow/compare/12.0.0...12.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-toolbox` from 4.1.0 to 4.1.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.1.0...v4.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/LedFx/LedFx/pull/1668","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/LedFx%2FLedFx/issues/1668","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1668/packages"},{"uuid":"3774863325","node_id":"PR_kwDOCVCLc867NjRz","number":135,"state":"closed","title":"Bump sphinx-toolbox from 4.1.0 to 4.1.1","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-01T16:18:51.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-01T16:17:46.000Z","updated_at":"2026-01-01T16:19:02.000Z","time_to_close":65,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.1.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.1.0 to 4.1.1.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.1.0...v4.1.1\"\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=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.1.0\u0026new-version=4.1.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/Senzing/awesome/pull/135","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Senzing%2Fawesome/issues/135","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/135/packages"},{"uuid":"3774846884","node_id":"PR_kwDOEVC2q867Nf6s","number":134,"state":"closed","title":"Bump sphinx-toolbox from 4.1.0 to 4.1.1","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-01T16:05:21.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-01T16:04:16.000Z","updated_at":"2026-01-01T16:05:33.000Z","time_to_close":65,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.1.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.1.0 to 4.1.1.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.1.0...v4.1.1\"\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=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.1.0\u0026new-version=4.1.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/Senzing/governor-postgresql-transaction-id/pull/134","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Senzing%2Fgovernor-postgresql-transaction-id/issues/134","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/134/packages"},{"uuid":"3728635949","node_id":"PR_kwDOMftbFc641A6J","number":187,"state":"closed","title":"Bump the py-updates group across 1 directory with 78 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-12T04:36:49.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-15T04:23:43.000Z","updated_at":"2026-01-12T04:36:50.000Z","time_to_close":2419986,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"py-updates","update_count":78,"packages":[{"name":"awscli","old_version":"1.40.17","new_version":"1.43.15","repository_url":"https://github.com/aws/aws-cli"},{"name":"polars","old_version":"1.28.1","new_version":"1.36.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"requests","old_version":"2.32.3","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"biopython","old_version":"1.85","new_version":"1.86","repository_url":"https://github.com/biopython/biopython"},{"name":"boto3","old_version":"1.38.18","new_version":"1.42.9","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.38.18","new_version":"1.42.9","repository_url":"https://github.com/boto/botocore"},{"name":"certifi","old_version":"2025.4.26","new_version":"2025.11.12","repository_url":"https://github.com/certifi/python-certifi"},{"name":"charset-normalizer","old_version":"3.4.2","new_version":"3.4.4","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"cloudpathlib","old_version":"0.21.1","new_version":"0.23.0","repository_url":"https://github.com/drivendataorg/cloudpathlib"},{"name":"docutils","old_version":"0.19","new_version":"0.22.3","repository_url":"https://github.com/rtfd/recommonmark"},{"name":"idna","old_version":"3.10","new_version":"3.11","repository_url":"https://github.com/kjd/idna"},{"name":"jellyfish","old_version":"1.2.0","new_version":"1.2.1"},{"name":"markdown-it-py","old_version":"3.0.0","new_version":"4.0.0","repository_url":"https://github.com/executablebooks/markdown-it-py"},{"name":"numpy","old_version":"2.2.5","new_version":"2.3.5","repository_url":"https://github.com/numpy/numpy"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"pyarrow","old_version":"20.0.0","new_version":"22.0.0","repository_url":"https://github.com/apache/arrow"},{"name":"pygments","old_version":"2.19.1","new_version":"2.19.2","repository_url":"https://github.com/pygments/pygments"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"rich","old_version":"14.0.0","new_version":"14.2.0","repository_url":"https://github.com/Textualize/rich"},{"name":"rsa","old_version":"4.7.2","new_version":"4.9.1","repository_url":"https://github.com/sybrenstuvel/python-rsa"},{"name":"s3transfer","old_version":"0.12.0","new_version":"0.16.0","repository_url":"https://github.com/boto/s3transfer"},{"name":"structlog","old_version":"25.3.0","new_version":"25.5.0","repository_url":"https://github.com/hynek/structlog"},{"name":"tzdata","old_version":"2025.2","new_version":"2025.3","repository_url":"https://github.com/python/tzdata"},{"name":"urllib3","old_version":"2.4.0","new_version":"2.6.2","repository_url":"https://github.com/urllib3/urllib3"},{"name":"zstandard","old_version":"0.23.0","new_version":"0.25.0","repository_url":"https://github.com/indygreg/python-zstandard"},{"name":"boto3-stubs","old_version":"1.38.18","new_version":"1.42.9","repository_url":"https://github.com/youtype/mypy_boto3_builder"},{"name":"botocore-stubs","old_version":"1.38.18","new_version":"1.42.9","repository_url":"https://github.com/youtype/botocore-stubs"},{"name":"cffi","old_version":"1.17.1","new_version":"2.0.0","repository_url":"https://github.com/python-cffi/cffi"},{"name":"coverage","old_version":"7.8.0","new_version":"7.13.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cryptography","old_version":"44.0.3","new_version":"46.0.3","repository_url":"https://github.com/pyca/cryptography"},{"name":"freezegun","old_version":"1.5.1","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"iniconfig","old_version":"2.1.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"markupsafe","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/pallets/markupsafe"},{"name":"moto","old_version":"5.1.4","new_version":"5.1.18","repository_url":"https://github.com/getmoto/moto"},{"name":"mypy","old_version":"1.15.0","new_version":"1.19.0","repository_url":"https://github.com/python/mypy"},{"name":"mypy-boto3-s3","old_version":"1.38.0","new_version":"1.42.3","repository_url":"https://github.com/youtype/mypy_boto3_builder"},{"name":"pycparser","old_version":"2.22","new_version":"2.23","repository_url":"https://github.com/eliben/pycparser"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"responses","old_version":"0.25.7","new_version":"0.25.8","repository_url":"https://github.com/getsentry/responses"},{"name":"ruff","old_version":"0.11.10","new_version":"0.14.9","repository_url":"https://github.com/astral-sh/ruff"},{"name":"types-awscrt","old_version":"0.27.2","new_version":"0.30.0","repository_url":"https://github.com/youtype/types-awscrt"},{"name":"types-requests","old_version":"2.32.0.20250515","new_version":"2.32.4.20250913","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-s3transfer","old_version":"0.12.0","new_version":"0.16.0","repository_url":"https://github.com/youtype/types-s3transfer"},{"name":"typing-extensions","old_version":"4.13.2","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"werkzeug","old_version":"3.1.3","new_version":"3.1.4","repository_url":"https://github.com/pallets/werkzeug"},{"name":"xmltodict","old_version":"0.14.2","new_version":"1.0.2","repository_url":"https://github.com/martinblech/xmltodict"},{"name":"alabaster","old_version":"0.7.16","new_version":"1.0.0","repository_url":"https://github.com/sphinx-doc/alabaster"},{"name":"anyio","old_version":"4.9.0","new_version":"4.12.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"beautifulsoup4","old_version":"4.13.4","new_version":"4.14.3"},{"name":"cachecontrol","old_version":"0.14.3","new_version":"0.14.4","repository_url":"https://github.com/psf/cachecontrol"},{"name":"click","old_version":"8.2.0","new_version":"8.3.1","repository_url":"https://github.com/pallets/click"},{"name":"contourpy","old_version":"1.3.2","new_version":"1.3.3","repository_url":"https://github.com/contourpy/contourpy"},{"name":"filelock","old_version":"3.18.0","new_version":"3.20.0","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"fonttools","old_version":"4.58.0","new_version":"4.61.1","repository_url":"https://github.com/fonttools/fonttools"},{"name":"furo","old_version":"2024.8.6","new_version":"2025.9.25","repository_url":"https://github.com/pradyunsg/furo"},{"name":"kiwisolver","old_version":"1.4.8","new_version":"1.4.9","repository_url":"https://github.com/nucleic/kiwi"},{"name":"matplotlib","old_version":"3.10.3","new_version":"3.10.8","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mdit-py-plugins","old_version":"0.4.2","new_version":"0.5.0","repository_url":"https://github.com/executablebooks/mdit-py-plugins"},{"name":"more-itertools","old_version":"10.7.0","new_version":"10.8.0","repository_url":"https://github.com/more-itertools/more-itertools"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.1.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"pillow","old_version":"11.2.1","new_version":"12.0.0","repository_url":"https://github.com/python-pillow/Pillow"},{"name":"platformdirs","old_version":"4.3.8","new_version":"4.5.1","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pyparsing","old_version":"3.2.3","new_version":"3.2.5","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"ruamel-yaml","old_version":"0.18.10","new_version":"0.18.16"},{"name":"ruamel-yaml-clib","old_version":"0.2.12","new_version":"0.2.15"},{"name":"soupsieve","old_version":"2.7","new_version":"2.8","repository_url":"https://github.com/facelessuser/soupsieve"},{"name":"sphinx","old_version":"7.3.7","new_version":"9.0.4","repository_url":"https://github.com/sphinx-doc/sphinx"},{"name":"sphinx-autobuild","old_version":"2024.10.3","new_version":"2025.8.25","repository_url":"https://github.com/sphinx-doc/sphinx-autobuild"},{"name":"sphinx-autodoc-typehints","old_version":"2.3.0","new_version":"3.6.0","repository_url":"https://github.com/tox-dev/sphinx-autodoc-typehints"},{"name":"sphinx-jinja2-compat","old_version":"0.3.0","new_version":"0.4.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-jinja2-compat"},{"name":"sphinx-prompt","old_version":"1.8.0","new_version":"1.10.2","repository_url":"https://github.com/sbrunner/sphinx-prompt"},{"name":"sphinx-tabs","old_version":"3.4.5","new_version":"3.4.7","repository_url":"https://github.com/executablebooks/sphinx-tabs"},{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.0","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"},{"name":"sphinxext-opengraph","old_version":"0.10.0","new_version":"0.13.0","repository_url":"https://github.com/sphinx-doc/sphinxext-opengraph"},{"name":"starlette","old_version":"0.46.2","new_version":"0.50.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"uvicorn","old_version":"0.34.2","new_version":"0.38.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"watchfiles","old_version":"1.0.5","new_version":"1.1.1","repository_url":"https://github.com/samuelcolvin/watchfiles"}],"path":null,"ecosystem":"pip"},"body":"Bumps the py-updates group with 78 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [awscli](https://github.com/aws/aws-cli) | `1.40.17` | `1.43.15` |\n| [polars](https://github.com/pola-rs/polars) | `1.28.1` | `1.36.1` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.32.5` |\n| [biopython](https://github.com/biopython/biopython) | `1.85` | `1.86` |\n| [boto3](https://github.com/boto/boto3) | `1.38.18` | `1.42.9` |\n| [botocore](https://github.com/boto/botocore) | `1.38.18` | `1.42.9` |\n| [certifi](https://github.com/certifi/python-certifi) | `2025.4.26` | `2025.11.12` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.2` | `3.4.4` |\n| [cloudpathlib](https://github.com/drivendataorg/cloudpathlib) | `0.21.1` | `0.23.0` |\n| [docutils](https://github.com/rtfd/recommonmark) | `0.19` | `0.22.3` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.11` |\n| [jellyfish](https://jellyfish.jpt.sh/) | `1.2.0` | `1.2.1` |\n| [markdown-it-py](https://github.com/executablebooks/markdown-it-py) | `3.0.0` | `4.0.0` |\n| [numpy](https://github.com/numpy/numpy) | `2.2.5` | `2.3.5` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [pyarrow](https://github.com/apache/arrow) | `20.0.0` | `22.0.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.19.1` | `2.19.2` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [rich](https://github.com/Textualize/rich) | `14.0.0` | `14.2.0` |\n| [rsa](https://github.com/sybrenstuvel/python-rsa) | `4.7.2` | `4.9.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.12.0` | `0.16.0` |\n| [structlog](https://github.com/hynek/structlog) | `25.3.0` | `25.5.0` |\n| [tzdata](https://github.com/python/tzdata) | `2025.2` | `2025.3` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.4.0` | `2.6.2` |\n| [zstandard](https://github.com/indygreg/python-zstandard) | `0.23.0` | `0.25.0` |\n| [boto3-stubs](https://github.com/youtype/mypy_boto3_builder) | `1.38.18` | `1.42.9` |\n| [botocore-stubs](https://github.com/youtype/botocore-stubs) | `1.38.18` | `1.42.9` |\n| [cffi](https://github.com/python-cffi/cffi) | `1.17.1` | `2.0.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.8.0` | `7.13.0` |\n| [cryptography](https://github.com/pyca/cryptography) | `44.0.3` | `46.0.3` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.1` | `1.5.5` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.1.0` | `2.3.0` |\n| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` |\n| [moto](https://github.com/getmoto/moto) | `5.1.4` | `5.1.18` |\n| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.19.0` |\n| [mypy-boto3-s3](https://github.com/youtype/mypy_boto3_builder) | `1.38.0` | `1.42.3` |\n| [pycparser](https://github.com/eliben/pycparser) | `2.22` | `2.23` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.2` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [responses](https://github.com/getsentry/responses) | `0.25.7` | `0.25.8` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.10` | `0.14.9` |\n| [types-awscrt](https://github.com/youtype/types-awscrt) | `0.27.2` | `0.30.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.32.0.20250515` | `2.32.4.20250913` |\n| [types-s3transfer](https://github.com/youtype/types-s3transfer) | `0.12.0` | `0.16.0` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.13.2` | `4.15.0` |\n| [werkzeug](https://github.com/pallets/werkzeug) | `3.1.3` | `3.1.4` |\n| [xmltodict](https://github.com/martinblech/xmltodict) | `0.14.2` | `1.0.2` |\n| [alabaster](https://github.com/sphinx-doc/alabaster) | `0.7.16` | `1.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.9.0` | `4.12.0` |\n| [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) | `4.13.4` | `4.14.3` |\n| [cachecontrol](https://github.com/psf/cachecontrol) | `0.14.3` | `0.14.4` |\n| [click](https://github.com/pallets/click) | `8.2.0` | `8.3.1` |\n| [contourpy](https://github.com/contourpy/contourpy) | `1.3.2` | `1.3.3` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.18.0` | `3.20.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.58.0` | `4.61.1` |\n| [furo](https://github.com/pradyunsg/furo) | `2024.8.6` | `2025.9.25` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.8` | `1.4.9` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.3` | `3.10.8` |\n| [mdit-py-plugins](https://github.com/executablebooks/mdit-py-plugins) | `0.4.2` | `0.5.0` |\n| [more-itertools](https://github.com/more-itertools/more-itertools) | `10.7.0` | `10.8.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.1.2` |\n| [pillow](https://github.com/python-pillow/Pillow) | `11.2.1` | `12.0.0` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.8` | `4.5.1` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.3` | `3.2.5` |\n| ruamel-yaml | `0.18.10` | `0.18.16` |\n| ruamel-yaml-clib | `0.2.12` | `0.2.15` |\n| [soupsieve](https://github.com/facelessuser/soupsieve) | `2.7` | `2.8` |\n| [sphinx](https://github.com/sphinx-doc/sphinx) | `7.3.7` | `9.0.4` |\n| [sphinx-autobuild](https://github.com/sphinx-doc/sphinx-autobuild) | `2024.10.3` | `2025.8.25` |\n| [sphinx-autodoc-typehints](https://github.com/tox-dev/sphinx-autodoc-typehints) | `2.3.0` | `3.6.0` |\n| [sphinx-jinja2-compat](https://github.com/sphinx-toolbox/sphinx-jinja2-compat) | `0.3.0` | `0.4.1` |\n| [sphinx-prompt](https://github.com/sbrunner/sphinx-prompt) | `1.8.0` | `1.10.2` |\n| [sphinx-tabs](https://github.com/executablebooks/sphinx-tabs) | `3.4.5` | `3.4.7` |\n| [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) | `4.0.0` | `4.1.0` |\n| [sphinxext-opengraph](https://github.com/sphinx-doc/sphinxext-opengraph) | `0.10.0` | `0.13.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.46.2` | `0.50.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.34.2` | `0.38.0` |\n| [watchfiles](https://github.com/samuelcolvin/watchfiles) | `1.0.5` | `1.1.1` |\n\n\nUpdates `awscli` from 1.40.17 to 1.43.15\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/7e0151487fe30379b8940f3f7438c9d36d8b0f26\"\u003e\u003ccode\u003e7e01514\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.15'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/72f90311e9cffa76ab1de14f261451127644e363\"\u003e\u003ccode\u003e72f9031\u003c/code\u003e\u003c/a\u003e Bumping version to 1.43.15\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/3edc753acee17c4907518c3b519cb50ce8de0ee7\"\u003e\u003ccode\u003e3edc753\u003c/code\u003e\u003c/a\u003e Update changelog based on model updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/70bb5d4161f5aaf56b4b4250160a49b425147484\"\u003e\u003ccode\u003e70bb5d4\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.14'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/7b40bb1b7eee75835a29888583bf10f9571a6bb1\"\u003e\u003ccode\u003e7b40bb1\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.14' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/acfdde6f0c0731f8b861788988f0a42504cbcdd9\"\u003e\u003ccode\u003eacfdde6\u003c/code\u003e\u003c/a\u003e Bumping version to 1.43.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/74dbdfdc03068804f909da20b8b9e546a3fc3bc3\"\u003e\u003ccode\u003e74dbdfd\u003c/code\u003e\u003c/a\u003e Update changelog based on model updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/f1a04b95e91bec439313be76ac1a9461b5a8de49\"\u003e\u003ccode\u003ef1a04b9\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Implement upgrade debug mode\u0026quot; (\u003ca href=\"https://redirect.github.com/aws/aws-cli/issues/9913\"\u003e#9913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/c21885e81e3af853e68ebb5561d0fbb65eddecb9\"\u003e\u003ccode\u003ec21885e\u003c/code\u003e\u003c/a\u003e Implement upgrade debug mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/c3f45696e1bef325dec4bcacf633ad5e12e93ae1\"\u003e\u003ccode\u003ec3f4569\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.13'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-cli/compare/1.40.17...1.43.15\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `polars` from 1.28.1 to 1.36.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pola-rs/polars/releases\"\u003epolars's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePython Polars 1.36.1\u003c/h2\u003e\n\u003ch2\u003e🚀 Performance improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTune partitioned sink_parquet cloud performance (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25687\"\u003e#25687\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e✨ Enhancements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow creation of \u003ccode\u003eObject\u003c/code\u003e literal (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25690\"\u003e#25690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDon't collect schema in SQL union processing (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25675\"\u003e#25675\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐞 Bug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDon't invalidate node in cluster-with-columns (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25714\"\u003e#25714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMove \u003ccode\u003eboto3\u003c/code\u003e extra from s3fs in dev requirements (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25667\"\u003e#25667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing type stubs for \u003ccode\u003ebin_slice\u003c/code\u003e, \u003ccode\u003ebin_head\u003c/code\u003e, and \u003ccode\u003ebin_tail\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25697\"\u003e#25697\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBinary slice methods missing from Series and docs (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25683\"\u003e#25683\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMix-up of variable_name/value_name in unpivot (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25685\"\u003e#25685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInvalid usage of \u003ccode\u003edrop_first\u003c/code\u003e in \u003ccode\u003eto_dummies\u003c/code\u003e when nulls present (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25435\"\u003e#25435\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📖 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix typos in Excel and Pandas migration guides (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25709\"\u003e#25709\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u0026quot;right\u0026quot; to \u003ccode\u003ehow\u003c/code\u003e options in \u003ccode\u003ejoin()\u003c/code\u003e docstrings (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25678\"\u003e#25678\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠️ Other improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove Object \u003ccode\u003elit\u003c/code\u003e fix earlier in the function (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25713\"\u003e#25713\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unused decimal file (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25701\"\u003e#25701\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMove \u003ccode\u003eboto3\u003c/code\u003e extra from s3fs in dev requirements (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25667\"\u003e#25667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade to latest version of \u003ccode\u003esqlparser-rs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25673\"\u003e#25673\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate slab to version without RUSTSEC (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25686\"\u003e#25686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix typo (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25684\"\u003e#25684\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThank you to all our contributors for making this release possible!\n\u003ca href=\"https://github.com/AndreaBozzo\"\u003e\u003ccode\u003e@​AndreaBozzo\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/Kevin-Patyk\"\u003e\u003ccode\u003e@​Kevin-Patyk\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/alexander-beedie\"\u003e\u003ccode\u003e@​alexander-beedie\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dsprenkels\"\u003e\u003ccode\u003e@​dsprenkels\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/jamesfricker\"\u003e\u003ccode\u003e@​jamesfricker\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mcrumiller\"\u003e\u003ccode\u003e@​mcrumiller\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/nameexhaustion\"\u003e\u003ccode\u003e@​nameexhaustion\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/orlp\"\u003e\u003ccode\u003e@​orlp\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/ritchie46\"\u003e\u003ccode\u003e@​ritchie46\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePython Polars 1.36.0\u003c/h2\u003e\n\u003cp\u003e🏆 Highlights\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Extension types (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25322\"\u003e#25322\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e✨ Enhancements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd SQL support for the QUALIFY clause (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25652\"\u003e#25652\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd bin.slice(), bin.head(), and bin.tail() methods (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25647\"\u003e#25647\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd SQL syntax support for CROSS JOIN UNNEST(col) (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25623\"\u003e#25623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd separate env var to log tracked metrics (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25586\"\u003e#25586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpose fields for generating physical plan visualization data (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25562\"\u003e#25562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow pl.Object in pivot value (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25533\"\u003e#25533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMinor improvement for as_struct repr (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25529\"\u003e#25529\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTemporal quantile in rolling context (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25479\"\u003e#25479\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/pola-rs/polars/commit/2a151c10fa76790711c2f75e6d012dd69c627ddd\"\u003e\u003ccode\u003e2a151c1\u003c/code\u003e\u003c/a\u003e Python Polars 1.36.1 (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25715\"\u003e#25715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/b394b2d15e502e46de0b817d4033b4cb5731a765\"\u003e\u003ccode\u003eb394b2d\u003c/code\u003e\u003c/a\u003e fix: Don't invalidate node in cluster-with-columns (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25714\"\u003e#25714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/e5baff43073c8024ffa0e0fce0fc45be5f3cb635\"\u003e\u003ccode\u003ee5baff4\u003c/code\u003e\u003c/a\u003e refactor: Move Object \u003ccode\u003elit\u003c/code\u003e fix earlier in the function (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25713\"\u003e#25713\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/ee79be36ef280975c332b5c51f13d14f10349bd0\"\u003e\u003ccode\u003eee79be3\u003c/code\u003e\u003c/a\u003e docs: Fix typos in Excel and Pandas migration guides (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25709\"\u003e#25709\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/0150a1849d25c04ac35fe469228d358c9388b4c0\"\u003e\u003ccode\u003e0150a18\u003c/code\u003e\u003c/a\u003e chore: Remove unused decimal file (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25701\"\u003e#25701\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/9dd724b647a77159477318077a03c9ece10e31b3\"\u003e\u003ccode\u003e9dd724b\u003c/code\u003e\u003c/a\u003e fix(python): Remove \u003ccode\u003eboto3\u003c/code\u003e extra from s3fs (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25667\"\u003e#25667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/d8cdf895f9b9a1110fa053400d3c16dd5b241063\"\u003e\u003ccode\u003ed8cdf89\u003c/code\u003e\u003c/a\u003e feat: Allow creation of \u003ccode\u003eObject\u003c/code\u003e literal (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25690\"\u003e#25690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/30699577be723eccedb30779f73076b7f22b6fd5\"\u003e\u003ccode\u003e3069957\u003c/code\u003e\u003c/a\u003e fix(python): Add missing type stubs for \u003ccode\u003ebin_slice\u003c/code\u003e, \u003ccode\u003ebin_head\u003c/code\u003e, and `bin_tai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/729e5750e9d5005da953a83828366570209ba05f\"\u003e\u003ccode\u003e729e575\u003c/code\u003e\u003c/a\u003e chore: Upgrade to latest version of \u003ccode\u003esqlparser-rs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25673\"\u003e#25673\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/b83a2595b39deebafae13ba7d0b0fcc28f971e98\"\u003e\u003ccode\u003eb83a259\u003c/code\u003e\u003c/a\u003e chore: Update slab to version without RUSTSEC (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25686\"\u003e#25686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pola-rs/polars/compare/py-1.28.1...py-1.36.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.3 to 2.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/releases\"\u003erequests's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.32.5\u003c/h2\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b25c87d7cb8d6a18a37fa12442b5f883f9e41741\"\u003e\u003ccode\u003eb25c87d\u003c/code\u003e\u003c/a\u003e v2.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/131e506079d97606e4214cc4d87b780ac478de7a\"\u003e\u003ccode\u003e131e506\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/7010\"\u003e#7010\u003c/a\u003e from psf/dependabot/github_actions/actions/checkout-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b336cb2bc616a63a93c6470c558fc1f576b77f90\"\u003e\u003ccode\u003eb336cb2\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/46e939b5525d9c72b677340985582b04b128478a\"\u003e\u003ccode\u003e46e939b\u003c/code\u003e\u003c/a\u003e Update publish workflow to use \u003ccode\u003eartifact-id\u003c/code\u003e instead of \u003ccode\u003ename\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4b9c546aa3f35fca6ca24945376fe7462bb007c4\"\u003e\u003ccode\u003e4b9c546\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6999\"\u003e#6999\u003c/a\u003e from psf/dependabot/github_actions/step-security/har...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7618dbef01d333f23ba4b9c4d97397b06dd89cb6\"\u003e\u003ccode\u003e7618dbe\u003c/code\u003e\u003c/a\u003e Bump step-security/harden-runner from 2.12.0 to 2.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2edca11103c1c27dd8b572dab544b7f48cf3b446\"\u003e\u003ccode\u003e2edca11\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 and drop support for Python 3.8 (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6993\"\u003e#6993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/fec96cd5976ad763e45bac9a033d62cca1877a00\"\u003e\u003ccode\u003efec96cd\u003c/code\u003e\u003c/a\u003e Update Makefile rules (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6996\"\u003e#6996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/d58d8aa2f45c3575268d6d5250745ef69f9cf8b7\"\u003e\u003ccode\u003ed58d8aa\u003c/code\u003e\u003c/a\u003e docs: clarify timeout parameter uses seconds in Session.request (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6994\"\u003e#6994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/91a3eabd3dcc4d7f36dd8249e4777a90ef9b4305\"\u003e\u003ccode\u003e91a3eab\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.5 to 3.29.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `biopython` from 1.85 to 1.86\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/biopython/biopython/blob/master/NEWS.rst\"\u003ebiopython's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e28 October 2025: Biopython 1.86\u003c/h1\u003e\n\u003cp\u003eThis release of Biopython supports Python 3.10, 3.11, 3.12, 3.13 and 3.14.  It\nhas also been tested on PyPy3.10 v7.3.19.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.SearchIO\u003c/code\u003e now supports parsing the tabular and plain text output of\n\u003ccode\u003eInfernal \u0026lt;http://eddylab.org/infernal/\u0026gt;\u003c/code\u003e (v1.0.0+) RNA search tool. The\nformat names are \u003ccode\u003einfernal-tab\u003c/code\u003e and \u003ccode\u003einfernal-text\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe default value of the gap score of a \u003ccode\u003ePairwiseAligner\u003c/code\u003e object was changed\nin this release.  Previously, for consistency with \u003ccode\u003eBio.pairwise2\u003c/code\u003e, the\ndefault value for gap score was 0.  However, this means that a mismatch, an\ninsertion followed by a deletion, and a deletion followed by an insertion all\nget assigned a score of 0.  The aligner then finds a large number of alignments\nthat are logically the same, but have trivial differences between them.  For\nexample, aligning AAACAAA to AAAGAAA previously yielded the following three\nalignments, all with score 6::\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e AAACAAA        AAAC-AAA        AAA-CAAA\n AAAGAAA        AAA-GAAA        AAAG-AAA\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eWith the new default parameter for the gap score, only the first alignment is\nreturned.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.PDBIO\u003c/code\u003e now ensures that b-factor values are always at most 6 characters to\nensure that we do not violate the wwPDB specification. This should not have an impact\non the majority of uses, as b-factor values are generally small (less than 100). When\n1000 \u0026lt;= b-factor \u0026lt; 10_000, the value is rounded to a single decimal place. When,\n10_000 \u0026lt;= b-factor \u0026lt; 999_999, the value is rounded to zero decimal places. Values\nabove 999_999 are now clamped. The justification for this is the rise in the b-factor\nfield being used for additional metadata, typically from computational tools.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.Align\u003c/code\u003e now provides a method \u003ccode\u003eAlignment.from_alignments_with_same_reference\u003c/code\u003e\nto construct a multiple sequence alignment from a collection of alignments\nthat share the same reference sequence.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.PDBIO\u003c/code\u003e will now raise module specific warnings:\n\u003ccode\u003eBio.PDB.PDBExceptions.PDBIOWarning\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.SCADIO\u003c/code\u003e now supports object selection by color in the OpenSCAD\noutput file.  This enables generation of separate STL files for each color for\nprinting protein structures on multi-material 3D printers.\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eiplotx\u003c/code\u003e library is mentioned in the Tutorial as an option to visualise\ntrees using complex style options.\u003c/p\u003e\n\u003cp\u003eMany thanks to the Biopython developers and community for making this release\npossible, especially the following contributors:\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\u003eSee full diff in \u003ca href=\"https://github.com/biopython/biopython/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.18 to 1.42.9\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/70183cf04d296effa96d26f65daea72f808d0b2b\"\u003e\u003ccode\u003e70183cf\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.9'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/02ef27f5aa6a77df183e48cba4814479b5b5d7bc\"\u003e\u003ccode\u003e02ef27f\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b4821c1cb31d0eb4c6130e85dc4179789888a8e8\"\u003e\u003ccode\u003eb4821c1\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/8c12c9dc72660013e2f52510eab3b3cd62d7ddeb\"\u003e\u003ccode\u003e8c12c9d\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.8'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/39f484c1d95e4751a9953d44bad534ec7030c1a8\"\u003e\u003ccode\u003e39f484c\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.8' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/3c5c225507c6a753b1596d48c5e9f9586eb2729a\"\u003e\u003ccode\u003e3c5c225\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/d8c15ca79b64aeed2f38123a2c20783721db1bdb\"\u003e\u003ccode\u003ed8c15ca\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/e70c5a2b505631dc167de946d4717dcf7b422a67\"\u003e\u003ccode\u003ee70c5a2\u003c/code\u003e\u003c/a\u003e Use f-strings instead of string concatenation (\u003ca href=\"https://redirect.github.com/boto/boto3/issues/4675\"\u003e#4675\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/2295d41097ef3fbdef837df4118ec85c04d48f6e\"\u003e\u003ccode\u003e2295d41\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.7'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/f2bd57cd0c3e22a5ca7eefbfca358de247ec8b57\"\u003e\u003ccode\u003ef2bd57c\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.7' into develop\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.18...1.42.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `botocore` from 1.38.18 to 1.42.9\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/fefef10ea7908e50bb9a7e5ec1969cc5d745d9d5\"\u003e\u003ccode\u003efefef10\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.9'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/2bdbadbfc0bbd216359c329f0ce082ef383b5b26\"\u003e\u003ccode\u003e2bdbadb\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/fd387744345f7e56f7f06845031e73cd21b34ef9\"\u003e\u003ccode\u003efd38774\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/bd5f2d844a8ca5cad817820944df4f45184fa0ea\"\u003e\u003ccode\u003ebd5f2d8\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/517a891083b3fbf4040041ee42a82e67e67e8c0a\"\u003e\u003ccode\u003e517a891\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.8'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/02205a47fcd51a60ae453c1da4eefa8f509b824b\"\u003e\u003ccode\u003e02205a4\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.8' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/6290d04346193a26531d806bb6a8613a23d3dd35\"\u003e\u003ccode\u003e6290d04\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/e635637d039e79dadb6a78fdf78ffb995a179d65\"\u003e\u003ccode\u003ee635637\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/323d375948254b39e6fc94a68c1d7bb3a88c553a\"\u003e\u003ccode\u003e323d375\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/a9d520e8c7d365dde025c4b7a12d4e4ec4102e57\"\u003e\u003ccode\u003ea9d520e\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.7'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/botocore/compare/1.38.18...1.42.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `certifi` from 2025.4.26 to 2025.11.12\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/37ea150bee10958559f804f128de2fdd48e1ed45\"\u003e\u003ccode\u003e37ea150\u003c/code\u003e\u003c/a\u003e 2025.11.12 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/375\"\u003e#375\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/2fa50bb698145e2401e17b23f6969d3952a6f7c1\"\u003e\u003ccode\u003e2fa50bb\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 4.6.2 to 5.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/374\"\u003e#374\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/6cadb5304715523e57ea425f833aa3495a4e01e4\"\u003e\u003ccode\u003e6cadb53\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/373\"\u003e#373\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/fb14ac49a976b1695d84b1ac1307276a20b3aac9\"\u003e\u003ccode\u003efb14ac4\u003c/code\u003e\u003c/a\u003e 2025.10.05 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/371\"\u003e#371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/2c7c7ee6b76a118191b685a4cc028d4241f22eb7\"\u003e\u003ccode\u003e2c7c7ee\u003c/code\u003e\u003c/a\u003e Add Python 3.14 classifier in setup.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/1a5cb7b3771bba256755f88b3dcf3ac13f064622\"\u003e\u003ccode\u003e1a5cb7b\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5.6.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/367\"\u003e#367\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/dea59605ef2b266c2e0e67938e8c8535a04b1211\"\u003e\u003ccode\u003edea5960\u003c/code\u003e\u003c/a\u003e Bump pypa/gh-action-pypi-publish from 1.12.4 to 1.13.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/366\"\u003e#366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/83566b7c993eef772facdaff59c7bba105675329\"\u003e\u003ccode\u003e83566b7\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.2 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ca2e121bdb304fd01f802d3b1ee6a65684f569f2\"\u003e\u003ccode\u003eca2e121\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4.3.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/a97d9ad8f87c382378dddc0b0b33b9770932404e\"\u003e\u003ccode\u003ea97d9ad\u003c/code\u003e\u003c/a\u003e 2025.08.03 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/certifi/python-certifi/compare/2025.04.26...2025.11.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `charset-normalizer` from 3.4.2 to 3.4.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.3...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003e multiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/b30ffdcc2f11043c0d34e60fe66d3815cd49b32b\"\u003e\u003ccode\u003eb30ffdc\u003c/code\u003e\u003c/a\u003e :wrench: fix checksum step in cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/d3fbfcfad7dfe3c640886f1a6a6351da527f6634\"\u003e\u003ccode\u003ed3fbfcf\u003c/code\u003e\u003c/a\u003e :wrench: fix cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/dafbb95f8c00d3cc8b99158caa63006ffab98749\"\u003e\u003ccode\u003edafbb95\u003c/code\u003e\u003c/a\u003e Release 3.4.4 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/658\"\u003e#658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/1f18ffaa69d2c84fea7abedb8840197ba9c14562\"\u003e\u003ccode\u003e1f18ffa\u003c/code\u003e\u003c/a\u003e :arrow_up: raise mypy upper bound to 1.18.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/ef4ac69ad203891f24e26b2422ab3a08053044fa\"\u003e\u003ccode\u003eef4ac69\u003c/code\u003e\u003c/a\u003e Merge branch 'release-3.4.4' of github.com:jawah/charset_normalizer into rele...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/4b35dda053db5e2e60a247e80a116e4ef04f439b\"\u003e\u003ccode\u003e4b35dda\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/0ec6452f1a34cbc77a55b237c4118807b44c2a33\"\u003e\u003ccode\u003e0ec6452\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f341edec8a828dda394abfa011b1ded8b4b102e2\"\u003e\u003ccode\u003ef341ede\u003c/code\u003e\u003c/a\u003e :arrow_up: upgrade dependencies (dev, ci)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/a308841e660a4d61ea6c448e7b8bf97415ecdc4a\"\u003e\u003ccode\u003ea308841\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/9c906da611d5ca5ef076d6bf7f60e629f661d0b0\"\u003e\u003ccode\u003e9c906da\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.2...3.4.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cloudpathlib` from 0.21.1 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/drivendataorg/cloudpathlib/releases\"\u003ecloudpathlib's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14 (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/529\"\u003e#529\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/530\"\u003e#530\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eChanged \u003ccode\u003eCloudPath.copy\u003c/code\u003e to have the first parameter named \u003ccode\u003etarget\u003c/code\u003e instead of \u003ccode\u003edestination\u003c/code\u003e and added new \u003ccode\u003efollow_symlinks\u003c/code\u003e and \u003ccode\u003epreserve_metadata\u003c/code\u003e kwargs. \u003cstrong\u003eBreaking change for users that relied on the first parameter being named \u003ccode\u003edestination\u003c/code\u003e instead of \u003ccode\u003etarget\u003c/code\u003e.\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.copy_into\u003c/code\u003e to copy a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move\u003c/code\u003e to move a file or directory to another location.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move_into\u003c/code\u003e to move a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPathInfo\u003c/code\u003e and \u003ccode\u003eCloudPath.info\u003c/code\u003e to get information about a file or directory.\u003c/li\u003e\n\u003cli\u003eAdded additional no-op kwargs to \u003ccode\u003emkdir\u003c/code\u003e, \u003ccode\u003etouch\u003c/code\u003e, \u003ccode\u003eglob\u003c/code\u003e, \u003ccode\u003erglob\u003c/code\u003e, \u003ccode\u003estat\u003c/code\u003e to match pathlib.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.22.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed issue with GS credentials, using default auth enables a wider set of authentication methods in GS (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/390\"\u003e#390\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/514\"\u003e#514\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ljyanesm\"\u003e\u003ccode\u003e@​ljyanesm\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for http(s) urls with \u003ccode\u003eHttpClient\u003c/code\u003e, \u003ccode\u003eHttpPath\u003c/code\u003e, \u003ccode\u003eHttpsClient\u003c/code\u003e, and \u003ccode\u003eHttpsPath\u003c/code\u003e. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/455\"\u003e#455\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded experimental support for patching the builtins \u003ccode\u003eopen\u003c/code\u003e, \u003ccode\u003eos\u003c/code\u003e, \u003ccode\u003eos.path\u003c/code\u003e, and \u003ccode\u003eglob\u003c/code\u003e to work with \u003ccode\u003eCloudPath\u003c/code\u003e objects. It is off by default; see the new \u0026quot;Compatibility\u0026quot; section in the docs for more information. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/128\"\u003e#128\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for \u003ccode\u003eCloudPath(*parts)\u003c/code\u003e to create a \u003ccode\u003eCloudPath\u003c/code\u003e object from a list of parts (to match \u003ccode\u003epathlib.Path\u003c/code\u003e). \u003cstrong\u003eThis is a potentially breaking change for users that relied on the second arg being the \u003ccode\u003eclient\u003c/code\u003e instead of making it an explicit kwarg.\u003c/strong\u003e (PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\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/drivendataorg/cloudpathlib/blob/master/HISTORY.md\"\u003ecloudpathlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0 (2025-10-07)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14 (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/529\"\u003e#529\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/530\"\u003e#530\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eChanged \u003ccode\u003eCloudPath.copy\u003c/code\u003e to have the first parameter named \u003ccode\u003etarget\u003c/code\u003e instead of \u003ccode\u003edestination\u003c/code\u003e and added new \u003ccode\u003efollow_symlinks\u003c/code\u003e and \u003ccode\u003epreserve_metadata\u003c/code\u003e kwargs. \u003cstrong\u003eBreaking change for users that relied on the first parameter being named \u003ccode\u003edestination\u003c/code\u003e instead of \u003ccode\u003etarget\u003c/code\u003e.\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.copy_into\u003c/code\u003e to copy a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move\u003c/code\u003e to move a file or directory to another location.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move_into\u003c/code\u003e to move a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPathInfo\u003c/code\u003e and \u003ccode\u003eCloudPath.info\u003c/code\u003e to get information about a file or directory.\u003c/li\u003e\n\u003cli\u003eAdded additional no-op kwargs to \u003ccode\u003emkdir\u003c/code\u003e, \u003ccode\u003etouch\u003c/code\u003e, \u003ccode\u003eglob\u003c/code\u003e, \u003ccode\u003erglob\u003c/code\u003e, \u003ccode\u003estat\u003c/code\u003e to match pathlib.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.22.0 (2025-08-29)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed issue with GS credentials, using default auth enables a wider set of authentication methods in GS (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/390\"\u003e#390\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/514\"\u003e#514\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ljyanesm\"\u003e\u003ccode\u003e@​ljyanesm\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for http(s) urls with \u003ccode\u003eHttpClient\u003c/code\u003e, \u003ccode\u003eHttpPath\u003c/code\u003e, \u003ccode\u003eHttpsClient\u003c/code\u003e, and \u003ccode\u003eHttpsPath\u003c/code\u003e. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/455\"\u003e#455\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded experimental support for patching the builtins \u003ccode\u003eopen\u003c/code\u003e, \u003ccode\u003eos\u003c/code\u003e, \u003ccode\u003eos.path\u003c/code\u003e, and \u003ccode\u003eglob\u003c/code\u003e to work with \u003ccode\u003eCloudPath\u003c/code\u003e objects. It is off by default; see the new \u0026quot;Compatibility\u0026quot; section in the docs for more information. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/128\"\u003e#128\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for \u003ccode\u003eCloudPath(*parts)\u003c/code\u003e to create a \u003ccode\u003eCloudPath\u003c/code\u003e object from a list of parts (to match \u003ccode\u003epathlib.Path\u003c/code\u003e). \u003cstrong\u003eThis is a potentially breaking change for users that relied on the second arg being the \u003ccode\u003eclient\u003c/code\u003e instead of making it an explicit kwarg.\u003c/strong\u003e (PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\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/drivendataorg/cloudpathlib/commit/28f1d943078517262d045ae50136edf27a5298a1\"\u003e\u003ccode\u003e28f1d94\u003c/code\u003e\u003c/a\u003e WIP Support 3.14 (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/530\"\u003e#530\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/fec5918d6725e9f1f52bee003528f4f854454980\"\u003e\u003ccode\u003efec5918\u003c/code\u003e\u003c/a\u003e Bump pypa/gh-action-pypi-publish in /.github/workflows (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/531\"\u003e#531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/e7900023bf4b32b70ca5b2d798f9ce52187582f8\"\u003e\u003ccode\u003ee790002\u003c/code\u003e\u003c/a\u003e version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/bb1f1e4cb5eba0928cec2aaff30cb0f5ace1f108\"\u003e\u003ccode\u003ebb1f1e4\u003c/code\u003e\u003c/a\u003e WIP: Patch open, os and os.path builtins (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/12005505fc29ab4183968022a487416a31b1a1bd\"\u003e\u003ccode\u003e1200550\u003c/code\u003e\u003c/a\u003e Refactor GS authentication to use default credentials (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/514\"\u003e#514\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/526\"\u003e#526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/b21cac14f0090021594f7e3afae9c48f5d7dbd46\"\u003e\u003ccode\u003eb21cac1\u003c/code\u003e\u003c/a\u003e Implement HTTP(s) support (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/863e884cbf1cf141cdf7bf9c0623e0cd3d27841d\"\u003e\u003ccode\u003e863e884\u003c/code\u003e\u003c/a\u003e fix for azure typing differences (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/524\"\u003e#524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/65c5c012bd4297ce4e812cfb8bbf9827db346e03\"\u003e\u003ccode\u003e65c5c01\u003c/code\u003e\u003c/a\u003e Set pytest-cases\u0026gt;=3.9.1 (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/520\"\u003e#520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/drivendataorg/cloudpathlib/compare/v0.21.1...v0.23.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `docutils` from 0.19 to 0.22.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/rtfd/recommonmark/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `idna` from 3.10 to 3.11\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kjd/idna/blob/master/HISTORY.rst\"\u003eidna's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e3.11 (2025-10-12)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to Unicode 16.0.0, including significant changes to UTS46\nprocessing. As a result of Unicode ending support for it, transitional\nprocessing no longer has an effect and returns the same result.\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14, lowest supported version is Python 3.8.\u003c/li\u003e\n\u003cli\u003eVarious updates to packaging, including PEP 740 support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/ad949ee3052c2265c66e3df2dd8871a5832ba327\"\u003e\u003ccode\u003ead949ee\u003c/code\u003e\u003c/a\u003e Release v3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/cae4ba779e0a543823894bd4136651c187944da8\"\u003e\u003ccode\u003ecae4ba7\u003c/code\u003e\u003c/a\u003e Second release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/8adb305165c77c4a45d1568a70ead75d2197692c\"\u003e\u003ccode\u003e8adb305\u003c/code\u003e\u003c/a\u003e Add space in RST link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/74cb2b652bb06133b0c4ab52cc98221be63162cf\"\u003e\u003ccode\u003e74cb2b6\u003c/code\u003e\u003c/a\u003e Release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/05dab09fdde5bbf7d52f757c4dc62e0ba934cca8\"\u003e\u003ccode\u003e05dab09\u003c/code\u003e\u003c/a\u003e Format idna-data with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/90eac78b737d26613776b490432fc6d926b15c55\"\u003e\u003ccode\u003e90eac78\u003c/code\u003e\u003c/a\u003e Apply ruff formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a31ce7ecc0b767e40abb5ce28744ac567b73f366\"\u003e\u003ccode\u003ea31ce7e\u003c/code\u003e\u003c/a\u003e Remove errant test vectors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/81f03334211c78c1832991ce70ebafb3cbfbb79c\"\u003e\u003ccode\u003e81f0333\u003c/code\u003e\u003c/a\u003e Omit vectors known to be broken in test suite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a0f32578c0cac28c7ffbb4c860c92eb2b9b579bd\"\u003e\u003ccode\u003ea0f3257\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into unicode-16-uts46-changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/38d98860e6a1ab92fd35ab09ea4739feabf339a3\"\u003e\u003ccode\u003e38d9886\u003c/code\u003e\u003c/a\u003e Remove extra UTS46 test vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kjd/idna/compare/v3.10...v3.11\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jellyfish` from 1.2.0 to 1.2.1\n\nUpdates `markdown-it-py` from 3.0.0 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/executablebooks/markdown-it-py/releases\"\u003emarkdown-it-py's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eThis primarily drops support for Python 3.8 and 3.9, adds support for Python 3.13,\nand updates the parser to comply with Commonmark 0.31.2 and Markdown-It v14.1.0.\u003c/p\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Drop Python 3.8, test 3.13 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/342\"\u003eexecutablebooks/markdown-it-py#342\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Drop support for Python 3.9 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/360\"\u003eexecutablebooks/markdown-it-py#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Comply with Commonmark 0.31.2 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/362\"\u003eexecutablebooks/markdown-it-py#362\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Improve performance of \u0026quot;text\u0026quot; inline rule by \u003ca href=\"https://github.com/hukkin\"\u003e\u003ccode\u003e@​hukkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/347\"\u003eexecutablebooks/markdown-it-py#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Use \u003ccode\u003estr.removesuffix\u003c/code\u003e by \u003ca href=\"https://github.com/hukkin\"\u003e\u003ccode\u003e@​hukkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/348\"\u003eexecutablebooks/markdown-it-py#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 limit the number of autocompleted cells in a table by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/364\"\u003eexecutablebooks/markdown-it-py#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 fix quadratic complexity in reference parser by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/367\"\u003eexecutablebooks/markdown-it-py#367\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix emphasis inside raw links bugs by \u003ca href=\"https://github.com/tsutsu3\"\u003e\u003ccode\u003e@​tsutsu3\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/320\"\u003eexecutablebooks/markdown-it-py#320\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔧 Replace black and isort with ruff formatter by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/313\"\u003eexecutablebooks/markdown-it-py#313\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Fixed Code Style paragraph still referring to flake8 by \u003ca href=\"https://github.com/venthur\"\u003e\u003ccode\u003e@​venthur\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/309\"\u003eexecutablebooks/markdown-it-py#309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Add \u0026quot;store_labels\u0026quot; to OptionsType by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/343\"\u003eexecutablebooks/markdown-it-py#343\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Move \u003ccode\u003ecode_style\u003c/code\u003e to dependency group by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/344\"\u003eexecutablebooks/markdown-it-py#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Update codecov action by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/345\"\u003eexecutablebooks/markdown-it-py#345\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Update pre-commit and upload-artifact by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/359\"\u003eexecutablebooks/markdown-it-py#359\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Improve spec update script by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/361\"\u003eexecutablebooks/markdown-it-py#361\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 simplify logic in scanDelims by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/365\"\u003eexecutablebooks/markdown-it-py#365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Add CI testing for Python 3.12 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/303\"\u003eexecutablebooks/markdown-it-py#303\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Fix codecov by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/332\"\u003eexecutablebooks/markdown-it-py#332\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📚 Fix typo by \u003ca href=\"https://github.com/bwagner\"\u003e\u003ccode\u003e@​bwagner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/315\"\u003eexecutablebooks/markdown-it-py#315\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix RTD build by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/322\"\u003eexecutablebooks/markdown-it-py#322\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Fix a few old URLs by \u003ca href=\"https://github.com/elijahgreenstein\"\u003e\u003ccode\u003e@​elijahgreenstein\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/358\"\u003eexecutablebooks/markdown-it-py#358\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Improve README by \u003ca href=\"https://github.com/mrmurilo75\"\u003e\u003ccode\u003e@​mrmurilo75\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/340\"\u003eexecutablebooks/markdown-it-py#340\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix CI badge link by \u003ca href=\"https://github.com/tsutsu3\"\u003e\u003ccode\u003e@​tsutsu3\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/291\"\u003eexecutablebooks/markdown-it-py#291\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Update docs by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/292\"\u003eexecutablebooks/markdown-it-py#292\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Add icon to readme by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/293\"\u003eexecutablebooks/markdown-it-py#293\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Update icon by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/294\"\u003eexecutablebooks/markdown-it-py#294\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Clarify docs regarding security configuration by \u003ca href=\"https://github.com/djramones\"\u003e\u003ccode\u003e@​djramones\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/296\"\u003eexecutablebooks/markdown-it-py#296\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix the RTD build by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/311\"\u003eexecutablebooks/markdown-it-py#311\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Fix typos by \u003ca href=\"https://github.com/elijahgreenstein\"\u003e\u003ccode\u003e@​elijahgreenstein\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/366\"\u003eexecutablebooks/markdown-it-py#366\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/executablebooks/markdown-it-py/blob/master/CHANGELOG.md\"\u003emarkdown-it-py's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.0 - 2024-08-10\u003c/h2\u003e\n\u003cp\u003eThis primarily drops support for Python 3.9, adds support for Python 3.13,\nand updates the parser to comply with Commonmark 0.31.2 and Markdown-It v14.1.0.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Drop support for Python 3.9 in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/360\"\u003e#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Comply with Commonmark 0.31.2 in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/362\"\u003e#362\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve performance of \u0026quot;text\u0026quot; inline rule in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/347\"\u003e#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Use \u003ccode\u003estr.removesuffix\u003c/code\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/348\"\u003e#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 limit the number of autocompleted cells in a table in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/364\"\u003e#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 fix quadratic complexity in reference parser in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/367\"\u003e#367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 Fix emphasis inside raw links bugs in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/320\"\u003e#320\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.0\"\u003ehttps://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.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/executablebooks/markdown-it-py/commit/c62983f1554124391b47170180e6c62df4d476ca\"\u003e\u003ccode\u003ec62983f\u003c/code\u003e\u003c/a\u003e 🚀 RELEASE v4.0.0 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/368\"\u003e#368\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/9e93bd554147ffb8582581e14620c7611103d2ff\"\u003e\u003ccode\u003e9e93bd5\u003c/code\u003e\u003c/a\u003e 👌 fix quadratic complexity in reference parser (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/367\"\u003e#367\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/da45c8764b2077425c091fa1811bbb1c5f211bd1\"\u003e\u003ccode\u003eda45c87\u003c/code\u003e\u003c/a\u003e 📚 DOCS: Fix typos (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/366\"\u003e#366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/87b16e272bf8207182084e07a63253b98fc437d7\"\u003e\u003ccode\u003e87b16e2\u003c/code\u003e\u003c/a\u003e 🔧 simplify logic in scanDelims (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/365\"\u003e#365\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/e4009641db528444b85d384af815e9cad997a016\"\u003e\u003ccode\u003ee400964\u003c/code\u003e\u003c/a\u003e 👌 limit the number of autocompleted cells in a table (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/364\"\u003e#364\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/4535d77edcb5f51450a266135687eeae8bcc5033\"\u003e\u003ccode\u003e4535d77\u003c/code\u003e\u003c/a\u003e ⬆️ Comply with Commonmark 0.31.2 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/8eb20ac1cb63e09dcd78e84a0c71dab8446bb73c\"\u003e\u003ccode\u003e8eb20ac\u003c/code\u003e\u003c/a\u003e 🔧 Improve spec update script (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/361\"\u003e#361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/fb9d3ab646e4f752dc8fd52e1dd7613c350ff190\"\u003e\u003ccode\u003efb9d3ab\u003c/code\u003e\u003c/a\u003e ⬆️ Drop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/360\"\u003e#360\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/9ffe841832d33264201aaff120349f001a02953a\"\u003e\u003ccode\u003e9ffe841\u003c/code\u003e\u003c/a\u003e 📚 DOCS: Fix a few old URLs (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/358\"\u003e#358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/154fe43feb17947e2c933d0bb3e26618129909a8\"\u003e\u003ccode\u003e154fe43\u003c/code\u003e\u003c/a\u003e 🔧 Update pre-commit and upload-artifact (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `numpy` from 2.2.5 to 2.3.5\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.3.5 (Nov 16, 2025)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.3.5 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.3.5 release is a patch release split between a number of maintenance\nupdates and bug fixes. This release supports Python versions 3.11-3.14.\u003c/p\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eA total of 10 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\u003eAaron Kollasch +\u003c/li\u003e\n\u003cli\u003eCharles Harris\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eMatti Picus\u003c/li\u003e\n\u003cli\u003eNathan Goldbaum\u003c/li\u003e\n\u003cli\u003eRafael Laboissière +\u003c/li\u003e\n\u003cli\u003eSayed Awad\u003c/li\u003e\n\u003cli\u003eSebastian Berg\u003c/li\u003e\n\u003cli\u003eWarren Weckesser\u003c/li\u003e\n\u003cli\u003eYasir Ashfaq +\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ePull requests merged\u003c/h2\u003e\n\u003cp\u003eA total of 16 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/29979\"\u003e#29979\u003c/a\u003e: MAINT: Prepare 2.3.x for further development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30026\"\u003e#30026\u003c/a\u003e: SIMD, BLD: Backport FPMATH mode on x86-32 and filter successor...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30029\"\u003e#30029\u003c/a\u003e: MAINT: Backport write_release.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30041\"\u003e#30041\u003c/a\u003e: TYP: Various typing updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30059\"\u003e#30059\u003c/a\u003e: BUG: Fix np.strings.slice if stop=None or start and stop \u0026gt;= len...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30063\"\u003e#30063\u003c/a\u003e: BUG: Fix np.strings.slice if start \u0026gt; stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30076\"\u003e#30076\u003c/a\u003e: BUG: avoid negating INT_MIN in PyArray_Round implementation (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30071\"\u003e#30071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30090\"\u003e#30090\u003c/a\u003e: BUG: Fix resize when it contains references (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/29970\"\u003e#29970\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30129\"\u003e#30129\u003c/a\u003e: BLD: update scipy-openblas, use -Dpkg_config_path (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30049\"\u003e#30049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30130\"\u003e#30130\u003c/a\u003e: BUG: Avoid compilation error of wrapper file generated with SWIG...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30157\"\u003e#30157\u003c/a\u003e: BLD: use scipy-openblas 0.3.30.7 (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30132\"\u003e#30132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30158\"\u003e#30158\u003c/a\u003e: DOC: Remove nonexistent \u003ccode\u003eorder\u003c/code\u003e parameter docs of \u003ccode\u003ema.asanyarray\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30185\"\u003e#30185\u003c/a\u003e: BUG: Fix check of PyMem_Calloc return value. (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30176\"\u003e#30176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30217\"\u003e#30217\u003c/a\u003e: DOC: fix links for newly rebuilt numpy-tutorials site\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30218\"\u003e#30218\u003c/a\u003e: BUG: Fix build on s390x with clang (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30214\"\u003e#30214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30237\"\u003e#30237\u003c/a\u003e: ENH: Make FPE blas check a runtime check for all apple arm systems\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.3.4 (Oct 15,  2025)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.3.4 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.3.4 release is a patch release split between a number of maintenance\nupdates and bug fixes. This release supports Python versions 3.11-3.14. This\nrelease is based on Python 3.14.0 final.\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/numpy/numpy/commit/c3d60fc8393f3ca3306b8ce8b6453d43737e3d90\"\u003e\u003ccode\u003ec3d60fc\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30238\"\u003e#30238\u003c/a\u003e from charris/prepare-2.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/11451fa35d49d8c809cdef87106417833bdacfbe\"\u003e\u003ccode\u003e11451fa\u003c/code\u003e\u003c/a\u003e REL: Prepare for the NumPy 2.3.5 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/eab5bd47df62782edceccf4cf99112851f7a8975\"\u003e\u003ccode\u003eeab5bd4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30237\"\u003e#30237\u003c/a\u003e from charris/backport-30102\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/7cea31aa6255994bcd17b3ee2f6dbf671eaa9598\"\u003e\u003ccode\u003e7cea31a\u003c/code\u003e\u003c/a\u003e Fixup merge of multiarraymodule.c\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/b8981736060011506e497c5bca24a75c5bddee39\"\u003e\u003ccode\u003eb898173\u003c/code\u003e\u003c/a\u003e Update numpy/_core/src/common/blas_utils.h\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/f755483d4858839044f159db7dacdf1818912393\"\u003e\u003ccode\u003ef755483\u003c/code\u003e\u003c/a\u003e Report FPE ignoring in matmul in \u003ccode\u003eshow_runtime()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/c47116f3858a2814222a7cd7b15ebc5eed9df4d0\"\u003e\u003ccode\u003ec47116f\u003c/code\u003e\u003c/a\u003e Move test to Python\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/bd7b93f105ddb3b3f200ceb6fb4516e7e87f3a81\"\u003e\u003ccode\u003ebd7b93f\u003c/code\u003e\u003c/a\u003e ooops, needs to be a calloc of course.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/83a1517159a2e33d05113e3341afb1df83ba615d\"\u003e\u003ccode\u003e83a1517\u003c/code\u003e\u003c/a\u003e Guard for HAVE_CB...\n\n_Description has been truncated_","html_url":"https://github.com/reichlab/cladetime/pull/187","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/reichlab%2Fcladetime/issues/187","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/187/packages"},{"uuid":"3707703842","node_id":"PR_kwDOPEWICs63wBFV","number":60,"state":"open","title":"Bump sphinx-toolbox from 4.0.0 to 4.1.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-12-08T19:21:17.000Z","updated_at":"2025-12-08T19:22:51.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.0","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.0.0 to 4.1.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/bbaed26084558ea5322b81bd9115b7c7603a3337\"\u003e\u003ccode\u003ebbaed26\u003c/code\u003e\u003c/a\u003e Fix warning for RequiresIOShield\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/69e5dbd249df3f79653268fbe9ee7d51188225b3\"\u003e\u003ccode\u003e69e5dbd\u003c/code\u003e\u003c/a\u003e Fix docs build and warn about | character in annotations before 3.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/79387fc9d183b492fb70b674bef40a9cfe8a6c25\"\u003e\u003ccode\u003e79387fc\u003c/code\u003e\u003c/a\u003e Deprecate and remove docs for requires.io shield as the service has shut down.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/caad11f3efb72d73795562048a5f5c582138cd95\"\u003e\u003ccode\u003ecaad11f\u003c/code\u003e\u003c/a\u003e Update tox configuration and appease mypy.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.0.0...v4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.0.0\u0026new-version=4.1.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/senzing-garage/geo-extractor/pull/60","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/senzing-garage%2Fgeo-extractor/issues/60","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/60/packages"},{"uuid":"3706794675","node_id":"PR_kwDOJ34dpM63s66w","number":139,"state":"open","title":"Bump sphinx-toolbox from 4.0.0 to 4.1.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":["docktermj"],"locked":false,"comments_count":6,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-12-08T15:07:32.000Z","updated_at":"2025-12-25T16:00:24.577Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.0","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.0.0 to 4.1.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/bbaed26084558ea5322b81bd9115b7c7603a3337\"\u003e\u003ccode\u003ebbaed26\u003c/code\u003e\u003c/a\u003e Fix warning for RequiresIOShield\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/69e5dbd249df3f79653268fbe9ee7d51188225b3\"\u003e\u003ccode\u003e69e5dbd\u003c/code\u003e\u003c/a\u003e Fix docs build and warn about | character in annotations before 3.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/79387fc9d183b492fb70b674bef40a9cfe8a6c25\"\u003e\u003ccode\u003e79387fc\u003c/code\u003e\u003c/a\u003e Deprecate and remove docs for requires.io shield as the service has shut down.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/caad11f3efb72d73795562048a5f5c582138cd95\"\u003e\u003ccode\u003ecaad11f\u003c/code\u003e\u003c/a\u003e Update tox configuration and appease mypy.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.0.0...v4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.0.0\u0026new-version=4.1.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/senzing-garage/sz-sdk-json-type-definition/pull/139","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/senzing-garage%2Fsz-sdk-json-type-definition/issues/139","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/139/packages"},{"uuid":"3705792585","node_id":"PR_kwDOINbBv863peeF","number":67,"state":"closed","title":"build(deps): bump the pipenv group across 1 directory with 8 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-13T10:42:15.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-08T10:48:05.000Z","updated_at":"2026-01-13T10:42:16.000Z","time_to_close":3110050,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"pipenv","update_count":8,"packages":[{"name":"sphinxcontrib-plantuml","old_version":"0.30","new_version":"0.31","repository_url":"https://github.com/sphinx-contrib/plantuml"},{"name":"mistune","old_version":"3.1.3","new_version":"3.1.4","repository_url":"https://github.com/lepture/mistune"},{"name":"pytest","old_version":"8.4.1","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"dynaconf","old_version":"3.2.11","new_version":"3.2.12","repository_url":"https://github.com/dynaconf/dynaconf"},{"name":"isort","old_version":"6.0.1","new_version":"7.0.0","repository_url":"https://github.com/PyCQA/isort"},{"name":"black","old_version":"25.1.0","new_version":"25.12.0","repository_url":"https://github.com/psf/black"},{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.0","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"},{"name":"sphinx-needs","old_version":"5.1.0","new_version":"6.2.0","repository_url":"https://github.com/useblocks/sphinx-needs"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pipenv group with 8 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [sphinxcontrib-plantuml](https://github.com/sphinx-contrib/plantuml) | `0.30` | `0.31` |\n| [mistune](https://github.com/lepture/mistune) | `3.1.3` | `3.1.4` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.4.1` | `8.4.2` |\n| [dynaconf](https://github.com/dynaconf/dynaconf) | `3.2.11` | `3.2.12` |\n| [isort](https://github.com/PyCQA/isort) | `6.0.1` | `7.0.0` |\n| [black](https://github.com/psf/black) | `25.1.0` | `25.12.0` |\n| [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) | `4.0.0` | `4.1.0` |\n| [sphinx-needs](https://github.com/useblocks/sphinx-needs) | `5.1.0` | `6.2.0` |\n\n\nUpdates `sphinxcontrib-plantuml` from 0.30 to 0.31\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/d15308432fc659319417a3f57f2190860c854b20\"\u003e\u003ccode\u003ed153084\u003c/code\u003e\u003c/a\u003e bump version to 0.31\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/123c26239e24d829c67950a4ee6b02d9a8a04179\"\u003e\u003ccode\u003e123c262\u003c/code\u003e\u003c/a\u003e search for ImageConverter capable of svg to pdf conversion after init\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/2d2adc477058594a81391cfda781f8c99be5f893\"\u003e\u003ccode\u003e2d2adc4\u003c/code\u003e\u003c/a\u003e github: bump actions, add Python 3.12 and 3.13, remove some middle/dead versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/27ece3637c0ec5fa91cacf511349e290a1440ba9\"\u003e\u003ccode\u003e27ece36\u003c/code\u003e\u003c/a\u003e tests: use inspect.getdoc() to get around breaking change in Python 3.13\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sphinx-contrib/plantuml/compare/0.30...0.31\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mistune` from 3.1.3 to 3.1.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lepture/mistune/releases\"\u003emistune's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1.4\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd fenced directive break rule in list parser, \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/412\"\u003e#412\u003c/a\u003e  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/412\"\u003elepture/mistune#412\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/ea3ecaf\"\u003e\u003c!-- raw HTML omitted --\u003e(ea3ec)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrevent remove unicode whitespace when parsing atx heading  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/9e72063\"\u003e\u003c!-- raw HTML omitted --\u003e(9e720)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/lepture/mistune/compare/v3.1.3...v3.1.4\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\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/lepture/mistune/blob/main/docs/changes.rst\"\u003emistune's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.1.4\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eReleased on Aug 29, 2025\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd fenced directive break rule in list parser.\u003c/li\u003e\n\u003cli\u003ePrevent removing unicode whitespace when parsing atx heading.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/b6d83e82cfa781285d77ab4f719b18b9559603b5\"\u003e\u003ccode\u003eb6d83e8\u003c/code\u003e\u003c/a\u003e chore: release 3.1.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/d7e33eb931c61b1d4e206af225678c898e0efa2d\"\u003e\u003ccode\u003ed7e33eb\u003c/code\u003e\u003c/a\u003e tests: add test case for \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/414\"\u003e#414\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/9e72063501c6b899945c1d69b785eef9ce6a36df\"\u003e\u003ccode\u003e9e72063\u003c/code\u003e\u003c/a\u003e fix: prevent remove unicode whitespace when parsing atx heading\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/cd1ad9183bc9a08366270cd442f6d26525fba8f7\"\u003e\u003ccode\u003ecd1ad91\u003c/code\u003e\u003c/a\u003e chore: update readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/e8d0a030ce2dd8e7a034fcf61c5f6a29ff677fdf\"\u003e\u003ccode\u003ee8d0a03\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/418\"\u003e#418\u003c/a\u003e from fernandonino/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/293fb8de1e475ed51d99e2bd6c2825b5777bc44c\"\u003e\u003ccode\u003e293fb8d\u003c/code\u003e\u003c/a\u003e Update community.rst\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/ea3ecaf4a5a6667de47f061b1b9a692d2952ad93\"\u003e\u003ccode\u003eea3ecaf\u003c/code\u003e\u003c/a\u003e fix: add fenced directive break rule in list parser, \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/412\"\u003e#412\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/lepture/mistune/compare/v3.1.3...v3.1.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 8.4.1 to 8.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.2\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.2 (2025-09-03)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13478\"\u003e#13478\u003c/a\u003e: Fixed a crash when using \u003ccode\u003econsole_output_style\u003c/code\u003e{.interpreted-text role=\u0026quot;confval\u0026quot;} with \u003ccode\u003etimes\u003c/code\u003e and a module is skipped.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13530\"\u003e#13530\u003c/a\u003e: Fixed a crash when using \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and \u003ccode\u003edecimal.Decimal\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} instances with the \u003ccode\u003edecimal.FloatOperation\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} trap set.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13549\"\u003e#13549\u003c/a\u003e: No longer evaluate type annotations in Python \u003ccode\u003e3.14\u003c/code\u003e when inspecting function signatures.\u003c/p\u003e\n\u003cp\u003eThis prevents crashes during module collection when modules do not explicitly use \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e and import types for annotations within a \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13559\"\u003e#13559\u003c/a\u003e: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in \u003ccode\u003epytest.Parser.addini\u003c/code\u003e{.interpreted-text role=\u0026quot;meth\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13563\"\u003e#13563\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now only imports \u003ccode\u003enumpy\u003c/code\u003e if NumPy is already in \u003ccode\u003esys.modules\u003c/code\u003e. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13577\"\u003e#13577\u003c/a\u003e: Clarify that \u003ccode\u003epytest_generate_tests\u003c/code\u003e is discovered in test modules/classes; other hooks must be in \u003ccode\u003econftest.py\u003c/code\u003e or plugins.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13480\"\u003e#13480\u003c/a\u003e: Self-testing: fixed a few test failures when run with \u003ccode\u003e-Wdefault\u003c/code\u003e or a similar override.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13547\"\u003e#13547\u003c/a\u003e: Self-testing: corrected expected message for \u003ccode\u003etest_doctest_unexpected_exception\u003c/code\u003e in Python \u003ccode\u003e3.14\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13684\"\u003e#13684\u003c/a\u003e: Make pytest's own testsuite insensitive to the presence of the \u003ccode\u003eCI\u003c/code\u003e environment variable -- by \u003ccode\u003eogrisel\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bfae4224fd554d3d7f2c277a4cc092b6ec6af3ae\"\u003e\u003ccode\u003ebfae422\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/89905381a163be30ae87d62e5f750e902d750c5f\"\u003e\u003ccode\u003e8990538\u003c/code\u003e\u003c/a\u003e Fix passenv CI in tox ini and make tests insensitive to the presence of the C...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ca676bfe005aebcb12f4146d1b0f1d2772e2cd5d\"\u003e\u003ccode\u003eca676bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13687\"\u003e#13687\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/e63f6e51c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/975a60a63ce385a44655596e254c1899feaa53e4\"\u003e\u003ccode\u003e975a60a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13686\"\u003e#13686\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/12bde8af6...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7723ce84b87ab08f86ddafcb342acc28ba5ec99d\"\u003e\u003ccode\u003e7723ce8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13683\"\u003e#13683\u003c/a\u003e from even-even/fix_Exeption_to_Exception_in_errorMe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7f05680d1301e0969b30bcb3c4b27433c9ee2b7\"\u003e\u003ccode\u003eb7f0568\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13685\"\u003e#13685\u003c/a\u003e from CoretexShadow/fix/docs-pytest-generate-tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2c94c4a6948ba53440818389298157fa5d5f94cd\"\u003e\u003ccode\u003e2c94c4a\u003c/code\u003e\u003c/a\u003e add missing colon (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13640\"\u003e#13640\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13641\"\u003e#13641\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c3d7684bc01c8c48d05145a30c5211ca8656c68c\"\u003e\u003ccode\u003ec3d7684\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13606\"\u003e#13606\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/5f9938563...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/dc6e3be2ddc75a149b6d102d9b7c82ee47a00cfa\"\u003e\u003ccode\u003edc6e3be\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13605\"\u003e#13605\u003c/a\u003e from The-Compiler/training-update-2025-07\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f87289c36c8dbe7740e3020f5546b6f8b0861ff0\"\u003e\u003ccode\u003ef87289c\u003c/code\u003e\u003c/a\u003e Fix crash with \u003ccode\u003etimes\u003c/code\u003e output style and skipped module (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13573\"\u003e#13573\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13579\"\u003e#13579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.4.1...8.4.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dynaconf` from 3.2.11 to 3.2.12\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dynaconf/dynaconf/releases\"\u003edynaconf's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.12\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIncremental improvment to access performance by \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1304\"\u003edynaconf/dynaconf#1304\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: get method to return Any type. by \u003ca href=\"https://github.com/rochacbruno\"\u003e\u003ccode\u003e@​rochacbruno\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1314\"\u003edynaconf/dynaconf#1314\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: add lru caching to \u003ccode\u003efind_the_correct_casing\u003c/code\u003e function by \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1326\"\u003edynaconf/dynaconf#1326\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\"\u003ehttps://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dynaconf/dynaconf/blob/3.2.12/CHANGELOG.md\"\u003edynaconf's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/pedro-psb/dynaconf/releases/tag/3.2.12\"\u003e3.2.12\u003c/a\u003e - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eget method to return Any type.. \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eremove unnecessary recursive evaluation call on Settings.get. \u003cem\u003eBy Pedro Brochado\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eimprove performance of settings access in a loop (part 1). \u003cem\u003eBy Pedro Brochado\u003c/em\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/7606f351ac460b15c56e7a538300de4a501c56e7\"\u003e\u003ccode\u003e7606f35\u003c/code\u003e\u003c/a\u003e Release version 3.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/da44e5182940299dd90ca3e2a0e0e3c23cb9ebf7\"\u003e\u003ccode\u003eda44e51\u003c/code\u003e\u003c/a\u003e perf: add lru caching to \u003ccode\u003efind_the_correct_casing\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1326\"\u003e#1326\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/b75eda0da141bdc29f707f2cb0c29e06b03a72bb\"\u003e\u003ccode\u003eb75eda0\u003c/code\u003e\u003c/a\u003e fix: get method to return Any type.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/4f3df1a47bcb71feddf7565f603e7994c65ede65\"\u003e\u003ccode\u003e4f3df1a\u003c/code\u003e\u003c/a\u003e misc: add some profile/perf scripts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/420acebf64e77ba475df94dfd7d409207e5e239d\"\u003e\u003ccode\u003e420aceb\u003c/code\u003e\u003c/a\u003e refactor: merge \u003cem\u003esafe\u003c/em\u003e{get,copy} into .get and .copy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/18c0c8422dc9651d57c76d1b098ad6fb3f75c09d\"\u003e\u003ccode\u003e18c0c84\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary recursive evaluation call on Settings.get\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/0fde96f2e0b71309e63800ddac8eceda062155a9\"\u003e\u003ccode\u003e0fde96f\u003c/code\u003e\u003c/a\u003e refactor: rewrite decorator as explicit call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/52efd9ed78d2187550e03a2ae5008661d5e28df9\"\u003e\u003ccode\u003e52efd9e\u003c/code\u003e\u003c/a\u003e Bump to version 3.2.12-dev0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isort` from 6.0.1 to 7.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/releases\"\u003eisort's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.0.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003ch2\u003e:boom: Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:rocket: Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eShow absolute paths in skipped file messages (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2416\"\u003e#2416\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSome fixes for Python 3.14 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on \u003ccode\u003e3.14\u003c/code\u003e and fix any bugs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2425\"\u003e#2425\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CHANGELOG.md + Fix Formatting and Grammar (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2419\"\u003e#2419\u003c/a\u003e) \u003ca href=\"https://github.com/lukbrew25\"\u003e\u003ccode\u003e@​lukbrew25\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix output of hanging indent for long lines with noqa (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2407\"\u003e#2407\u003c/a\u003e) \u003ca href=\"https://github.com/matan1008\"\u003e\u003ccode\u003e@​matan1008\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFormat with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTarget 3.10 for \u003ccode\u003eruff\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate development dependencies to latest version (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2426\"\u003e#2426\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update pre-commit examples to version 6.1.0 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2413\"\u003e#2413\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSmall cleanup for developer environment (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2418\"\u003e#2418\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/setup-python from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2411\"\u003e#2411\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.1.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs discussions channel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2410\"\u003e#2410\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse working isort version in pre-commit example (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2402\"\u003e#2402\u003c/a\u003e) \u003ca href=\"https://github.com/iainelder\"\u003e\u003ccode\u003e@​iainelder\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix typo in _get_files_from_dir_cached test (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2392\"\u003e#2392\u003c/a\u003e) \u003ca href=\"https://github.com/tiltingpenguin\"\u003e\u003ccode\u003e@​tiltingpenguin\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eResolve bandit warnings (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2379\"\u003e#2379\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd tox for cross-platform, parallel test suite execution (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2378\"\u003e#2378\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Project URLs to PyPI Side Panel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2387\"\u003e#2387\u003c/a\u003e) \u003ca href=\"https://github.com/guillermodotn\"\u003e\u003ccode\u003e@​guillermodotn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typos (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2376\"\u003e#2376\u003c/a\u003e) \u003ca href=\"https://github.com/co63oc\"\u003e\u003ccode\u003e@​co63oc\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd make bash scripts portable (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2377\"\u003e#2377\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 4 to 5 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2406\"\u003e#2406\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/blob/main/CHANGELOG.md\"\u003eisort's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003eNOTE: isort follows the \u003ca href=\"https://semver.org/\"\u003esemver\u003c/a\u003e versioning standard.\nFind out more about isort's release policy \u003ca href=\"https://pycqa.github.io/isort/docs/major_releases/release_policy\"\u003ehere\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eUnreleased\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved \u003ccode\u003e--old-finders\u003c/code\u003e and \u003ccode\u003e--magic-placement\u003c/code\u003e flags and \u003ccode\u003eold_finders\u003c/code\u003e configuration option. The legacy finder logic that relied on environment introspection has been removed (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2445\"\u003e#2445\u003c/a\u003e) \u003ca href=\"https://github.com/joao-faria-dev\"\u003e\u003ccode\u003e@​joao-faria-dev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e6.1.0 October 1 2025\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0a09c783808cfe77bb3269250f663ff733d23302\"\u003e\u003ccode\u003e0a09c78\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e from DanielNoord/python-314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0fee794a05b5d0c471ac80bc8943f9843ca29644\"\u003e\u003ccode\u003e0fee794\u003c/code\u003e\u003c/a\u003e Add 3.14 to \u003ccode\u003estdlibds\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/332a1ad0b68bf3a3acac055b0ec3666408b3b425\"\u003e\u003ccode\u003e332a1ad\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003ezstandard\u003c/code\u003e for 3.14 compat\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/f756e5653afcf6d79ec4d0240b1868cbebd8fafd\"\u003e\u003ccode\u003ef756e56\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/52f5134889d345ff35afdcb86501c8221b804c70\"\u003e\u003ccode\u003e52f5134\u003c/code\u003e\u003c/a\u003e Format with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/012aa69fcadb3c89ff92a3d96aa449be7ae6746f\"\u003e\u003ccode\u003e012aa69\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/89773dbb371192541092657972a74e9ce0bbbc74\"\u003e\u003ccode\u003e89773db\u003c/code\u003e\u003c/a\u003e Target 3.10 with \u003ccode\u003eruff\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/933e382f98a0c77b4c6e33c4e3ef12bd57192884\"\u003e\u003ccode\u003e933e382\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e from DanielNoord/drop-39\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/8b6e00cbe643a216da57fed4baa282d0a4a1b829\"\u003e\u003ccode\u003e8b6e00c\u003c/code\u003e\u003c/a\u003e Remove support for Python 3.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/b5f9f296ad873734e8caa3a731f27360648d9b37\"\u003e\u003ccode\u003eb5f9f29\u003c/code\u003e\u003c/a\u003e Bump profile plugin to 3.10+ and re-lock\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/isort/compare/6.0.1...7.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `black` from 25.1.0 to 25.12.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e25.12.0\u003c/h2\u003e\n\u003cp\u003ePlease test out the draft 2026 style in version 26.1a1! This style will be finalized in\nthe January release (26.1.0). Most of the changes in \u003ccode\u003e--preview\u003c/code\u003e will be in the 2026\nstable style, but not all.\n\u003ca href=\"https://redirect.github.com/psf/black/issues/4042\"\u003ePlease share your feedback!\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis release (25.12.0) will still produce the 2025 style.\u003c/p\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBlack no longer supports running with Python 3.9 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4842\"\u003e#4842\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bug where comments preceding \u003ccode\u003e# fmt: off\u003c/code\u003e/\u003ccode\u003e# fmt: on\u003c/code\u003e blocks were incorrectly\nremoved, particularly affecting Jupytext's \u003ccode\u003e# %% [markdown]\u003c/code\u003e comments (\u003ca href=\"https://redirect.github.com/psf/black/issues/4845\"\u003e#4845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash when multiple \u003ccode\u003e# fmt: skip\u003c/code\u003e comments are used in a multi-part if-clause, on\nstring literals, or on dictionary entries with long lines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4872\"\u003e#4872\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix possible crash when \u003ccode\u003efmt: \u003c/code\u003e directives aren't on the top level (\u003ca href=\"https://redirect.github.com/psf/black/issues/4856\"\u003e#4856\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePreview style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003efmt: skip\u003c/code\u003e skipping the line after instead of the line it's on (\u003ca href=\"https://redirect.github.com/psf/black/issues/4855\"\u003e#4855\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary parentheses from the left-hand side of assignments while preserving\nmagic trailing commas and intentional multiline formatting (\u003ca href=\"https://redirect.github.com/psf/black/issues/4865\"\u003e#4865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e crashing on \u003ccode\u003ewith\u003c/code\u003e statements (\u003ca href=\"https://redirect.github.com/psf/black/issues/4853\"\u003e#4853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e crashing on annotated parameters (\u003ca href=\"https://redirect.github.com/psf/black/issues/4854\"\u003e#4854\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix new lines being added after imports with \u003ccode\u003e# fmt: skip\u003c/code\u003e on them (\u003ca href=\"https://redirect.github.com/psf/black/issues/4894\"\u003e#4894\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReleases now include arm64 Windows binaries and wheels (\u003ca href=\"https://redirect.github.com/psf/black/issues/4814\"\u003e#4814\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eIntegrations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eoutput-file\u003c/code\u003e input to GitHub Action \u003ccode\u003epsf/black\u003c/code\u003e to write formatter output to a\nfile for artifact capture and log cleanliness (\u003ca href=\"https://redirect.github.com/psf/black/issues/4824\"\u003e#4824\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e25.11.0\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnable base 3.14 support (\u003ca href=\"https://redirect.github.com/psf/black/issues/4804\"\u003e#4804\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for the new Python 3.14 t-string syntax introduced by PEP 750 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4805\"\u003e#4805\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bug where comments between \u003ccode\u003e# fmt: off\u003c/code\u003e and \u003ccode\u003e# fmt: on\u003c/code\u003e were reformatted (\u003ca href=\"https://redirect.github.com/psf/black/issues/4811\"\u003e#4811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eComments containing fmt directives now preserve their exact formatting instead of\nbeing normalized (\u003ca href=\"https://redirect.github.com/psf/black/issues/4811\"\u003e#4811\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e25.12.0\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBlack no longer supports running with Python 3.9 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4842\"\u003e#4842\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bug where comments preceding \u003ccode\u003e# fmt: off\u003c/code\u003e/\u003ccode\u003e# fmt: on\u003c/code\u003e blocks were incorrectly\nremoved, particularly affecting Jupytext's \u003ccode\u003e# %% [markdown]\u003c/code\u003e comments (\u003ca href=\"https://redirect.github.com/psf/black/issues/4845\"\u003e#4845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash when multiple \u003ccode\u003e# fmt: skip\u003c/code\u003e comments are used in a multi-part if-clause, on\nstring literals, or on dictionary entries with long lines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4872\"\u003e#4872\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix possible crash when \u003ccode\u003efmt: \u003c/code\u003e directives aren't on the top level (\u003ca href=\"https://redirect.github.com/psf/black/issues/4856\"\u003e#4856\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePreview style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003efmt: skip\u003c/code\u003e skipping the line after instead of the line it's on (\u003ca href=\"https://redirect.github.com/psf/black/issues/4855\"\u003e#4855\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary parentheses from the left-hand side of assignments while preserving\nmagic trailing commas and intentional multiline formatting (\u003ca href=\"https://redirect.github.com/psf/black/issues/4865\"\u003e#4865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e crashing on \u003ccode\u003ewith\u003c/code\u003e statements (\u003ca href=\"https://redirect.github.com/psf/black/issues/4853\"\u003e#4853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e crashing on annotated parameters (\u003ca href=\"https://redirect.github.com/psf/black/issues/4854\"\u003e#4854\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix new lines being added after imports with \u003ccode\u003e# fmt: skip\u003c/code\u003e on them (\u003ca href=\"https://redirect.github.com/psf/black/issues/4894\"\u003e#4894\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReleases now include arm64 Windows binaries and wheels (\u003ca href=\"https://redirect.github.com/psf/black/issues/4814\"\u003e#4814\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eIntegrations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eoutput-file\u003c/code\u003e input to GitHub Action \u003ccode\u003epsf/black\u003c/code\u003e to write formatter output to a\nfile for artifact capture and log cleanliness (\u003ca href=\"https://redirect.github.com/psf/black/issues/4824\"\u003e#4824\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e25.11.0\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnable base 3.14 support (\u003ca href=\"https://redirect.github.com/psf/black/issues/4804\"\u003e#4804\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for the new Python 3.14 t-string syntax introduced by PEP 750 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4805\"\u003e#4805\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bug where comments between \u003ccode\u003e# fmt: off\u003c/code\u003e and \u003ccode\u003e# fmt: on\u003c/code\u003e were reformatted (\u003ca href=\"https://redirect.github.com/psf/black/issues/4811\"\u003e#4811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eComments containing fmt directives now preserve their exact formatting instead of\nbeing normalized (\u003ca href=\"https://redirect.github.com/psf/black/issues/4811\"\u003e#4811\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePreview style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove \u003ccode\u003emultiline_string_handling\u003c/code\u003e from \u003ccode\u003e--unstable\u003c/code\u003e to \u003ccode\u003e--preview\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4760\"\u003e#4760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug where module docstrings would be treated as normal strings if preceded by\ncomments (\u003ca href=\"https://redirect.github.com/psf/black/issues/4764\"\u003e#4764\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/psf/black/commit/782e5605c86aab56be6f905da10dcd3e463fd9c2\"\u003e\u003ccode\u003e782e560\u003c/code\u003e\u003c/a\u003e Pin actions/checkout@v5.0.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4895\"\u003e#4895\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/f0f40945c1b0ebaa9ca733aca517610574c451d6\"\u003e\u003ccode\u003ef0f4094\u003c/code\u003e\u003c/a\u003e Fix new lines being added after imports with \u003ccode\u003e# fmt: skip\u003c/code\u003e on them (\u003ca href=\"https://redirect.github.com/psf/black/issues/4894\"\u003e#4894\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/70fc194172184861aafb418c124824cae0fbe3b0\"\u003e\u003ccode\u003e70fc194\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Fix \u003ccode\u003e# fmt: skip\u003c/code\u003e ignored in deeply nested expressions\u0026quot; (\u003ca href=\"https://redirect.github.com/psf/black/issues/4893\"\u003e#4893\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7044b145f4826e0d6e07178d89666856a8e37aff\"\u003e\u003ccode\u003e7044b14\u003c/code\u003e\u003c/a\u003e Prepare 25.12.0 release (\u003ca href=\"https://redirect.github.com/psf/black/issues/4891\"\u003e#4891\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/5b470f0e577f3c39e0f7d668934d587c0733a652\"\u003e\u003ccode\u003e5b470f0\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003e# fmt: skip\u003c/code\u003e ignored in deeply nested expressions (\u003ca href=\"https://redirect.github.com/psf/black/issues/4883\"\u003e#4883\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/1b342ef5b0433fc1ed61a7e05a65744bef706fc9\"\u003e\u003ccode\u003e1b342ef\u003c/code\u003e\u003c/a\u003e Fix crash when multiple \u003ccode\u003e# fmt: skip\u003c/code\u003e comments are used in multi-part if-clau...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7b265f16634155dafcca65f6122ef7ed8d14a67f\"\u003e\u003ccode\u003e7b265f1\u003c/code\u003e\u003c/a\u003e Pin Hatch to hopefully fix Docker builds (\u003ca href=\"https://redirect.github.com/psf/black/issues/4878\"\u003e#4878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/c9523f463fdc9d9f9f0e61ca92d9b37acdf0d8fc\"\u003e\u003ccode\u003ec9523f4\u003c/code\u003e\u003c/a\u003e Attempt to fix Docker build failures (\u003ca href=\"https://redirect.github.com/psf/black/issues/4876\"\u003e#4876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/0f376e0c35bcb29f87ce18eace30333a3e105841\"\u003e\u003ccode\u003e0f376e0\u003c/code\u003e\u003c/a\u003e Fix crashes when fmt directives are indented (\u003ca href=\"https://redirect.github.com/psf/black/issues/4856\"\u003e#4856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/a8bfcc1040fdfce2e02cdd85dc8bf4e7abe0462f\"\u003e\u003ccode\u003ea8bfcc1\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003efmt: skip\u003c/code\u003e skipping the line after instead of the line it's on (\u003ca href=\"https://redirect.github.com/psf/black/issues/4855\"\u003e#4855\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/25.1.0...25.12.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-toolbox` from 4.0.0 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/bbaed26084558ea5322b81bd9115b7c7603a3337\"\u003e\u003ccode\u003ebbaed26\u003c/code\u003e\u003c/a\u003e Fix warning for RequiresIOShield\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/69e5dbd249df3f79653268fbe9ee7d51188225b3\"\u003e\u003ccode\u003e69e5dbd\u003c/code\u003e\u003c/a\u003e Fix docs build and warn about | character in annotations before 3.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/79387fc9d183b492fb70b674bef40a9cfe8a6c25\"\u003e\u003ccode\u003e79387fc\u003c/code\u003e\u003c/a\u003e Deprecate and remove docs for requires.io shield as the service has shut down.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/caad11f3efb72d73795562048a5f5c582138cd95\"\u003e\u003ccode\u003ecaad11f\u003c/code\u003e\u003c/a\u003e Update tox configuration and appease mypy.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.0.0...v4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-needs` from 5.1.0 to 6.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/useblocks/sphinx-needs/releases\"\u003esphinx-needs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🧪 Fix schema benchmark tests by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1577\"\u003euseblocks/sphinx-needs#1577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Improve schema process benchmarking by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1579\"\u003euseblocks/sphinx-needs#1579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Reduce nested functions in \u003ccode\u003eget_ontology_warnings\u003c/code\u003e by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1578\"\u003euseblocks/sphinx-needs#1578\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema validation performance (pre-compute validators) by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1581\"\u003euseblocks/sphinx-needs#1581\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema validation performance (use jsonschema-rs) by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1582\"\u003euseblocks/sphinx-needs#1582\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema validation performance (improve reduce_needs) by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1583\"\u003euseblocks/sphinx-needs#1583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema validation performance (cache recursive validators) by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1584\"\u003euseblocks/sphinx-needs#1584\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1421\"\u003euseblocks/sphinx-needs#1421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🚀 Release v6.2.0 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1585\"\u003euseblocks/sphinx-needs#1585\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/useblocks/sphinx-needs/compare/6.1.1...6.2.0\"\u003ehttps://github.com/useblocks/sphinx-needs/compare/6.1.1...6.2.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev6.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Allow . in schema regex by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1568\"\u003euseblocks/sphinx-needs#1568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 Fix schema network type injection by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1570\"\u003euseblocks/sphinx-needs#1570\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 needs.json for nullable fields by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1571\"\u003euseblocks/sphinx-needs#1571\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Remove mutable global variables by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1575\"\u003euseblocks/sphinx-needs#1575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eneeds_schema_validation_enabled\u003c/code\u003e configuration by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1574\"\u003euseblocks/sphinx-needs#1574\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eallow_type_coercion\u003c/code\u003e configuration for external/import \u003ccode\u003eneeds.json\u003c/code\u003e reads by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1573\"\u003euseblocks/sphinx-needs#1573\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/useblocks/sphinx-needs/compare/6.1.0...6.1.1\"\u003ehttps://github.com/useblocks/sphinx-needs/compare/6.1.0...6.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev6.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix schema rule severity by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1535\"\u003euseblocks/sphinx-needs#1535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Co-locate dynamic and variant function docs by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1544\"\u003euseblocks/sphinx-needs#1544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Add snapshot test for field schema by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1545\"\u003euseblocks/sphinx-needs#1545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Derive core \u003ccode\u003eFieldSchema\u003c/code\u003e from \u003ccode\u003eNeedsCoreFields\u003c/code\u003e by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1546\"\u003euseblocks/sphinx-needs#1546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Make \u003ccode\u003eincoming\u003c/code\u003e/\u003ccode\u003eoutgoing\u003c/code\u003e keys optional in \u003ccode\u003eneeds_extra_links\u003c/code\u003e by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1548\"\u003euseblocks/sphinx-needs#1548\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Removed unused code by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1550\"\u003euseblocks/sphinx-needs#1550\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Enable link to full schema example by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1538\"\u003euseblocks/sphinx-needs#1538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Variable typo by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1555\"\u003euseblocks/sphinx-needs#1555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Improve schema docs by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1554\"\u003euseblocks/sphinx-needs#1554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix linkchecks by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1556\"\u003euseblocks/sphinx-needs#1556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Run new ubc action on docs by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1541\"\u003euseblocks/sphinx-needs#1541\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema severity handling by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1561\"\u003euseblocks/sphinx-needs#1561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e♻️ Early resolution of schema_debug_path by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1563\"\u003euseblocks/sphinx-needs#1563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🚀 Release v6.1.0 by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1565\"\u003euseblocks/sphinx-needs#1565\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/useblocks/sphinx-needs/compare/6.0.1...6.1.0\"\u003ehttps://github.com/useblocks/sphinx-needs/compare/6.0.1...6.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev6.0.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e📚 Add release labels to changelog by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1523\"\u003euseblocks/sphinx-needs#1523\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/useblocks/sphinx-needs/blob/master/docs/changelog.rst\"\u003esphinx-needs's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.2.0\u003c/h2\u003e\n\u003cp\u003e:Released: 28.11.2025\n:Full Changelog: \u003ccode\u003ev6.1.1...v6.2.0 \u0026lt;https://github.com/useblocks/sphinx-needs/compare/6.1.1...92462bbc0a9559e01e1fa6b874a1031472dec1bf\u0026gt;\u003c/code\u003e__\u003c/p\u003e\n\u003cp\u003eThis release introduces performance improvements for schema validation, to make it ~3 times faster (:pr:\u003ccode\u003e1581\u003c/code\u003e, :pr:\u003ccode\u003e1582\u003c/code\u003e, :pr:\u003ccode\u003e1583\u003c/code\u003e, :pr:\u003ccode\u003e1584\u003c/code\u003e).\u003c/p\u003e\n\u003cp\u003eThis includes a change in dependencies, from \u003ccode\u003ejsonschema\u003c/code\u003e to \u003ccode\u003ejsonschema-rs\u003c/code\u003e for the core validation engine.\u003c/p\u003e\n\u003cp\u003e.. _\u003ccode\u003erelease:6.1.1\u003c/code\u003e:\u003c/p\u003e\n\u003ch2\u003e6.1.1\u003c/h2\u003e\n\u003cp\u003e:Released: 25.11.2025\n:Full Changelog: \u003ccode\u003ev6.1.0...v6.1.1 \u0026lt;https://github.com/useblocks/sphinx-needs/compare/6.1.0...6.1.1\u0026gt;\u003c/code\u003e__\u003c/p\u003e\n\u003cp\u003eThis release focuses on schema validation improvements and bug fixes.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e✨ Add \u003ccode\u003eneeds_schema_validation_enabled\u003c/code\u003e configuration (:pr:\u003ccode\u003e1574\u003c/code\u003e)\u003c/p\u003e\n\u003cp\u003eNew configuration option to disable schema validation entirely.\nThis is set to \u003ccode\u003eTrue\u003c/code\u003e by default, for backward compatibility,\nand provides an opt-out mechanism when schema validation is not needed.\u003c/p\u003e\n\u003cp\u003eSee :ref:\u003ccode\u003eneeds_schema_validation_enabled\u003c/code\u003e for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e✨ Add \u003ccode\u003eallow_type_coercion\u003c/code\u003e configuration for external/import \u003ccode\u003eneeds.json\u003c/code\u003e reads (:pr:\u003ccode\u003e1573\u003c/code\u003e)\u003c/p\u003e\n\u003cp\u003eNew configuration option for \u003ccode\u003eneeds_external_needs\u003c/code\u003e and the \u003ccode\u003eneedimport\u003c/code\u003e directive\nthat controls whether field values should be automatically coerced to expected types.\nFor example, enables/disables parsing comma-separated strings like \u003ccode\u003e\u0026quot;a,b,c\u0026quot;\u003c/code\u003e into\nlist types like \u003ccode\u003e[\u0026quot;a\u0026quot;, \u0026quot;b\u0026quot;, \u0026quot;c\u0026quot;]\u003c/code\u003e.\nSet to \u003ccode\u003eTrue\u003c/code\u003e by default for backward compatibility.\nSetting to \u003ccode\u003eFalse\u003c/code\u003e may improve performance by skipping additional parsing.\u003c/p\u003e\n\u003cp\u003eSee :ref:\u003ccode\u003eneeds_external_needs\u003c/code\u003e and :ref:\u003ccode\u003eneedimport\u003c/code\u003e for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e👌 Allow \u003ccode\u003e\\.\u003c/code\u003e in schema regex patterns (:pr:\u003ccode\u003e1568\u003c/code\u003e)\u003c/p\u003e\n\u003cp\u003eThe regex pattern \u003ccode\u003e\\.\u003c/code\u003e is now allowed in schema validations.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e🐛 Fix schema network type injection (:pr:\u003ccode\u003e1570\u003c/code\u003e)\u003c/p\u003e\n\u003cp\u003eFixed type injection mechanism that was failing for link types called \u003ccode\u003econtains\u003c/code\u003e or \u003ccode\u003eitems\u003c/code\u003e.\nConstrained the injection to specific schema path structure locations.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e🐛 Fix \u003ccode\u003eneeds.json\u003c/code\u003e schema for nullable fields (:pr:\u003ccode\u003e1571\u003c/code\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/cd2024fe2f4eb3e1c28616a47493e3e8728ea8a9\"\u003e\u003ccode\u003ecd2024f\u003c/code\u003e\u003c/a\u003e 🚀 Release v6.2.0 (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1585\"\u003e#1585\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/92462bbc0a9559e01e1fa6b874a1031472dec1bf\"\u003e\u003ccode\u003e92462bb\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1421\"\u003e#1421\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/6793c963429a12c6e603d6973dc5e4cc5d405b40\"\u003e\u003ccode\u003e6793c96\u003c/code\u003e\u003c/a\u003e 👌 Improve schema validation performance (cache recursive validators) (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1584\"\u003e#1584\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/c6d4eb9ad6e788522613eb6be7ebbb48eb5efe32\"\u003e\u003ccode\u003ec6d4eb9\u003c/code\u003e\u003c/a\u003e 👌 Improve schema validation performance (improve reduce_needs) (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1583\"\u003e#1583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/43ee1e60806eb44e47b8b92422ac9256825c39dd\"\u003e\u003ccode\u003e43ee1e6\u003c/code\u003e\u003c/a\u003e 👌 Improve schema validation performance (use jsonschema-rs) (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1582\"\u003e#1582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/c4abff00fec914800d17eabd443e81c1a8e87195\"\u003e\u003ccode\u003ec4abff0\u003c/code\u003e\u003c/a\u003e 👌 Improve schema validation performance (pre-compute validators) (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/1eb8cf0a279d7547f4b9b174753f61ef04400549\"\u003e\u003ccode\u003e1eb8cf0\u003c/code\u003e\u003c/a\u003e 🔧 Reduce nested functions in \u003ccode\u003eget_ontology_warnings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1578\"\u003e#1578\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/8817754d9be6a75cf09e74d5a2da5e2938c87ec9\"\u003e\u003ccode\u003e8817754\u003c/code\u003e\u003c/a\u003e 🧪 Improve schema process benchmarking (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1579\"\u003e#1579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/60b15806a071df8c8f20245cf8ce23c9fc22de66\"\u003e\u003ccode\u003e60b1580\u003c/code\u003e\u003c/a\u003e 🧪 Fix schema benchmark tests (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1577\"\u003e#1577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/f66bd94c54ef64e69a7794b09ab201172251e720\"\u003e\u003ccode\u003ef66bd94\u003c/code\u003e\u003c/a\u003e 🚀 Release v6.1.1 (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/useblocks/sphinx-needs/compare/5.1.0...6.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/kairoaraujo/repository-service-tuf/pull/67","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/kairoaraujo%2Frepository-service-tuf/issues/67","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/67/packages"},{"uuid":"3705220955","node_id":"PR_kwDOPVoTmc63nhus","number":29,"state":"closed","title":"Update sphinx-toolbox requirement from ~=4.0.0 to ~=4.1.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-02T08:17:27.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-08T08:25:44.000Z","updated_at":"2026-01-02T08:17:29.000Z","time_to_close":2159503,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Update","packages":[{"name":"sphinx-toolbox","old_version":"~=4.0.0","new_version":"~=4.1.0","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) 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/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003ch2\u003e4.0.0\u003c/h2\u003e\n\u003cp\u003eThe :mod:\u003ccode\u003esphinx_toolbox.source\u003c/code\u003e module no longer enables the :mod:\u003ccode\u003esphinx_toolbox.github\u003c/code\u003e extension automatically.\nIf you have :confval:\u003ccode\u003esource_link_target\u003c/code\u003e set to \u003ccode\u003e'GitHub'\u003c/code\u003e you may need to enable the extension manually.\u003c/p\u003e\n\u003ch2\u003e3.10.0\u003c/h2\u003e\n\u003cp\u003eAllow GitHub branch to be specified for :rst:dir:\u003ccode\u003einstallation\u003c/code\u003e directive.\u003c/p\u003e\n\u003ch2\u003e3.9.0\u003c/h2\u003e\n\u003cp\u003eImproved support for Sphinx 8.1+\u003c/p\u003e\n\u003ch2\u003e3.8.2\u003c/h2\u003e\n\u003cp\u003e(BUG) Fix GitHub issue title parsing.\u003c/p\u003e\n\u003ch2\u003e3.8.0\u003c/h2\u003e\n\u003cp\u003eImproved support for Sphinx 7.3+\u003c/p\u003e\n\u003ch2\u003e3.7.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd :class:\u003ccode\u003esphinx_toolbox.more_autodoc.variables.PropertyDocumenter\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUse sphinx's \u003ccode\u003eHTML5Translator\u003c/code\u003e over \u003ccode\u003eHTMLTranslator\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.6.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocumentation fixes in :mod:\u003ccode\u003e~.collapse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eDunder methods added in Python 3.13 are hidden by :mod:\u003ccode\u003e~.autoprotocol\u003c/code\u003e (\u003ccode\u003e__non_callable_proto_members__\u003c/code\u003e, \u003ccode\u003e__firstlineno__\u003c/code\u003e, \u003ccode\u003e__replace__\u003c/code\u003e, \u003ccode\u003e__static_attributes__\u003c/code\u003e)\u003c/li\u003e\n\u003cli\u003emod:\u003ccode\u003e~.autoprotocol\u003c/code\u003e doesn't document subclasses of protocols, unless :class:\u003ccode\u003e~.Protocol\u003c/code\u003e is one of their direct base classes.\u003c/li\u003e\n\u003cli\u003eSupport for Sphinx 7.x\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e3.5.0\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/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/bbaed26084558ea5322b81bd9115b7c7603a3337\"\u003e\u003ccode\u003ebbaed26\u003c/code\u003e\u003c/a\u003e Fix warning for RequiresIOShield\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/69e5dbd249df3f79653268fbe9ee7d51188225b3\"\u003e\u003ccode\u003e69e5dbd\u003c/code\u003e\u003c/a\u003e Fix docs build and warn about | character in annotations before 3.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/79387fc9d183b492fb70b674bef40a9cfe8a6c25\"\u003e\u003ccode\u003e79387fc\u003c/code\u003e\u003c/a\u003e Deprecate and remove docs for requires.io shield as the service has shut down.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/caad11f3efb72d73795562048a5f5c582138cd95\"\u003e\u003ccode\u003ecaad11f\u003c/code\u003e\u003c/a\u003e Update tox configuration and appease mypy.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.0.0...v4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore 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/aholmes/aaronholmes.net/pull/29","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/aholmes%2Faaronholmes.net/issues/29","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/29/packages"},{"uuid":"3704847239","node_id":"PR_kwDOKc-xss63mQ9Z","number":81,"state":"open","title":"Bump sphinx-toolbox from 4.0.0 to 4.1.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-12-08T06:25:24.000Z","updated_at":"2025-12-08T06:26:23.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.0","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.0.0 to 4.1.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/bbaed26084558ea5322b81bd9115b7c7603a3337\"\u003e\u003ccode\u003ebbaed26\u003c/code\u003e\u003c/a\u003e Fix warning for RequiresIOShield\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/69e5dbd249df3f79653268fbe9ee7d51188225b3\"\u003e\u003ccode\u003e69e5dbd\u003c/code\u003e\u003c/a\u003e Fix docs build and warn about | character in annotations before 3.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/79387fc9d183b492fb70b674bef40a9cfe8a6c25\"\u003e\u003ccode\u003e79387fc\u003c/code\u003e\u003c/a\u003e Deprecate and remove docs for requires.io shield as the service has shut down.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/caad11f3efb72d73795562048a5f5c582138cd95\"\u003e\u003ccode\u003ecaad11f\u003c/code\u003e\u003c/a\u003e Update tox configuration and appease mypy.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.0.0...v4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.0.0\u0026new-version=4.1.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/Senzing/mapper-safegraph/pull/81","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Senzing%2Fmapper-safegraph/issues/81","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/81/packages"},{"uuid":"3704597719","node_id":"PR_kwDOMftbFc63lcFZ","number":186,"state":"closed","title":"Bump the py-updates group across 1 directory with 77 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-12-15T04:19:04.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-08T04:28:42.000Z","updated_at":"2025-12-15T04:19:06.000Z","time_to_close":604222,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"py-updates","update_count":77,"packages":[{"name":"awscli","old_version":"1.40.17","new_version":"1.43.10","repository_url":"https://github.com/aws/aws-cli"},{"name":"polars","old_version":"1.28.1","new_version":"1.35.2","repository_url":"https://github.com/pola-rs/polars"},{"name":"requests","old_version":"2.32.3","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"biopython","old_version":"1.85","new_version":"1.86","repository_url":"https://github.com/biopython/biopython"},{"name":"boto3","old_version":"1.38.18","new_version":"1.42.4","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.38.18","new_version":"1.42.4","repository_url":"https://github.com/boto/botocore"},{"name":"certifi","old_version":"2025.4.26","new_version":"2025.11.12","repository_url":"https://github.com/certifi/python-certifi"},{"name":"charset-normalizer","old_version":"3.4.2","new_version":"3.4.4","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"cloudpathlib","old_version":"0.21.1","new_version":"0.23.0","repository_url":"https://github.com/drivendataorg/cloudpathlib"},{"name":"docutils","old_version":"0.19","new_version":"0.22.3","repository_url":"https://github.com/rtfd/recommonmark"},{"name":"idna","old_version":"3.10","new_version":"3.11","repository_url":"https://github.com/kjd/idna"},{"name":"jellyfish","old_version":"1.2.0","new_version":"1.2.1"},{"name":"markdown-it-py","old_version":"3.0.0","new_version":"4.0.0","repository_url":"https://github.com/executablebooks/markdown-it-py"},{"name":"numpy","old_version":"2.2.5","new_version":"2.3.5","repository_url":"https://github.com/numpy/numpy"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"pyarrow","old_version":"20.0.0","new_version":"22.0.0","repository_url":"https://github.com/apache/arrow"},{"name":"pygments","old_version":"2.19.1","new_version":"2.19.2","repository_url":"https://github.com/pygments/pygments"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"rich","old_version":"14.0.0","new_version":"14.2.0","repository_url":"https://github.com/Textualize/rich"},{"name":"rsa","old_version":"4.7.2","new_version":"4.9.1","repository_url":"https://github.com/sybrenstuvel/python-rsa"},{"name":"s3transfer","old_version":"0.12.0","new_version":"0.16.0","repository_url":"https://github.com/boto/s3transfer"},{"name":"structlog","old_version":"25.3.0","new_version":"25.5.0","repository_url":"https://github.com/hynek/structlog"},{"name":"urllib3","old_version":"2.4.0","new_version":"2.6.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"zstandard","old_version":"0.23.0","new_version":"0.25.0","repository_url":"https://github.com/indygreg/python-zstandard"},{"name":"boto3-stubs","old_version":"1.38.18","new_version":"1.42.4","repository_url":"https://github.com/youtype/mypy_boto3_builder"},{"name":"botocore-stubs","old_version":"1.38.18","new_version":"1.42.4","repository_url":"https://github.com/youtype/botocore-stubs"},{"name":"cffi","old_version":"1.17.1","new_version":"2.0.0","repository_url":"https://github.com/python-cffi/cffi"},{"name":"coverage","old_version":"7.8.0","new_version":"7.12.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cryptography","old_version":"44.0.3","new_version":"46.0.3","repository_url":"https://github.com/pyca/cryptography"},{"name":"freezegun","old_version":"1.5.1","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"iniconfig","old_version":"2.1.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"markupsafe","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/pallets/markupsafe"},{"name":"moto","old_version":"5.1.4","new_version":"5.1.18","repository_url":"https://github.com/getmoto/moto"},{"name":"mypy","old_version":"1.15.0","new_version":"1.19.0","repository_url":"https://github.com/python/mypy"},{"name":"mypy-boto3-s3","old_version":"1.38.0","new_version":"1.42.3","repository_url":"https://github.com/youtype/mypy_boto3_builder"},{"name":"pycparser","old_version":"2.22","new_version":"2.23","repository_url":"https://github.com/eliben/pycparser"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"responses","old_version":"0.25.7","new_version":"0.25.8","repository_url":"https://github.com/getsentry/responses"},{"name":"ruff","old_version":"0.11.10","new_version":"0.14.8","repository_url":"https://github.com/astral-sh/ruff"},{"name":"types-awscrt","old_version":"0.27.2","new_version":"0.29.2","repository_url":"https://github.com/youtype/types-awscrt"},{"name":"types-requests","old_version":"2.32.0.20250515","new_version":"2.32.4.20250913","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-s3transfer","old_version":"0.12.0","new_version":"0.15.0","repository_url":"https://github.com/youtype/types-s3transfer"},{"name":"typing-extensions","old_version":"4.13.2","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"werkzeug","old_version":"3.1.3","new_version":"3.1.4","repository_url":"https://github.com/pallets/werkzeug"},{"name":"xmltodict","old_version":"0.14.2","new_version":"1.0.2","repository_url":"https://github.com/martinblech/xmltodict"},{"name":"alabaster","old_version":"0.7.16","new_version":"1.0.0","repository_url":"https://github.com/sphinx-doc/alabaster"},{"name":"anyio","old_version":"4.9.0","new_version":"4.12.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"beautifulsoup4","old_version":"4.13.4","new_version":"4.14.3"},{"name":"cachecontrol","old_version":"0.14.3","new_version":"0.14.4","repository_url":"https://github.com/psf/cachecontrol"},{"name":"click","old_version":"8.2.0","new_version":"8.3.1","repository_url":"https://github.com/pallets/click"},{"name":"contourpy","old_version":"1.3.2","new_version":"1.3.3","repository_url":"https://github.com/contourpy/contourpy"},{"name":"filelock","old_version":"3.18.0","new_version":"3.20.0","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"fonttools","old_version":"4.58.0","new_version":"4.61.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"furo","old_version":"2024.8.6","new_version":"2025.9.25","repository_url":"https://github.com/pradyunsg/furo"},{"name":"kiwisolver","old_version":"1.4.8","new_version":"1.4.9","repository_url":"https://github.com/nucleic/kiwi"},{"name":"matplotlib","old_version":"3.10.3","new_version":"3.10.7","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mdit-py-plugins","old_version":"0.4.2","new_version":"0.5.0","repository_url":"https://github.com/executablebooks/mdit-py-plugins"},{"name":"more-itertools","old_version":"10.7.0","new_version":"10.8.0","repository_url":"https://github.com/more-itertools/more-itertools"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.1.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"pillow","old_version":"11.2.1","new_version":"12.0.0","repository_url":"https://github.com/python-pillow/Pillow"},{"name":"platformdirs","old_version":"4.3.8","new_version":"4.5.1","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pyparsing","old_version":"3.2.3","new_version":"3.2.5","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"ruamel-yaml","old_version":"0.18.10","new_version":"0.18.16"},{"name":"ruamel-yaml-clib","old_version":"0.2.12","new_version":"0.2.15"},{"name":"soupsieve","old_version":"2.7","new_version":"2.8","repository_url":"https://github.com/facelessuser/soupsieve"},{"name":"sphinx","old_version":"7.3.7","new_version":"9.0.4","repository_url":"https://github.com/sphinx-doc/sphinx"},{"name":"sphinx-autobuild","old_version":"2024.10.3","new_version":"2025.8.25","repository_url":"https://github.com/sphinx-doc/sphinx-autobuild"},{"name":"sphinx-autodoc-typehints","old_version":"2.3.0","new_version":"3.5.2","repository_url":"https://github.com/tox-dev/sphinx-autodoc-typehints"},{"name":"sphinx-jinja2-compat","old_version":"0.3.0","new_version":"0.4.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-jinja2-compat"},{"name":"sphinx-prompt","old_version":"1.8.0","new_version":"1.10.2","repository_url":"https://github.com/sbrunner/sphinx-prompt"},{"name":"sphinx-tabs","old_version":"3.4.5","new_version":"3.4.7","repository_url":"https://github.com/executablebooks/sphinx-tabs"},{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.0","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"},{"name":"sphinxext-opengraph","old_version":"0.10.0","new_version":"0.13.0","repository_url":"https://github.com/sphinx-doc/sphinxext-opengraph"},{"name":"starlette","old_version":"0.46.2","new_version":"0.50.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"uvicorn","old_version":"0.34.2","new_version":"0.38.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"watchfiles","old_version":"1.0.5","new_version":"1.1.1","repository_url":"https://github.com/samuelcolvin/watchfiles"}],"path":null,"ecosystem":"pip"},"body":"Bumps the py-updates group with 77 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [awscli](https://github.com/aws/aws-cli) | `1.40.17` | `1.43.10` |\n| [polars](https://github.com/pola-rs/polars) | `1.28.1` | `1.35.2` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.32.5` |\n| [biopython](https://github.com/biopython/biopython) | `1.85` | `1.86` |\n| [boto3](https://github.com/boto/boto3) | `1.38.18` | `1.42.4` |\n| [botocore](https://github.com/boto/botocore) | `1.38.18` | `1.42.4` |\n| [certifi](https://github.com/certifi/python-certifi) | `2025.4.26` | `2025.11.12` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.2` | `3.4.4` |\n| [cloudpathlib](https://github.com/drivendataorg/cloudpathlib) | `0.21.1` | `0.23.0` |\n| [docutils](https://github.com/rtfd/recommonmark) | `0.19` | `0.22.3` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.11` |\n| [jellyfish](https://jellyfish.jpt.sh/) | `1.2.0` | `1.2.1` |\n| [markdown-it-py](https://github.com/executablebooks/markdown-it-py) | `3.0.0` | `4.0.0` |\n| [numpy](https://github.com/numpy/numpy) | `2.2.5` | `2.3.5` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [pyarrow](https://github.com/apache/arrow) | `20.0.0` | `22.0.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.19.1` | `2.19.2` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [rich](https://github.com/Textualize/rich) | `14.0.0` | `14.2.0` |\n| [rsa](https://github.com/sybrenstuvel/python-rsa) | `4.7.2` | `4.9.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.12.0` | `0.16.0` |\n| [structlog](https://github.com/hynek/structlog) | `25.3.0` | `25.5.0` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.4.0` | `2.6.0` |\n| [zstandard](https://github.com/indygreg/python-zstandard) | `0.23.0` | `0.25.0` |\n| [boto3-stubs](https://github.com/youtype/mypy_boto3_builder) | `1.38.18` | `1.42.4` |\n| [botocore-stubs](https://github.com/youtype/botocore-stubs) | `1.38.18` | `1.42.4` |\n| [cffi](https://github.com/python-cffi/cffi) | `1.17.1` | `2.0.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.8.0` | `7.12.0` |\n| [cryptography](https://github.com/pyca/cryptography) | `44.0.3` | `46.0.3` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.1` | `1.5.5` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.1.0` | `2.3.0` |\n| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` |\n| [moto](https://github.com/getmoto/moto) | `5.1.4` | `5.1.18` |\n| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.19.0` |\n| [mypy-boto3-s3](https://github.com/youtype/mypy_boto3_builder) | `1.38.0` | `1.42.3` |\n| [pycparser](https://github.com/eliben/pycparser) | `2.22` | `2.23` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.2` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [responses](https://github.com/getsentry/responses) | `0.25.7` | `0.25.8` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.10` | `0.14.8` |\n| [types-awscrt](https://github.com/youtype/types-awscrt) | `0.27.2` | `0.29.2` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.32.0.20250515` | `2.32.4.20250913` |\n| [types-s3transfer](https://github.com/youtype/types-s3transfer) | `0.12.0` | `0.15.0` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.13.2` | `4.15.0` |\n| [werkzeug](https://github.com/pallets/werkzeug) | `3.1.3` | `3.1.4` |\n| [xmltodict](https://github.com/martinblech/xmltodict) | `0.14.2` | `1.0.2` |\n| [alabaster](https://github.com/sphinx-doc/alabaster) | `0.7.16` | `1.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.9.0` | `4.12.0` |\n| [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) | `4.13.4` | `4.14.3` |\n| [cachecontrol](https://github.com/psf/cachecontrol) | `0.14.3` | `0.14.4` |\n| [click](https://github.com/pallets/click) | `8.2.0` | `8.3.1` |\n| [contourpy](https://github.com/contourpy/contourpy) | `1.3.2` | `1.3.3` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.18.0` | `3.20.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.58.0` | `4.61.0` |\n| [furo](https://github.com/pradyunsg/furo) | `2024.8.6` | `2025.9.25` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.8` | `1.4.9` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.3` | `3.10.7` |\n| [mdit-py-plugins](https://github.com/executablebooks/mdit-py-plugins) | `0.4.2` | `0.5.0` |\n| [more-itertools](https://github.com/more-itertools/more-itertools) | `10.7.0` | `10.8.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.1.2` |\n| [pillow](https://github.com/python-pillow/Pillow) | `11.2.1` | `12.0.0` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.8` | `4.5.1` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.3` | `3.2.5` |\n| ruamel-yaml | `0.18.10` | `0.18.16` |\n| ruamel-yaml-clib | `0.2.12` | `0.2.15` |\n| [soupsieve](https://github.com/facelessuser/soupsieve) | `2.7` | `2.8` |\n| [sphinx](https://github.com/sphinx-doc/sphinx) | `7.3.7` | `9.0.4` |\n| [sphinx-autobuild](https://github.com/sphinx-doc/sphinx-autobuild) | `2024.10.3` | `2025.8.25` |\n| [sphinx-autodoc-typehints](https://github.com/tox-dev/sphinx-autodoc-typehints) | `2.3.0` | `3.5.2` |\n| [sphinx-jinja2-compat](https://github.com/sphinx-toolbox/sphinx-jinja2-compat) | `0.3.0` | `0.4.1` |\n| [sphinx-prompt](https://github.com/sbrunner/sphinx-prompt) | `1.8.0` | `1.10.2` |\n| [sphinx-tabs](https://github.com/executablebooks/sphinx-tabs) | `3.4.5` | `3.4.7` |\n| [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) | `4.0.0` | `4.1.0` |\n| [sphinxext-opengraph](https://github.com/sphinx-doc/sphinxext-opengraph) | `0.10.0` | `0.13.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.46.2` | `0.50.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.34.2` | `0.38.0` |\n| [watchfiles](https://github.com/samuelcolvin/watchfiles) | `1.0.5` | `1.1.1` |\n\n\nUpdates `awscli` from 1.40.17 to 1.43.10\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/3499274cba0231d38086cb4389f4fda3ca3cbf2c\"\u003e\u003ccode\u003e3499274\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.10'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/0641f4e15bcd81c6321cf8289e2ef988143b4f31\"\u003e\u003ccode\u003e0641f4e\u003c/code\u003e\u003c/a\u003e Bumping version to 1.43.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/0621f58add8d91f0069e813b173624f738991093\"\u003e\u003ccode\u003e0621f58\u003c/code\u003e\u003c/a\u003e Update changelog based on model updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/f2ee76ccc9c8bff9e079118923be05df483e0d01\"\u003e\u003ccode\u003ef2ee76c\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.9'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/69cf052063a23eb4172bc1ecb338922227336437\"\u003e\u003ccode\u003e69cf052\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.9' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/794d13709a2f6fd64231ae739177d8dc18e7bfb3\"\u003e\u003ccode\u003e794d137\u003c/code\u003e\u003c/a\u003e Bumping version to 1.43.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/90a22b9417f34b8399a3086798a1c3f55f0ae3b2\"\u003e\u003ccode\u003e90a22b9\u003c/code\u003e\u003c/a\u003e Update changelog based on model updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/ece1daabc883acbc7156caaeb5faf883e5a87166\"\u003e\u003ccode\u003eece1daa\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.8'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/f4787fad94308cadbe8a41b78b509069d81dbeda\"\u003e\u003ccode\u003ef4787fa\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.8' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/06b7bfebc5b604772f8bef8e7f958bb78916be18\"\u003e\u003ccode\u003e06b7bfe\u003c/code\u003e\u003c/a\u003e Bumping version to 1.43.8\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-cli/compare/1.40.17...1.43.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `polars` from 1.28.1 to 1.35.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pola-rs/polars/releases\"\u003epolars's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePython Polars 1.35.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect \u003ccode\u003edrop_nans()\u003c/code\u003e result when used in \u003ccode\u003egroup_by()\u003c/code\u003e / \u003ccode\u003eover()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/pull/25146\"\u003epola-rs/polars#25146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix handling \u003ccode\u003eNull\u003c/code\u003e dtype in \u003ccode\u003eApplyExpr\u003c/code\u003e on \u003ccode\u003egroup_by\u003c/code\u003e(\u003ca href=\"https://redirect.github.com/pola-rs/polars/pull/25077\"\u003epola-rs/polars#25077\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix assertion panic on \u003ccode\u003egroup_by\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/pull/25179\"\u003epola-rs/polars#25179\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix Wide-table join performance regression (\u003ca href=\"https://redirect.github.com/pola-rs/polars/pull/25222\"\u003epola-rs/polars#25222\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThank you to all our contributors for making this release possible!\n\u003ca href=\"https://github.com/coastalwhite\"\u003e\u003ccode\u003e@​coastalwhite\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/kdn36\"\u003e\u003ccode\u003e@​kdn36\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/nameexhaustion\"\u003e\u003ccode\u003e@​nameexhaustion\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/ritchie46\"\u003e\u003ccode\u003e@​ritchie46\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePython Polars 1.35.1\u003c/h2\u003e\n\u003ch2\u003e🚀 Performance improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDon't recompute full rolling moment window when NaNs/nulls leave the window (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25078\"\u003e#25078\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip filtering scan IR if no paths were filtered (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25037\"\u003e#25037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOptimize ipc stream read performance (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/24671\"\u003e#24671\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e✨ Enhancements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport BYTE_ARRAY backed Decimals in Parquet (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25076\"\u003e#25076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003eglimpse\u003c/code\u003e to return a \u003ccode\u003eDataFrame\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/24803\"\u003e#24803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eallow_empty\u003c/code\u003e flag to \u003ccode\u003eitem\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25048\"\u003e#25048\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐞 Bug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003eSQL\u003c/code\u003e interface should use logical, not bitwise, behaviour for unary \u0026quot;NOT\u0026quot; operator (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25091\"\u003e#25091\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix panic if scan predicate produces 0 length mask (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25089\"\u003e#25089\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure SQL table alias resolution checks against CTE aliases on fallback (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25071\"\u003e#25071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePanic in \u003ccode\u003egroup_by_dynamic\u003c/code\u003e with \u003ccode\u003egroup_by\u003c/code\u003e and multiple chunks (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25075\"\u003e#25075\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMinor improvement to internal \u003ccode\u003eis_pycapsule\u003c/code\u003e utility function (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25073\"\u003e#25073\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix panic when using struct field as join key (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25059\"\u003e#25059\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow broadcast in \u003ccode\u003egroup_by\u003c/code\u003e for \u003ccode\u003eApplyExpr\u003c/code\u003e and \u003ccode\u003eBinaryExpr\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25053\"\u003e#25053\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix field metadata for nested categorical PyCapsule export (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25052\"\u003e#25052\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBlock predicate pushdown when \u003ccode\u003egroup_by\u003c/code\u003e key values are changed (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25032\"\u003e#25032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eGroup-By aggregation problems caused by \u003ccode\u003eAmortSeries\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25043\"\u003e#25043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDon't push down predicates passed inserted cache nodes (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25042\"\u003e#25042\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow for negative time in \u003ccode\u003egroup_by_dynamic\u003c/code\u003e iterator (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25041\"\u003e#25041\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📖 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix typo in public dataset URL (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25044\"\u003e#25044\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠️ Other improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDisable recursive CSPE for now (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25085\"\u003e#25085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChange group length mismatch error to \u003ccode\u003eShapeError\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25004\"\u003e#25004\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate toolchain (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25007\"\u003e#25007\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThank you to all our contributors for making this release possible!\n\u003ca href=\"https://github.com/Kevin-Patyk\"\u003e\u003ccode\u003e@​Kevin-Patyk\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/Liyixin95\"\u003e\u003ccode\u003e@​Liyixin95\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/alexander-beedie\"\u003e\u003ccode\u003e@​alexander-beedie\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/coastalwhite\"\u003e\u003ccode\u003e@​coastalwhite\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/kdn36\"\u003e\u003ccode\u003e@​kdn36\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/nameexhaustion\"\u003e\u003ccode\u003e@​nameexhaustion\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/orlp\"\u003e\u003ccode\u003e@​orlp\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/r-brink\"\u003e\u003ccode\u003e@​r-brink\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/ritchie46\"\u003e\u003ccode\u003e@​ritchie46\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/stijnherfst\"\u003e\u003ccode\u003e@​stijnherfst\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/c5f0f25b2ed6498dd47d3ec619ef3a1a90c0788b\"\u003e\u003ccode\u003ec5f0f25\u003c/code\u003e\u003c/a\u003e bump version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/29dc1db9cc3d9c2209021dc423bcbff72958bb18\"\u003e\u003ccode\u003e29dc1db\u003c/code\u003e\u003c/a\u003e fix: Wide-table join performance regression (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25222\"\u003e#25222\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/fbd57cdf2b82d5575205ef8aa14c0d96f29c002a\"\u003e\u003ccode\u003efbd57cd\u003c/code\u003e\u003c/a\u003e fix: Fix assertion panic on \u003ccode\u003egroup_by\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25179\"\u003e#25179\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/8abe6ef5f4938f6bb2f010a24f7d361138c82895\"\u003e\u003ccode\u003e8abe6ef\u003c/code\u003e\u003c/a\u003e fix: Fix handling \u003ccode\u003eNull\u003c/code\u003e dtype in \u003ccode\u003eApplyExpr\u003c/code\u003e on \u003ccode\u003egroup_by\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25077\"\u003e#25077\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/c19e4c07fc66776f1826a0251f118a2ad4bb3047\"\u003e\u003ccode\u003ec19e4c0\u003c/code\u003e\u003c/a\u003e fix: Invert \u003ccode\u003edrop_nans\u003c/code\u003e filtering in group-by context (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25146\"\u003e#25146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/a99ad3495d0b4bb71a956eb3ab5e23595df756db\"\u003e\u003ccode\u003ea99ad34\u003c/code\u003e\u003c/a\u003e fix: The \u003ccode\u003eSQL\u003c/code\u003e interface should use logical, not bitwise, behaviour for unary...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/84a0feea2790c6d2ed5be2661409230c1ba9eb00\"\u003e\u003ccode\u003e84a0fee\u003c/code\u003e\u003c/a\u003e Python Polars 1.35.1 (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25090\"\u003e#25090\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/b9e313641cd7546d4f29ed93dde0cd3b74e799c2\"\u003e\u003ccode\u003eb9e3136\u003c/code\u003e\u003c/a\u003e refactor(rust): Remove old join projection pushdown logic (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25088\"\u003e#25088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/7b423b6d6d8074826ef950c33a6931f78bc4d952\"\u003e\u003ccode\u003e7b423b6\u003c/code\u003e\u003c/a\u003e fix: Fix panic if scan predicate produces 0 length mask (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25089\"\u003e#25089\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/ce396f450cc261c7b34bd7f00408fc9152eb6d35\"\u003e\u003ccode\u003ece396f4\u003c/code\u003e\u003c/a\u003e refactor: Disable recursive CSPE for now (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25085\"\u003e#25085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pola-rs/polars/compare/py-1.28.1...py-1.35.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.32.3 to 2.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/releases\"\u003erequests's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.32.5\u003c/h2\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b25c87d7cb8d6a18a37fa12442b5f883f9e41741\"\u003e\u003ccode\u003eb25c87d\u003c/code\u003e\u003c/a\u003e v2.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/131e506079d97606e4214cc4d87b780ac478de7a\"\u003e\u003ccode\u003e131e506\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/7010\"\u003e#7010\u003c/a\u003e from psf/dependabot/github_actions/actions/checkout-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b336cb2bc616a63a93c6470c558fc1f576b77f90\"\u003e\u003ccode\u003eb336cb2\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/46e939b5525d9c72b677340985582b04b128478a\"\u003e\u003ccode\u003e46e939b\u003c/code\u003e\u003c/a\u003e Update publish workflow to use \u003ccode\u003eartifact-id\u003c/code\u003e instead of \u003ccode\u003ename\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4b9c546aa3f35fca6ca24945376fe7462bb007c4\"\u003e\u003ccode\u003e4b9c546\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6999\"\u003e#6999\u003c/a\u003e from psf/dependabot/github_actions/step-security/har...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7618dbef01d333f23ba4b9c4d97397b06dd89cb6\"\u003e\u003ccode\u003e7618dbe\u003c/code\u003e\u003c/a\u003e Bump step-security/harden-runner from 2.12.0 to 2.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2edca11103c1c27dd8b572dab544b7f48cf3b446\"\u003e\u003ccode\u003e2edca11\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 and drop support for Python 3.8 (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6993\"\u003e#6993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/fec96cd5976ad763e45bac9a033d62cca1877a00\"\u003e\u003ccode\u003efec96cd\u003c/code\u003e\u003c/a\u003e Update Makefile rules (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6996\"\u003e#6996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/d58d8aa2f45c3575268d6d5250745ef69f9cf8b7\"\u003e\u003ccode\u003ed58d8aa\u003c/code\u003e\u003c/a\u003e docs: clarify timeout parameter uses seconds in Session.request (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6994\"\u003e#6994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/91a3eabd3dcc4d7f36dd8249e4777a90ef9b4305\"\u003e\u003ccode\u003e91a3eab\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.5 to 3.29.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `biopython` from 1.85 to 1.86\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/biopython/biopython/blob/master/NEWS.rst\"\u003ebiopython's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e28 October 2025: Biopython 1.86\u003c/h1\u003e\n\u003cp\u003eThis release of Biopython supports Python 3.10, 3.11, 3.12, 3.13 and 3.14.  It\nhas also been tested on PyPy3.10 v7.3.19.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.SearchIO\u003c/code\u003e now supports parsing the tabular and plain text output of\n\u003ccode\u003eInfernal \u0026lt;http://eddylab.org/infernal/\u0026gt;\u003c/code\u003e (v1.0.0+) RNA search tool. The\nformat names are \u003ccode\u003einfernal-tab\u003c/code\u003e and \u003ccode\u003einfernal-text\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe default value of the gap score of a \u003ccode\u003ePairwiseAligner\u003c/code\u003e object was changed\nin this release.  Previously, for consistency with \u003ccode\u003eBio.pairwise2\u003c/code\u003e, the\ndefault value for gap score was 0.  However, this means that a mismatch, an\ninsertion followed by a deletion, and a deletion followed by an insertion all\nget assigned a score of 0.  The aligner then finds a large number of alignments\nthat are logically the same, but have trivial differences between them.  For\nexample, aligning AAACAAA to AAAGAAA previously yielded the following three\nalignments, all with score 6::\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e AAACAAA        AAAC-AAA        AAA-CAAA\n AAAGAAA        AAA-GAAA        AAAG-AAA\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eWith the new default parameter for the gap score, only the first alignment is\nreturned.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.PDBIO\u003c/code\u003e now ensures that b-factor values are always at most 6 characters to\nensure that we do not violate the wwPDB specification. This should not have an impact\non the majority of uses, as b-factor values are generally small (less than 100). When\n1000 \u0026lt;= b-factor \u0026lt; 10_000, the value is rounded to a single decimal place. When,\n10_000 \u0026lt;= b-factor \u0026lt; 999_999, the value is rounded to zero decimal places. Values\nabove 999_999 are now clamped. The justification for this is the rise in the b-factor\nfield being used for additional metadata, typically from computational tools.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.Align\u003c/code\u003e now provides a method \u003ccode\u003eAlignment.from_alignments_with_same_reference\u003c/code\u003e\nto construct a multiple sequence alignment from a collection of alignments\nthat share the same reference sequence.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.PDBIO\u003c/code\u003e will now raise module specific warnings:\n\u003ccode\u003eBio.PDB.PDBExceptions.PDBIOWarning\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.SCADIO\u003c/code\u003e now supports object selection by color in the OpenSCAD\noutput file.  This enables generation of separate STL files for each color for\nprinting protein structures on multi-material 3D printers.\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eiplotx\u003c/code\u003e library is mentioned in the Tutorial as an option to visualise\ntrees using complex style options.\u003c/p\u003e\n\u003cp\u003eMany thanks to the Biopython developers and community for making this release\npossible, especially the following contributors:\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\u003eSee full diff in \u003ca href=\"https://github.com/biopython/biopython/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.18 to 1.42.4\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/87d85be3865d8f8de7df2188032fb5ebad5883a9\"\u003e\u003ccode\u003e87d85be\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.4'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/2ed62e3c85f8331f532918f54828ed4e03813788\"\u003e\u003ccode\u003e2ed62e3\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/7df80a3d6ae16b2c311732b8a67ad6c7ca9b0cd1\"\u003e\u003ccode\u003e7df80a3\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/347117552e90ab6fc8a3e6a459f0a00ec0ca0a48\"\u003e\u003ccode\u003e3471175\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.3'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/dfb22ff6eccbd6a07ef68304cc36198e39260618\"\u003e\u003ccode\u003edfb22ff\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.3' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/2e3d1258ad9cb30f38d3c54b1b5e847b83a2d13b\"\u003e\u003ccode\u003e2e3d125\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/04ebd3cbea961c39ea1fea5edfd24442d299eb1d\"\u003e\u003ccode\u003e04ebd3c\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/cc95ab6caa73634e01a03c82f310d002a5f3e71d\"\u003e\u003ccode\u003ecc95ab6\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.2'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/743b8e411a11015a0a0ee584cd0f3b947687a666\"\u003e\u003ccode\u003e743b8e4\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.2' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/8f7ba800ea3e2c252b2d9ed4abd4f00309a79511\"\u003e\u003ccode\u003e8f7ba80\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.18...1.42.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `botocore` from 1.38.18 to 1.42.4\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/05bdcecb8de077dc0c3551c700243f46f7672848\"\u003e\u003ccode\u003e05bdcec\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.4'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/b04193bd48846f03294d06143304576139509982\"\u003e\u003ccode\u003eb04193b\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/6d8692f79e641d6529458277bb20c504c17c3eca\"\u003e\u003ccode\u003e6d8692f\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/4e2bde0cb6044935ec0c0bcf022cd32b9c68289e\"\u003e\u003ccode\u003e4e2bde0\u003c/code\u003e\u003c/a\u003e Upgrade awscrt to 0.29.2 (\u003ca href=\"https://redirect.github.com/boto/botocore/issues/3608\"\u003e#3608\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/c57744ce74370df9ae48d68ce96c213dce94563f\"\u003e\u003ccode\u003ec57744c\u003c/code\u003e\u003c/a\u003e Add retries to handle IAM eventual consistency issues (\u003ca href=\"https://redirect.github.com/boto/botocore/issues/3600\"\u003e#3600\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/b71ae76eee8dd1b084d038b5113bd29b8720f708\"\u003e\u003ccode\u003eb71ae76\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.3'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/220c0b020df8c80078b44fe1227c3bc7b7f24004\"\u003e\u003ccode\u003e220c0b0\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.3' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/ac07545e42460b00e7b624161b422b8b7ce4eeda\"\u003e\u003ccode\u003eac07545\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/68fc097d76eec12c4e64c0478e99f76bdee90226\"\u003e\u003ccode\u003e68fc097\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/b2877967b7e851d639e7bfa56ad2c6d9ea35b4ad\"\u003e\u003ccode\u003eb287796\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.2'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/botocore/compare/1.38.18...1.42.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `certifi` from 2025.4.26 to 2025.11.12\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/37ea150bee10958559f804f128de2fdd48e1ed45\"\u003e\u003ccode\u003e37ea150\u003c/code\u003e\u003c/a\u003e 2025.11.12 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/375\"\u003e#375\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/2fa50bb698145e2401e17b23f6969d3952a6f7c1\"\u003e\u003ccode\u003e2fa50bb\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 4.6.2 to 5.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/374\"\u003e#374\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/6cadb5304715523e57ea425f833aa3495a4e01e4\"\u003e\u003ccode\u003e6cadb53\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/373\"\u003e#373\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/fb14ac49a976b1695d84b1ac1307276a20b3aac9\"\u003e\u003ccode\u003efb14ac4\u003c/code\u003e\u003c/a\u003e 2025.10.05 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/371\"\u003e#371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/2c7c7ee6b76a118191b685a4cc028d4241f22eb7\"\u003e\u003ccode\u003e2c7c7ee\u003c/code\u003e\u003c/a\u003e Add Python 3.14 classifier in setup.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/1a5cb7b3771bba256755f88b3dcf3ac13f064622\"\u003e\u003ccode\u003e1a5cb7b\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5.6.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/367\"\u003e#367\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/dea59605ef2b266c2e0e67938e8c8535a04b1211\"\u003e\u003ccode\u003edea5960\u003c/code\u003e\u003c/a\u003e Bump pypa/gh-action-pypi-publish from 1.12.4 to 1.13.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/366\"\u003e#366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/83566b7c993eef772facdaff59c7bba105675329\"\u003e\u003ccode\u003e83566b7\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.2 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ca2e121bdb304fd01f802d3b1ee6a65684f569f2\"\u003e\u003ccode\u003eca2e121\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4.3.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/a97d9ad8f87c382378dddc0b0b33b9770932404e\"\u003e\u003ccode\u003ea97d9ad\u003c/code\u003e\u003c/a\u003e 2025.08.03 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/certifi/python-certifi/compare/2025.04.26...2025.11.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `charset-normalizer` from 3.4.2 to 3.4.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.3...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003e multiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/b30ffdcc2f11043c0d34e60fe66d3815cd49b32b\"\u003e\u003ccode\u003eb30ffdc\u003c/code\u003e\u003c/a\u003e :wrench: fix checksum step in cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/d3fbfcfad7dfe3c640886f1a6a6351da527f6634\"\u003e\u003ccode\u003ed3fbfcf\u003c/code\u003e\u003c/a\u003e :wrench: fix cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/dafbb95f8c00d3cc8b99158caa63006ffab98749\"\u003e\u003ccode\u003edafbb95\u003c/code\u003e\u003c/a\u003e Release 3.4.4 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/658\"\u003e#658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/1f18ffaa69d2c84fea7abedb8840197ba9c14562\"\u003e\u003ccode\u003e1f18ffa\u003c/code\u003e\u003c/a\u003e :arrow_up: raise mypy upper bound to 1.18.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/ef4ac69ad203891f24e26b2422ab3a08053044fa\"\u003e\u003ccode\u003eef4ac69\u003c/code\u003e\u003c/a\u003e Merge branch 'release-3.4.4' of github.com:jawah/charset_normalizer into rele...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/4b35dda053db5e2e60a247e80a116e4ef04f439b\"\u003e\u003ccode\u003e4b35dda\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/0ec6452f1a34cbc77a55b237c4118807b44c2a33\"\u003e\u003ccode\u003e0ec6452\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f341edec8a828dda394abfa011b1ded8b4b102e2\"\u003e\u003ccode\u003ef341ede\u003c/code\u003e\u003c/a\u003e :arrow_up: upgrade dependencies (dev, ci)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/a308841e660a4d61ea6c448e7b8bf97415ecdc4a\"\u003e\u003ccode\u003ea308841\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/9c906da611d5ca5ef076d6bf7f60e629f661d0b0\"\u003e\u003ccode\u003e9c906da\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.2...3.4.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cloudpathlib` from 0.21.1 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/drivendataorg/cloudpathlib/releases\"\u003ecloudpathlib's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14 (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/529\"\u003e#529\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/530\"\u003e#530\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eChanged \u003ccode\u003eCloudPath.copy\u003c/code\u003e to have the first parameter named \u003ccode\u003etarget\u003c/code\u003e instead of \u003ccode\u003edestination\u003c/code\u003e and added new \u003ccode\u003efollow_symlinks\u003c/code\u003e and \u003ccode\u003epreserve_metadata\u003c/code\u003e kwargs. \u003cstrong\u003eBreaking change for users that relied on the first parameter being named \u003ccode\u003edestination\u003c/code\u003e instead of \u003ccode\u003etarget\u003c/code\u003e.\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.copy_into\u003c/code\u003e to copy a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move\u003c/code\u003e to move a file or directory to another location.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move_into\u003c/code\u003e to move a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPathInfo\u003c/code\u003e and \u003ccode\u003eCloudPath.info\u003c/code\u003e to get information about a file or directory.\u003c/li\u003e\n\u003cli\u003eAdded additional no-op kwargs to \u003ccode\u003emkdir\u003c/code\u003e, \u003ccode\u003etouch\u003c/code\u003e, \u003ccode\u003eglob\u003c/code\u003e, \u003ccode\u003erglob\u003c/code\u003e, \u003ccode\u003estat\u003c/code\u003e to match pathlib.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.22.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed issue with GS credentials, using default auth enables a wider set of authentication methods in GS (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/390\"\u003e#390\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/514\"\u003e#514\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ljyanesm\"\u003e\u003ccode\u003e@​ljyanesm\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for http(s) urls with \u003ccode\u003eHttpClient\u003c/code\u003e, \u003ccode\u003eHttpPath\u003c/code\u003e, \u003ccode\u003eHttpsClient\u003c/code\u003e, and \u003ccode\u003eHttpsPath\u003c/code\u003e. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/455\"\u003e#455\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded experimental support for patching the builtins \u003ccode\u003eopen\u003c/code\u003e, \u003ccode\u003eos\u003c/code\u003e, \u003ccode\u003eos.path\u003c/code\u003e, and \u003ccode\u003eglob\u003c/code\u003e to work with \u003ccode\u003eCloudPath\u003c/code\u003e objects. It is off by default; see the new \u0026quot;Compatibility\u0026quot; section in the docs for more information. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/128\"\u003e#128\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for \u003ccode\u003eCloudPath(*parts)\u003c/code\u003e to create a \u003ccode\u003eCloudPath\u003c/code\u003e object from a list of parts (to match \u003ccode\u003epathlib.Path\u003c/code\u003e). \u003cstrong\u003eThis is a potentially breaking change for users that relied on the second arg being the \u003ccode\u003eclient\u003c/code\u003e instead of making it an explicit kwarg.\u003c/strong\u003e (PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\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/drivendataorg/cloudpathlib/blob/master/HISTORY.md\"\u003ecloudpathlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0 (2025-10-07)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14 (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/529\"\u003e#529\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/530\"\u003e#530\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eChanged \u003ccode\u003eCloudPath.copy\u003c/code\u003e to have the first parameter named \u003ccode\u003etarget\u003c/code\u003e instead of \u003ccode\u003edestination\u003c/code\u003e and added new \u003ccode\u003efollow_symlinks\u003c/code\u003e and \u003ccode\u003epreserve_metadata\u003c/code\u003e kwargs. \u003cstrong\u003eBreaking change for users that relied on the first parameter being named \u003ccode\u003edestination\u003c/code\u003e instead of \u003ccode\u003etarget\u003c/code\u003e.\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.copy_into\u003c/code\u003e to copy a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move\u003c/code\u003e to move a file or directory to another location.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move_into\u003c/code\u003e to move a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPathInfo\u003c/code\u003e and \u003ccode\u003eCloudPath.info\u003c/code\u003e to get information about a file or directory.\u003c/li\u003e\n\u003cli\u003eAdded additional no-op kwargs to \u003ccode\u003emkdir\u003c/code\u003e, \u003ccode\u003etouch\u003c/code\u003e, \u003ccode\u003eglob\u003c/code\u003e, \u003ccode\u003erglob\u003c/code\u003e, \u003ccode\u003estat\u003c/code\u003e to match pathlib.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.22.0 (2025-08-29)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed issue with GS credentials, using default auth enables a wider set of authentication methods in GS (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/390\"\u003e#390\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/514\"\u003e#514\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ljyanesm\"\u003e\u003ccode\u003e@​ljyanesm\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for http(s) urls with \u003ccode\u003eHttpClient\u003c/code\u003e, \u003ccode\u003eHttpPath\u003c/code\u003e, \u003ccode\u003eHttpsClient\u003c/code\u003e, and \u003ccode\u003eHttpsPath\u003c/code\u003e. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/455\"\u003e#455\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded experimental support for patching the builtins \u003ccode\u003eopen\u003c/code\u003e, \u003ccode\u003eos\u003c/code\u003e, \u003ccode\u003eos.path\u003c/code\u003e, and \u003ccode\u003eglob\u003c/code\u003e to work with \u003ccode\u003eCloudPath\u003c/code\u003e objects. It is off by default; see the new \u0026quot;Compatibility\u0026quot; section in the docs for more information. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/128\"\u003e#128\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for \u003ccode\u003eCloudPath(*parts)\u003c/code\u003e to create a \u003ccode\u003eCloudPath\u003c/code\u003e object from a list of parts (to match \u003ccode\u003epathlib.Path\u003c/code\u003e). \u003cstrong\u003eThis is a potentially breaking change for users that relied on the second arg being the \u003ccode\u003eclient\u003c/code\u003e instead of making it an explicit kwarg.\u003c/strong\u003e (PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\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/drivendataorg/cloudpathlib/commit/28f1d943078517262d045ae50136edf27a5298a1\"\u003e\u003ccode\u003e28f1d94\u003c/code\u003e\u003c/a\u003e WIP Support 3.14 (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/530\"\u003e#530\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/fec5918d6725e9f1f52bee003528f4f854454980\"\u003e\u003ccode\u003efec5918\u003c/code\u003e\u003c/a\u003e Bump pypa/gh-action-pypi-publish in /.github/workflows (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/531\"\u003e#531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/e7900023bf4b32b70ca5b2d798f9ce52187582f8\"\u003e\u003ccode\u003ee790002\u003c/code\u003e\u003c/a\u003e version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/bb1f1e4cb5eba0928cec2aaff30cb0f5ace1f108\"\u003e\u003ccode\u003ebb1f1e4\u003c/code\u003e\u003c/a\u003e WIP: Patch open, os and os.path builtins (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/12005505fc29ab4183968022a487416a31b1a1bd\"\u003e\u003ccode\u003e1200550\u003c/code\u003e\u003c/a\u003e Refactor GS authentication to use default credentials (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/514\"\u003e#514\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/526\"\u003e#526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/b21cac14f0090021594f7e3afae9c48f5d7dbd46\"\u003e\u003ccode\u003eb21cac1\u003c/code\u003e\u003c/a\u003e Implement HTTP(s) support (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/863e884cbf1cf141cdf7bf9c0623e0cd3d27841d\"\u003e\u003ccode\u003e863e884\u003c/code\u003e\u003c/a\u003e fix for azure typing differences (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/524\"\u003e#524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/65c5c012bd4297ce4e812cfb8bbf9827db346e03\"\u003e\u003ccode\u003e65c5c01\u003c/code\u003e\u003c/a\u003e Set pytest-cases\u0026gt;=3.9.1 (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/520\"\u003e#520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/drivendataorg/cloudpathlib/compare/v0.21.1...v0.23.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `docutils` from 0.19 to 0.22.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/rtfd/recommonmark/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `idna` from 3.10 to 3.11\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kjd/idna/blob/master/HISTORY.rst\"\u003eidna's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e3.11 (2025-10-12)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to Unicode 16.0.0, including significant changes to UTS46\nprocessing. As a result of Unicode ending support for it, transitional\nprocessing no longer has an effect and returns the same result.\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14, lowest supported version is Python 3.8.\u003c/li\u003e\n\u003cli\u003eVarious updates to packaging, including PEP 740 support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/ad949ee3052c2265c66e3df2dd8871a5832ba327\"\u003e\u003ccode\u003ead949ee\u003c/code\u003e\u003c/a\u003e Release v3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/cae4ba779e0a543823894bd4136651c187944da8\"\u003e\u003ccode\u003ecae4ba7\u003c/code\u003e\u003c/a\u003e Second release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/8adb305165c77c4a45d1568a70ead75d2197692c\"\u003e\u003ccode\u003e8adb305\u003c/code\u003e\u003c/a\u003e Add space in RST link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/74cb2b652bb06133b0c4ab52cc98221be63162cf\"\u003e\u003ccode\u003e74cb2b6\u003c/code\u003e\u003c/a\u003e Release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/05dab09fdde5bbf7d52f757c4dc62e0ba934cca8\"\u003e\u003ccode\u003e05dab09\u003c/code\u003e\u003c/a\u003e Format idna-data with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/90eac78b737d26613776b490432fc6d926b15c55\"\u003e\u003ccode\u003e90eac78\u003c/code\u003e\u003c/a\u003e Apply ruff formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a31ce7ecc0b767e40abb5ce28744ac567b73f366\"\u003e\u003ccode\u003ea31ce7e\u003c/code\u003e\u003c/a\u003e Remove errant test vectors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/81f03334211c78c1832991ce70ebafb3cbfbb79c\"\u003e\u003ccode\u003e81f0333\u003c/code\u003e\u003c/a\u003e Omit vectors known to be broken in test suite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a0f32578c0cac28c7ffbb4c860c92eb2b9b579bd\"\u003e\u003ccode\u003ea0f3257\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into unicode-16-uts46-changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/38d98860e6a1ab92fd35ab09ea4739feabf339a3\"\u003e\u003ccode\u003e38d9886\u003c/code\u003e\u003c/a\u003e Remove extra UTS46 test vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kjd/idna/compare/v3.10...v3.11\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jellyfish` from 1.2.0 to 1.2.1\n\nUpdates `markdown-it-py` from 3.0.0 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/executablebooks/markdown-it-py/releases\"\u003emarkdown-it-py's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eThis primarily drops support for Python 3.8 and 3.9, adds support for Python 3.13,\nand updates the parser to comply with Commonmark 0.31.2 and Markdown-It v14.1.0.\u003c/p\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Drop Python 3.8, test 3.13 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/342\"\u003eexecutablebooks/markdown-it-py#342\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Drop support for Python 3.9 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/360\"\u003eexecutablebooks/markdown-it-py#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Comply with Commonmark 0.31.2 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/362\"\u003eexecutablebooks/markdown-it-py#362\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Improve performance of \u0026quot;text\u0026quot; inline rule by \u003ca href=\"https://github.com/hukkin\"\u003e\u003ccode\u003e@​hukkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/347\"\u003eexecutablebooks/markdown-it-py#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Use \u003ccode\u003estr.removesuffix\u003c/code\u003e by \u003ca href=\"https://github.com/hukkin\"\u003e\u003ccode\u003e@​hukkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/348\"\u003eexecutablebooks/markdown-it-py#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 limit the number of autocompleted cells in a table by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/364\"\u003eexecutablebooks/markdown-it-py#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 fix quadratic complexity in reference parser by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/367\"\u003eexecutablebooks/markdown-it-py#367\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix emphasis inside raw links bugs by \u003ca href=\"https://github.com/tsutsu3\"\u003e\u003ccode\u003e@​tsutsu3\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/320\"\u003eexecutablebooks/markdown-it-py#320\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔧 Replace black and isort with ruff formatter by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/313\"\u003eexecutablebooks/markdown-it-py#313\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Fixed Code Style paragraph still referring to flake8 by \u003ca href=\"https://github.com/venthur\"\u003e\u003ccode\u003e@​venthur\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/309\"\u003eexecutablebooks/markdown-it-py#309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Add \u0026quot;store_labels\u0026quot; to OptionsType by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/343\"\u003eexecutablebooks/markdown-it-py#343\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Move \u003ccode\u003ecode_style\u003c/code\u003e to dependency group by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/344\"\u003eexecutablebooks/markdown-it-py#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Update codecov action by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/345\"\u003eexecutablebooks/markdown-it-py#345\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Update pre-commit and upload-artifact by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/359\"\u003eexecutablebooks/markdown-it-py#359\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Improve spec update script by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/361\"\u003eexecutablebooks/markdown-it-py#361\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 simplify logic in scanDelims by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/365\"\u003eexecutablebooks/markdown-it-py#365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Add CI testing for Python 3.12 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/303\"\u003eexecutablebooks/markdown-it-py#303\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Fix codecov by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/332\"\u003eexecutablebooks/markdown-it-py#332\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📚 Fix typo by \u003ca href=\"https://github.com/bwagner\"\u003e\u003ccode\u003e@​bwagner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/315\"\u003eexecutablebooks/markdown-it-py#315\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix RTD build by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/322\"\u003eexecutablebooks/markdown-it-py#322\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Fix a few old URLs by \u003ca href=\"https://github.com/elijahgreenstein\"\u003e\u003ccode\u003e@​elijahgreenstein\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/358\"\u003eexecutablebooks/markdown-it-py#358\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Improve README by \u003ca href=\"https://github.com/mrmurilo75\"\u003e\u003ccode\u003e@​mrmurilo75\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/340\"\u003eexecutablebooks/markdown-it-py#340\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix CI badge link by \u003ca href=\"https://github.com/tsutsu3\"\u003e\u003ccode\u003e@​tsutsu3\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/291\"\u003eexecutablebooks/markdown-it-py#291\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Update docs by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/292\"\u003eexecutablebooks/markdown-it-py#292\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Add icon to readme by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/293\"\u003eexecutablebooks/markdown-it-py#293\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Update icon by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/294\"\u003eexecutablebooks/markdown-it-py#294\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Clarify docs regarding security configuration by \u003ca href=\"https://github.com/djramones\"\u003e\u003ccode\u003e@​djramones\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/296\"\u003eexecutablebooks/markdown-it-py#296\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix the RTD build by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/311\"\u003eexecutablebooks/markdown-it-py#311\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Fix typos by \u003ca href=\"https://github.com/elijahgreenstein\"\u003e\u003ccode\u003e@​elijahgreenstein\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/366\"\u003eexecutablebooks/markdown-it-py#366\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/executablebooks/markdown-it-py/blob/master/CHANGELOG.md\"\u003emarkdown-it-py's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.0 - 2024-08-10\u003c/h2\u003e\n\u003cp\u003eThis primarily drops support for Python 3.9, adds support for Python 3.13,\nand updates the parser to comply with Commonmark 0.31.2 and Markdown-It v14.1.0.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Drop support for Python 3.9 in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/360\"\u003e#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Comply with Commonmark 0.31.2 in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/362\"\u003e#362\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve performance of \u0026quot;text\u0026quot; inline rule in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/347\"\u003e#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Use \u003ccode\u003estr.removesuffix\u003c/code\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/348\"\u003e#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 limit the number of autocompleted cells in a table in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/364\"\u003e#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 fix quadratic complexity in reference parser in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/367\"\u003e#367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 Fix emphasis inside raw links bugs in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/320\"\u003e#320\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.0\"\u003ehttps://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.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/executablebooks/markdown-it-py/commit/c62983f1554124391b47170180e6c62df4d476ca\"\u003e\u003ccode\u003ec62983f\u003c/code\u003e\u003c/a\u003e 🚀 RELEASE v4.0.0 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/368\"\u003e#368\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/9e93bd554147ffb8582581e14620c7611103d2ff\"\u003e\u003ccode\u003e9e93bd5\u003c/code\u003e\u003c/a\u003e 👌 fix quadratic complexity in reference parser (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/367\"\u003e#367\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/da45c8764b2077425c091fa1811bbb1c5f211bd1\"\u003e\u003ccode\u003eda45c87\u003c/code\u003e\u003c/a\u003e 📚 DOCS: Fix typos (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/366\"\u003e#366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/87b16e272bf8207182084e07a63253b98fc437d7\"\u003e\u003ccode\u003e87b16e2\u003c/code\u003e\u003c/a\u003e 🔧 simplify logic in scanDelims (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/365\"\u003e#365\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/e4009641db528444b85d384af815e9cad997a016\"\u003e\u003ccode\u003ee400964\u003c/code\u003e\u003c/a\u003e 👌 limit the number of autocompleted cells in a table (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/364\"\u003e#364\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/4535d77edcb5f51450a266135687eeae8bcc5033\"\u003e\u003ccode\u003e4535d77\u003c/code\u003e\u003c/a\u003e ⬆️ Comply with Commonmark 0.31.2 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/8eb20ac1cb63e09dcd78e84a0c71dab8446bb73c\"\u003e\u003ccode\u003e8eb20ac\u003c/code\u003e\u003c/a\u003e 🔧 Improve spec update script (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/361\"\u003e#361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/fb9d3ab646e4f752dc8fd52e1dd7613c350ff190\"\u003e\u003ccode\u003efb9d3ab\u003c/code\u003e\u003c/a\u003e ⬆️ Drop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/360\"\u003e#360\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/9ffe841832d33264201aaff120349f001a02953a\"\u003e\u003ccode\u003e9ffe841\u003c/code\u003e\u003c/a\u003e 📚 DOCS: Fix a few old URLs (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/358\"\u003e#358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/154fe43feb17947e2c933d0bb3e26618129909a8\"\u003e\u003ccode\u003e154fe43\u003c/code\u003e\u003c/a\u003e 🔧 Update pre-commit and upload-artifact (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `numpy` from 2.2.5 to 2.3.5\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.3.5 (Nov 16, 2025)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.3.5 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.3.5 release is a patch release split between a number of maintenance\nupdates and bug fixes. This release supports Python versions 3.11-3.14.\u003c/p\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eA total of 10 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\u003eAaron Kollasch +\u003c/li\u003e\n\u003cli\u003eCharles Harris\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eMatti Picus\u003c/li\u003e\n\u003cli\u003eNathan Goldbaum\u003c/li\u003e\n\u003cli\u003eRafael Laboissière +\u003c/li\u003e\n\u003cli\u003eSayed Awad\u003c/li\u003e\n\u003cli\u003eSebastian Berg\u003c/li\u003e\n\u003cli\u003eWarren Weckesser\u003c/li\u003e\n\u003cli\u003eYasir Ashfaq +\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ePull requests merged\u003c/h2\u003e\n\u003cp\u003eA total of 16 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/29979\"\u003e#29979\u003c/a\u003e: MAINT: Prepare 2.3.x for further development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30026\"\u003e#30026\u003c/a\u003e: SIMD, BLD: Backport FPMATH mode on x86-32 and filter successor...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30029\"\u003e#30029\u003c/a\u003e: MAINT: Backport write_release.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30041\"\u003e#30041\u003c/a\u003e: TYP: Various typing updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30059\"\u003e#30059\u003c/a\u003e: BUG: Fix np.strings.slice if stop=None or start and stop \u0026gt;= len...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30063\"\u003e#30063\u003c/a\u003e: BUG: Fix np.strings.slice if start \u0026gt; stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30076\"\u003e#30076\u003c/a\u003e: BUG: avoid negating INT_MIN in PyArray_Round implementation (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30071\"\u003e#30071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30090\"\u003e#30090\u003c/a\u003e: BUG: Fix resize when it contains references (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/29970\"\u003e#29970\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30129\"\u003e#30129\u003c/a\u003e: BLD: update scipy-openblas, use -Dpkg_config_path (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30049\"\u003e#30049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30130\"\u003e#30130\u003c/a\u003e: BUG: Avoid compilation error of wrapper file generated with SWIG...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30157\"\u003e#30157\u003c/a\u003e: BLD: use scipy-openblas 0.3.30.7 (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30132\"\u003e#30132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30158\"\u003e#30158\u003c/a\u003e: DOC: Remove nonexistent \u003ccode\u003eorder\u003c/code\u003e parameter docs of \u003ccode\u003ema.asanyarray\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30185\"\u003e#30185\u003c/a\u003e: BUG: Fix check of PyMem_Calloc return value. (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30176\"\u003e#30176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30217\"\u003e#30217\u003c/a\u003e: DOC: fix links for newly rebuilt numpy-tutorials site\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30218\"\u003e#30218\u003c/a\u003e: BUG: Fix build on s390x with clang (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30214\"\u003e#30214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30237\"\u003e#30237\u003c/a\u003e: ENH: Make FPE blas check a runtime check for all apple arm systems\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.3.4 (Oct 15,  2025)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.3.4 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.3.4 release is a patch release split between a number of maintenance\nupdates and bug fixes. This release supports Python versions 3.11-3.14. This\nrelease is based on Python 3.14.0 final.\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/numpy/numpy/commit/c3d60fc8393f3ca3306b8ce8b6453d43737e3d90\"\u003e\u003ccode\u003ec3d60fc\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30238\"\u003e#30238\u003c/a\u003e from charris/prepare-2.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/11451fa35d49d8c809cdef87106417833bdacfbe\"\u003e\u003ccode\u003e11451fa\u003c/code\u003e\u003c/a\u003e REL: Prepare for the NumPy 2.3.5 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/eab5bd47df62782edceccf4cf99112851f7a8975\"\u003e\u003ccode\u003eeab5bd4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30237\"\u003e#30237\u003c/a\u003e from charris/backport-30102\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/7cea31aa6255994bcd17b3ee2f6dbf671eaa9598\"\u003e\u003ccode\u003e7cea31a\u003c/code\u003e\u003c/a\u003e Fixup merge of multiarraymodule.c\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/b8981736060011506e497c5bca24a75c5bddee39\"\u003e\u003ccode\u003eb898173\u003c/code\u003e\u003c/a\u003e Update numpy/_core/src/common/blas_utils.h\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/comm...\n\n_Description has been truncated_","html_url":"https://github.com/reichlab/cladetime/pull/186","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/reichlab%2Fcladetime/issues/186","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/186/packages"}],"issue_packages":[{"old_version":"4.1.1","new_version":"4.1.2","update_type":"patch","path":"/requirements","pr_created_at":"2026-02-11T17:18:15.000Z","version_change":"4.1.1 → 4.1.2","issue":{"uuid":"3927700448","node_id":"PR_kwDORODWAM7DELxY","number":13,"state":"open","title":"Bump sphinx-toolbox from 4.1.1 to 4.1.2 in /requirements","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-02-11T17:18:15.000Z","updated_at":"2026-02-11T17:18:16.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.1.1","new_version":"4.1.2","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":"/requirements","ecosystem":"pip"},"body":"Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.1.1 to 4.1.2.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.2\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.2\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e📝 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e:octocat: repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🙋 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🏪 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/424ec8cc2b7af5faf6114c06f9a528ef00601911\"\u003e\u003ccode\u003e424ec8c\u003c/code\u003e\u003c/a\u003e Bump version v4.1.1 -\u0026gt; v4.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/6646ea845522b5e8b2a78f066cf9c0a080e37979\"\u003e\u003ccode\u003e6646ea8\u003c/code\u003e\u003c/a\u003e Updated files with 'repo_helper'. (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/206\"\u003e#206\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/eb99359653b8a34c7bf13d79f1fdd0ab7f7ef26b\"\u003e\u003ccode\u003eeb99359\u003c/code\u003e\u003c/a\u003e Ignore man page builds for CollapseNode (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/0efd91a93cac16622119784eacaf8f0129d26505\"\u003e\u003ccode\u003e0efd91a\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/1c79c9c38a8594479846af7f83787ff6a1a9db40\"\u003e\u003ccode\u003e1c79c9c\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/a88102b4a9aee2a547b810b23b4b344eee8d192b\"\u003e\u003ccode\u003ea88102b\u003c/code\u003e\u003c/a\u003e Updated files with 'repo_helper'. (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/202\"\u003e#202\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ea234ff53fd003fc798526639732a758227da987\"\u003e\u003ccode\u003eea234ff\u003c/code\u003e\u003c/a\u003e Fix typo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/38974cb15585973b173c1c258c87992e4a0fb2df\"\u003e\u003ccode\u003e38974cb\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/78567ef0e2d8ea024546ce6f5dca20e87feeb9ff\"\u003e\u003ccode\u003e78567ef\u003c/code\u003e\u003c/a\u003e Convert test_get_variable_type to use pytest.mark.parametrize\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/a02575ed5290d0457609811954e18e17967ea233\"\u003e\u003ccode\u003ea02575e\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.1.1...v4.1.2\"\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=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.1.1\u0026new-version=4.1.2)](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/nludd25/pytorch-lightning/pull/13","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/nludd25%2Fpytorch-lightning/issues/13","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/13/packages"}},{"old_version":"4.0.0","new_version":"4.1.2","update_type":"minor","path":null,"pr_created_at":"2026-01-26T04:37:31.000Z","version_change":"4.0.0 → 4.1.2","issue":{"uuid":"3854485334","node_id":"PR_kwDOMftbFc6_Sm3X","number":190,"state":"closed","title":"Bump the py-updates group across 1 directory with 83 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-02-02T04:30:52.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-26T04:37:31.000Z","updated_at":"2026-02-02T04:30:53.000Z","time_to_close":604401,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"py-updates","update_count":83,"packages":[{"name":"awscli","old_version":"1.40.17","new_version":"1.44.24","repository_url":"https://github.com/aws/aws-cli"},{"name":"polars","old_version":"1.28.1","new_version":"1.37.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"requests","old_version":"2.32.3","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"biopython","old_version":"1.85","new_version":"1.86","repository_url":"https://github.com/biopython/biopython"},{"name":"boto3","old_version":"1.38.18","new_version":"1.42.34","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.38.18","new_version":"1.42.34","repository_url":"https://github.com/boto/botocore"},{"name":"certifi","old_version":"2025.4.26","new_version":"2026.1.4","repository_url":"https://github.com/certifi/python-certifi"},{"name":"charset-normalizer","old_version":"3.4.2","new_version":"3.4.4","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"cloudpathlib","old_version":"0.21.1","new_version":"0.23.0","repository_url":"https://github.com/drivendataorg/cloudpathlib"},{"name":"docutils","old_version":"0.19","new_version":"0.22.4","repository_url":"https://github.com/rtfd/recommonmark"},{"name":"idna","old_version":"3.10","new_version":"3.11","repository_url":"https://github.com/kjd/idna"},{"name":"jellyfish","old_version":"1.2.0","new_version":"1.2.1"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"markdown-it-py","old_version":"3.0.0","new_version":"4.0.0","repository_url":"https://github.com/executablebooks/markdown-it-py"},{"name":"numpy","old_version":"2.2.5","new_version":"2.4.1","repository_url":"https://github.com/numpy/numpy"},{"name":"pandas","old_version":"2.2.3","new_version":"3.0.0","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"pyarrow","old_version":"20.0.0","new_version":"23.0.0","repository_url":"https://github.com/apache/arrow"},{"name":"pyasn1","old_version":"0.6.1","new_version":"0.6.2","repository_url":"https://github.com/pyasn1/pyasn1"},{"name":"pygments","old_version":"2.19.1","new_version":"2.19.2","repository_url":"https://github.com/pygments/pygments"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"rich","old_version":"14.0.0","new_version":"14.3.1","repository_url":"https://github.com/Textualize/rich"},{"name":"rsa","old_version":"4.7.2","new_version":"4.9.1","repository_url":"https://github.com/sybrenstuvel/python-rsa"},{"name":"s3transfer","old_version":"0.12.0","new_version":"0.16.0","repository_url":"https://github.com/boto/s3transfer"},{"name":"structlog","old_version":"25.3.0","new_version":"25.5.0","repository_url":"https://github.com/hynek/structlog"},{"name":"tzdata","old_version":"2025.2","new_version":"2025.3","repository_url":"https://github.com/python/tzdata"},{"name":"urllib3","old_version":"2.4.0","new_version":"2.6.3","repository_url":"https://github.com/urllib3/urllib3"},{"name":"zstandard","old_version":"0.23.0","new_version":"0.25.0","repository_url":"https://github.com/indygreg/python-zstandard"},{"name":"boto3-stubs","old_version":"1.38.18","new_version":"1.42.34","repository_url":"https://github.com/youtype/mypy_boto3_builder"},{"name":"botocore-stubs","old_version":"1.38.18","new_version":"1.42.34","repository_url":"https://github.com/youtype/botocore-stubs"},{"name":"cffi","old_version":"1.17.1","new_version":"2.0.0","repository_url":"https://github.com/python-cffi/cffi"},{"name":"coverage","old_version":"7.8.0","new_version":"7.13.2","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cryptography","old_version":"44.0.3","new_version":"46.0.3","repository_url":"https://github.com/pyca/cryptography"},{"name":"freezegun","old_version":"1.5.1","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"iniconfig","old_version":"2.1.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"markupsafe","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/pallets/markupsafe"},{"name":"moto","old_version":"5.1.4","new_version":"5.1.20","repository_url":"https://github.com/getmoto/moto"},{"name":"mypy","old_version":"1.15.0","new_version":"1.19.1","repository_url":"https://github.com/python/mypy"},{"name":"mypy-boto3-s3","old_version":"1.38.0","new_version":"1.42.21","repository_url":"https://github.com/youtype/mypy_boto3_builder"},{"name":"packaging","old_version":"25.0","new_version":"26.0","repository_url":"https://github.com/pypa/packaging"},{"name":"pycparser","old_version":"2.22","new_version":"3.0","repository_url":"https://github.com/eliben/pycparser"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"responses","old_version":"0.25.7","new_version":"0.25.8","repository_url":"https://github.com/getsentry/responses"},{"name":"ruff","old_version":"0.11.10","new_version":"0.14.14","repository_url":"https://github.com/astral-sh/ruff"},{"name":"types-awscrt","old_version":"0.27.2","new_version":"0.31.1","repository_url":"https://github.com/youtype/types-awscrt"},{"name":"types-requests","old_version":"2.32.0.20250515","new_version":"2.32.4.20260107","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-s3transfer","old_version":"0.12.0","new_version":"0.16.0","repository_url":"https://github.com/youtype/types-s3transfer"},{"name":"typing-extensions","old_version":"4.13.2","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"werkzeug","old_version":"3.1.3","new_version":"3.1.5","repository_url":"https://github.com/pallets/werkzeug"},{"name":"xmltodict","old_version":"0.14.2","new_version":"1.0.2","repository_url":"https://github.com/martinblech/xmltodict"},{"name":"alabaster","old_version":"0.7.16","new_version":"1.0.0","repository_url":"https://github.com/sphinx-doc/alabaster"},{"name":"anyio","old_version":"4.9.0","new_version":"4.12.1","repository_url":"https://github.com/agronholm/anyio"},{"name":"beautifulsoup4","old_version":"4.13.4","new_version":"4.14.3"},{"name":"cachecontrol","old_version":"0.14.3","new_version":"0.14.4","repository_url":"https://github.com/psf/cachecontrol"},{"name":"click","old_version":"8.2.0","new_version":"8.3.1","repository_url":"https://github.com/pallets/click"},{"name":"contourpy","old_version":"1.3.2","new_version":"1.3.3","repository_url":"https://github.com/contourpy/contourpy"},{"name":"filelock","old_version":"3.18.0","new_version":"3.20.3","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"fonttools","old_version":"4.58.0","new_version":"4.61.1","repository_url":"https://github.com/fonttools/fonttools"},{"name":"furo","old_version":"2024.8.6","new_version":"2025.12.19","repository_url":"https://github.com/pradyunsg/furo"},{"name":"kiwisolver","old_version":"1.4.8","new_version":"1.4.9","repository_url":"https://github.com/nucleic/kiwi"},{"name":"matplotlib","old_version":"3.10.3","new_version":"3.10.8","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mdit-py-plugins","old_version":"0.4.2","new_version":"0.5.0","repository_url":"https://github.com/executablebooks/mdit-py-plugins"},{"name":"more-itertools","old_version":"10.7.0","new_version":"10.8.0","repository_url":"https://github.com/more-itertools/more-itertools"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.1.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"myst-parser","old_version":"4.0.1","new_version":"5.0.0","repository_url":"https://github.com/executablebooks/MyST-Parser"},{"name":"pillow","old_version":"11.2.1","new_version":"12.1.0","repository_url":"https://github.com/python-pillow/Pillow"},{"name":"platformdirs","old_version":"4.3.8","new_version":"4.5.1","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pyparsing","old_version":"3.2.3","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"ruamel-yaml","old_version":"0.18.10","new_version":"0.19.1"},{"name":"ruamel-yaml-clib","old_version":"0.2.12","new_version":"0.2.15"},{"name":"soupsieve","old_version":"2.7","new_version":"2.8.3","repository_url":"https://github.com/facelessuser/soupsieve"},{"name":"sphinx","old_version":"7.3.7","new_version":"9.0.4","repository_url":"https://github.com/sphinx-doc/sphinx"},{"name":"sphinx-autobuild","old_version":"2024.10.3","new_version":"2025.8.25","repository_url":"https://github.com/sphinx-doc/sphinx-autobuild"},{"name":"sphinx-autodoc-typehints","old_version":"2.3.0","new_version":"3.6.1","repository_url":"https://github.com/tox-dev/sphinx-autodoc-typehints"},{"name":"sphinx-jinja2-compat","old_version":"0.3.0","new_version":"0.4.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-jinja2-compat"},{"name":"sphinx-prompt","old_version":"1.8.0","new_version":"1.10.2","repository_url":"https://github.com/sbrunner/sphinx-prompt"},{"name":"sphinx-tabs","old_version":"3.4.5","new_version":"3.4.7","repository_url":"https://github.com/executablebooks/sphinx-tabs"},{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.2","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"},{"name":"sphinxext-opengraph","old_version":"0.10.0","new_version":"0.13.0","repository_url":"https://github.com/sphinx-doc/sphinxext-opengraph"},{"name":"starlette","old_version":"0.46.2","new_version":"0.52.1","repository_url":"https://github.com/Kludex/starlette"},{"name":"uvicorn","old_version":"0.34.2","new_version":"0.40.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"watchfiles","old_version":"1.0.5","new_version":"1.1.1","repository_url":"https://github.com/samuelcolvin/watchfiles"},{"name":"websockets","old_version":"15.0.1","new_version":"16.0","repository_url":"https://github.com/python-websockets/websockets"}],"path":null,"ecosystem":"pip"},"body":"Bumps the py-updates group with 83 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [awscli](https://github.com/aws/aws-cli) | `1.40.17` | `1.44.24` |\n| [polars](https://github.com/pola-rs/polars) | `1.28.1` | `1.37.1` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.32.5` |\n| [biopython](https://github.com/biopython/biopython) | `1.85` | `1.86` |\n| [boto3](https://github.com/boto/boto3) | `1.38.18` | `1.42.34` |\n| [botocore](https://github.com/boto/botocore) | `1.38.18` | `1.42.34` |\n| [certifi](https://github.com/certifi/python-certifi) | `2025.4.26` | `2026.1.4` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.2` | `3.4.4` |\n| [cloudpathlib](https://github.com/drivendataorg/cloudpathlib) | `0.21.1` | `0.23.0` |\n| [docutils](https://github.com/rtfd/recommonmark) | `0.19` | `0.22.4` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.11` |\n| [jellyfish](https://jellyfish.jpt.sh/) | `1.2.0` | `1.2.1` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [markdown-it-py](https://github.com/executablebooks/markdown-it-py) | `3.0.0` | `4.0.0` |\n| [numpy](https://github.com/numpy/numpy) | `2.2.5` | `2.4.1` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `3.0.0` |\n| [pyarrow](https://github.com/apache/arrow) | `20.0.0` | `23.0.0` |\n| [pyasn1](https://github.com/pyasn1/pyasn1) | `0.6.1` | `0.6.2` |\n| [pygments](https://github.com/pygments/pygments) | `2.19.1` | `2.19.2` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [rich](https://github.com/Textualize/rich) | `14.0.0` | `14.3.1` |\n| [rsa](https://github.com/sybrenstuvel/python-rsa) | `4.7.2` | `4.9.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.12.0` | `0.16.0` |\n| [structlog](https://github.com/hynek/structlog) | `25.3.0` | `25.5.0` |\n| [tzdata](https://github.com/python/tzdata) | `2025.2` | `2025.3` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.4.0` | `2.6.3` |\n| [zstandard](https://github.com/indygreg/python-zstandard) | `0.23.0` | `0.25.0` |\n| [boto3-stubs](https://github.com/youtype/mypy_boto3_builder) | `1.38.18` | `1.42.34` |\n| [botocore-stubs](https://github.com/youtype/botocore-stubs) | `1.38.18` | `1.42.34` |\n| [cffi](https://github.com/python-cffi/cffi) | `1.17.1` | `2.0.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.8.0` | `7.13.2` |\n| [cryptography](https://github.com/pyca/cryptography) | `44.0.3` | `46.0.3` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.1` | `1.5.5` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.1.0` | `2.3.0` |\n| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` |\n| [moto](https://github.com/getmoto/moto) | `5.1.4` | `5.1.20` |\n| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.19.1` |\n| [mypy-boto3-s3](https://github.com/youtype/mypy_boto3_builder) | `1.38.0` | `1.42.21` |\n| [packaging](https://github.com/pypa/packaging) | `25.0` | `26.0` |\n| [pycparser](https://github.com/eliben/pycparser) | `2.22` | `3.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.2` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [responses](https://github.com/getsentry/responses) | `0.25.7` | `0.25.8` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.10` | `0.14.14` |\n| [types-awscrt](https://github.com/youtype/types-awscrt) | `0.27.2` | `0.31.1` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.32.0.20250515` | `2.32.4.20260107` |\n| [types-s3transfer](https://github.com/youtype/types-s3transfer) | `0.12.0` | `0.16.0` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.13.2` | `4.15.0` |\n| [werkzeug](https://github.com/pallets/werkzeug) | `3.1.3` | `3.1.5` |\n| [xmltodict](https://github.com/martinblech/xmltodict) | `0.14.2` | `1.0.2` |\n| [alabaster](https://github.com/sphinx-doc/alabaster) | `0.7.16` | `1.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.9.0` | `4.12.1` |\n| [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) | `4.13.4` | `4.14.3` |\n| [cachecontrol](https://github.com/psf/cachecontrol) | `0.14.3` | `0.14.4` |\n| [click](https://github.com/pallets/click) | `8.2.0` | `8.3.1` |\n| [contourpy](https://github.com/contourpy/contourpy) | `1.3.2` | `1.3.3` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.18.0` | `3.20.3` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.58.0` | `4.61.1` |\n| [furo](https://github.com/pradyunsg/furo) | `2024.8.6` | `2025.12.19` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.8` | `1.4.9` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.3` | `3.10.8` |\n| [mdit-py-plugins](https://github.com/executablebooks/mdit-py-plugins) | `0.4.2` | `0.5.0` |\n| [more-itertools](https://github.com/more-itertools/more-itertools) | `10.7.0` | `10.8.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.1.2` |\n| [myst-parser](https://github.com/executablebooks/MyST-Parser) | `4.0.1` | `5.0.0` |\n| [pillow](https://github.com/python-pillow/Pillow) | `11.2.1` | `12.1.0` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.8` | `4.5.1` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.3` | `3.3.2` |\n| ruamel-yaml | `0.18.10` | `0.19.1` |\n| ruamel-yaml-clib | `0.2.12` | `0.2.15` |\n| [soupsieve](https://github.com/facelessuser/soupsieve) | `2.7` | `2.8.3` |\n| [sphinx](https://github.com/sphinx-doc/sphinx) | `7.3.7` | `9.0.4` |\n| [sphinx-autobuild](https://github.com/sphinx-doc/sphinx-autobuild) | `2024.10.3` | `2025.8.25` |\n| [sphinx-autodoc-typehints](https://github.com/tox-dev/sphinx-autodoc-typehints) | `2.3.0` | `3.6.1` |\n| [sphinx-jinja2-compat](https://github.com/sphinx-toolbox/sphinx-jinja2-compat) | `0.3.0` | `0.4.1` |\n| [sphinx-prompt](https://github.com/sbrunner/sphinx-prompt) | `1.8.0` | `1.10.2` |\n| [sphinx-tabs](https://github.com/executablebooks/sphinx-tabs) | `3.4.5` | `3.4.7` |\n| [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) | `4.0.0` | `4.1.2` |\n| [sphinxext-opengraph](https://github.com/sphinx-doc/sphinxext-opengraph) | `0.10.0` | `0.13.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.46.2` | `0.52.1` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.34.2` | `0.40.0` |\n| [watchfiles](https://github.com/samuelcolvin/watchfiles) | `1.0.5` | `1.1.1` |\n| [websockets](https://github.com/python-websockets/websockets) | `15.0.1` | `16.0` |\n\n\nUpdates `awscli` from 1.40.17 to 1.44.24\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/3af1873c23374171e0bc9a6891a361221178fd8d\"\u003e\u003ccode\u003e3af1873\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.24'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/3db4f00603a7e7a76ffc0838593db9656e72799e\"\u003e\u003ccode\u003e3db4f00\u003c/code\u003e\u003c/a\u003e Bumping version to 1.44.24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/2c19a9fcf0f35398a280868073b4170c02f4ef5a\"\u003e\u003ccode\u003e2c19a9f\u003c/code\u003e\u003c/a\u003e Update changelog based on model updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/80d79654015909384fe93f268867f5dec1e58705\"\u003e\u003ccode\u003e80d7965\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.23'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/75d1e11e5a5e06d8dcc5637ea26091874275eb99\"\u003e\u003ccode\u003e75d1e11\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.23' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/a220ab958493ad5a52289d964546d66538ee7711\"\u003e\u003ccode\u003ea220ab9\u003c/code\u003e\u003c/a\u003e Bumping version to 1.44.23\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/c48c8ab1a19bdf5f8b3510e9948016443eb7d2e0\"\u003e\u003ccode\u003ec48c8ab\u003c/code\u003e\u003c/a\u003e Update changelog based on model updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/39e70dfeaa3a5dad7c8c49d08c64b79bc299c58c\"\u003e\u003ccode\u003e39e70df\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.22'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/094e6fa721d66f284e1466e758e32120b8594ab7\"\u003e\u003ccode\u003e094e6fa\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.22' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/4cd22ade79f67568ad66b6d406882dcd02a6fa6c\"\u003e\u003ccode\u003e4cd22ad\u003c/code\u003e\u003c/a\u003e Bumping version to 1.44.22\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-cli/compare/1.40.17...1.44.24\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `polars` from 1.28.1 to 1.37.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pola-rs/polars/releases\"\u003epolars's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePython Polars 1.37.1\u003c/h2\u003e\n\u003ch2\u003e🚀 Performance improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up \u003ccode\u003eSQL\u003c/code\u003e interface \u0026quot;UNION\u0026quot; clauses (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26039\"\u003e#26039\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐞 Bug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eOptimize slicing support on compressed IPC (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26071\"\u003e#26071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCPU check for musl builds (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26076\"\u003e#26076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePropagate C Stream import errors instead of panicking (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26036\"\u003e#26036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix slicing on compressed IPC (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26066\"\u003e#26066\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📖 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eClarify min_by/max_by behavior on ties (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26077\"\u003e#26077\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠️ Other improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMark top slow normal tests as slow (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26080\"\u003e#26080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate breaking deps (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26055\"\u003e#26055\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix for upstream url bug and update deps (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26052\"\u003e#26052\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eProperly pin chrono (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26051\"\u003e#26051\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDon't run rust doctests (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26046\"\u003e#26046\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate deps (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26042\"\u003e#26042\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eIgnore very slow test (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26041\"\u003e#26041\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThank you to all our contributors for making this release possible!\n\u003ca href=\"https://github.com/Voultapher\"\u003e\u003ccode\u003e@​Voultapher\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/alexander-beedie\"\u003e\u003ccode\u003e@​alexander-beedie\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/kdn36\"\u003e\u003ccode\u003e@​kdn36\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/nameexhaustion\"\u003e\u003ccode\u003e@​nameexhaustion\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/orlp\"\u003e\u003ccode\u003e@​orlp\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/ritchie46\"\u003e\u003ccode\u003e@​ritchie46\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/wtn\"\u003e\u003ccode\u003e@​wtn\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePython Polars 1.37.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Performance improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up \u003ccode\u003eSQL\u003c/code\u003e interface \u0026quot;ORDER BY\u0026quot; clauses (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26037\"\u003e#26037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd fast kernel for is_nan and use it for numpy NaN-\u0026gt;null conversion (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26034\"\u003e#26034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOptimize ArrayFromIter implementations for ObjectArray (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25712\"\u003e#25712\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew streaming NDJSON sink pipeline (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25948\"\u003e#25948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew streaming CSV sink pipeline (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25900\"\u003e#25900\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDispatch partitioned usage of \u003ccode\u003esink_*\u003c/code\u003e functions to new-streaming by default (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25910\"\u003e#25910\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace ryu with faster zmij (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25885\"\u003e#25885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReduce memory usage for .item() count in grouped first/last (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25787\"\u003e#25787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip schema inference if schema provided for \u003ccode\u003escan_csv/ndjson\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25757\"\u003e#25757\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd width-aware chunking to prevent degradation with wide data (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25764\"\u003e#25764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse new sink pipeline for write/sink_ipc (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25746\"\u003e#25746\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReduce memory usage when scanning multiple parquet files in streaming (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25747\"\u003e#25747\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDon't call cluster_with_columns optimization if not needed (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25724\"\u003e#25724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e✨ Enhancements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new \u003ccode\u003epl.PartitionBy\u003c/code\u003e API (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26004\"\u003e#26004\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eArrowStreamExportable and sink_delta (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25994\"\u003e#25994\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/pola-rs/polars/commit/bb79993c3aa91d0db7d20be8f75c8075cad97067\"\u003e\u003ccode\u003ebb79993\u003c/code\u003e\u003c/a\u003e Python Polars 1.37.1 (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26078\"\u003e#26078\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/26a9d097af5ea7d35f72bb8514ab990ddbce4796\"\u003e\u003ccode\u003e26a9d09\u003c/code\u003e\u003c/a\u003e chore: Mark top slow normal tests as slow (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26080\"\u003e#26080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/451f247ba33506c9822478d0409a5075fec5797c\"\u003e\u003ccode\u003e451f247\u003c/code\u003e\u003c/a\u003e refactor(rust): Simplify \u003ccode\u003ePlPath\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26053\"\u003e#26053\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/b532aad910b0fe065b9fbe648944f3a580d3d104\"\u003e\u003ccode\u003eb532aad\u003c/code\u003e\u003c/a\u003e docs: Clarify min_by/max_by behavior on ties (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26077\"\u003e#26077\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/707796731ab7cf51f296a9b56a0231a5537e4259\"\u003e\u003ccode\u003e7077967\u003c/code\u003e\u003c/a\u003e fix: Optimize slicing support on compressed IPC (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26071\"\u003e#26071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/44c139746390a0b81b3e908a8a6529cc6efdea1e\"\u003e\u003ccode\u003e44c1397\u003c/code\u003e\u003c/a\u003e fix: CPU check for musl builds (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26076\"\u003e#26076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/35ec39865a1952f60f46d17e461974881844b9c1\"\u003e\u003ccode\u003e35ec398\u003c/code\u003e\u003c/a\u003e chore: Update breaking deps (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26055\"\u003e#26055\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/84fa66381626dbd826e2d5a663285fb193356d64\"\u003e\u003ccode\u003e84fa663\u003c/code\u003e\u003c/a\u003e fix(python): Propagate C Stream import errors instead of panicking (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26036\"\u003e#26036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/e9e20e468cb84f966eed1e37a7b23afaf842e88f\"\u003e\u003ccode\u003ee9e20e4\u003c/code\u003e\u003c/a\u003e fix: Fix slicing on compressed IPC (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26066\"\u003e#26066\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/b0fdbd34d430d934bda9a4ca3f75e136223bd95b\"\u003e\u003ccode\u003eb0fdbd3\u003c/code\u003e\u003c/a\u003e chore: Fix for upstream url bug and update deps (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26052\"\u003e#26052\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pola-rs/polars/compare/py-1.28.1...py-1.37.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.3 to 2.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/releases\"\u003erequests's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.32.5\u003c/h2\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b25c87d7cb8d6a18a37fa12442b5f883f9e41741\"\u003e\u003ccode\u003eb25c87d\u003c/code\u003e\u003c/a\u003e v2.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/131e506079d97606e4214cc4d87b780ac478de7a\"\u003e\u003ccode\u003e131e506\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/7010\"\u003e#7010\u003c/a\u003e from psf/dependabot/github_actions/actions/checkout-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b336cb2bc616a63a93c6470c558fc1f576b77f90\"\u003e\u003ccode\u003eb336cb2\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/46e939b5525d9c72b677340985582b04b128478a\"\u003e\u003ccode\u003e46e939b\u003c/code\u003e\u003c/a\u003e Update publish workflow to use \u003ccode\u003eartifact-id\u003c/code\u003e instead of \u003ccode\u003ename\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4b9c546aa3f35fca6ca24945376fe7462bb007c4\"\u003e\u003ccode\u003e4b9c546\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6999\"\u003e#6999\u003c/a\u003e from psf/dependabot/github_actions/step-security/har...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7618dbef01d333f23ba4b9c4d97397b06dd89cb6\"\u003e\u003ccode\u003e7618dbe\u003c/code\u003e\u003c/a\u003e Bump step-security/harden-runner from 2.12.0 to 2.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2edca11103c1c27dd8b572dab544b7f48cf3b446\"\u003e\u003ccode\u003e2edca11\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 and drop support for Python 3.8 (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6993\"\u003e#6993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/fec96cd5976ad763e45bac9a033d62cca1877a00\"\u003e\u003ccode\u003efec96cd\u003c/code\u003e\u003c/a\u003e Update Makefile rules (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6996\"\u003e#6996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/d58d8aa2f45c3575268d6d5250745ef69f9cf8b7\"\u003e\u003ccode\u003ed58d8aa\u003c/code\u003e\u003c/a\u003e docs: clarify timeout parameter uses seconds in Session.request (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6994\"\u003e#6994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/91a3eabd3dcc4d7f36dd8249e4777a90ef9b4305\"\u003e\u003ccode\u003e91a3eab\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.5 to 3.29.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `biopython` from 1.85 to 1.86\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/biopython/biopython/blob/master/NEWS.rst\"\u003ebiopython's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e28 October 2025: Biopython 1.86\u003c/h1\u003e\n\u003cp\u003eThis release of Biopython supports Python 3.10, 3.11, 3.12, 3.13 and 3.14.  It\nhas also been tested on PyPy3.10 v7.3.19.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.SearchIO\u003c/code\u003e now supports parsing the tabular and plain text output of\n\u003ccode\u003eInfernal \u0026lt;http://eddylab.org/infernal/\u0026gt;\u003c/code\u003e (v1.0.0+) RNA search tool. The\nformat names are \u003ccode\u003einfernal-tab\u003c/code\u003e and \u003ccode\u003einfernal-text\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe default value of the gap score of a \u003ccode\u003ePairwiseAligner\u003c/code\u003e object was changed\nin this release.  Previously, for consistency with \u003ccode\u003eBio.pairwise2\u003c/code\u003e, the\ndefault value for gap score was 0.  However, this means that a mismatch, an\ninsertion followed by a deletion, and a deletion followed by an insertion all\nget assigned a score of 0.  The aligner then finds a large number of alignments\nthat are logically the same, but have trivial differences between them.  For\nexample, aligning AAACAAA to AAAGAAA previously yielded the following three\nalignments, all with score 6::\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e AAACAAA        AAAC-AAA        AAA-CAAA\n AAAGAAA        AAA-GAAA        AAAG-AAA\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eWith the new default parameter for the gap score, only the first alignment is\nreturned.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.PDBIO\u003c/code\u003e now ensures that b-factor values are always at most 6 characters to\nensure that we do not violate the wwPDB specification. This should not have an impact\non the majority of uses, as b-factor values are generally small (less than 100). When\n1000 \u0026lt;= b-factor \u0026lt; 10_000, the value is rounded to a single decimal place. When,\n10_000 \u0026lt;= b-factor \u0026lt; 999_999, the value is rounded to zero decimal places. Values\nabove 999_999 are now clamped. The justification for this is the rise in the b-factor\nfield being used for additional metadata, typically from computational tools.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.Align\u003c/code\u003e now provides a method \u003ccode\u003eAlignment.from_alignments_with_same_reference\u003c/code\u003e\nto construct a multiple sequence alignment from a collection of alignments\nthat share the same reference sequence.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.PDBIO\u003c/code\u003e will now raise module specific warnings:\n\u003ccode\u003eBio.PDB.PDBExceptions.PDBIOWarning\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.SCADIO\u003c/code\u003e now supports object selection by color in the OpenSCAD\noutput file.  This enables generation of separate STL files for each color for\nprinting protein structures on multi-material 3D printers.\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eiplotx\u003c/code\u003e library is mentioned in the Tutorial as an option to visualise\ntrees using complex style options.\u003c/p\u003e\n\u003cp\u003eMany thanks to the Biopython developers and community for making this release\npossible, especially the following contributors:\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\u003eSee full diff in \u003ca href=\"https://github.com/biopython/biopython/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.18 to 1.42.34\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/9a285e6beab78c1f4c97047674ec09ac5451c4d1\"\u003e\u003ccode\u003e9a285e6\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.34'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/29574158e22c3b2d6ca044eef1dc054d28d73485\"\u003e\u003ccode\u003e2957415\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.34\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/8e1fd2e6e5c1fd6236cacf2dc9064d55d8baf07b\"\u003e\u003ccode\u003e8e1fd2e\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/9cadce52dae6e58e450a9ac0745a721dda8a4044\"\u003e\u003ccode\u003e9cadce5\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.33'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/ee24f15c3013be4f4c6e76bfbc948b910e6f8f35\"\u003e\u003ccode\u003eee24f15\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.33' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b0f2cf318d9bef8eaf3f11cd81b22ce67810ea82\"\u003e\u003ccode\u003eb0f2cf3\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.33\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/6e690ed2966406d4b53532a44e70c93370368ae6\"\u003e\u003ccode\u003e6e690ed\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/b84ec5ebd8880b77e998bfdd28984f214c3f1fa3\"\u003e\u003ccode\u003eb84ec5e\u003c/code\u003e\u003c/a\u003e Add BOTOCORE_TCP_KEEPALIVE environment variable documentation (\u003ca href=\"https://redirect.github.com/boto/boto3/issues/4705\"\u003e#4705\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/36cebd34052db2fc7449b85ac04f903fb40f8b2f\"\u003e\u003ccode\u003e36cebd3\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.32'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/d4d10440677e98c5c15fb6c84cc605bd7401fd74\"\u003e\u003ccode\u003ed4d1044\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.32' into develop\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.18...1.42.34\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `botocore` from 1.38.18 to 1.42.34\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/d52e6ce4372810dc3a0d6701b366f54add0aedae\"\u003e\u003ccode\u003ed52e6ce\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.34'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/fce5268f1cd4063f30e3faec44da7efa309cae5f\"\u003e\u003ccode\u003efce5268\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.34\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/45e43f9baa8c57d13eb75d7566f1401366a1a188\"\u003e\u003ccode\u003e45e43f9\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/b9ed58fa2f31170724538f6ed86e8cbf833de8fd\"\u003e\u003ccode\u003eb9ed58f\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.33'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/48062d233b8173af5af60afb85443e04c6520146\"\u003e\u003ccode\u003e48062d2\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.33' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/8eb5ab6cd38ba8d94d938fac2e6086bd918760dc\"\u003e\u003ccode\u003e8eb5ab6\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.33\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/05b651e910c4b59a971a2566afb4b82a51fb00fc\"\u003e\u003ccode\u003e05b651e\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/aba67690e5aa14f58083dfa168d7fc09681c884a\"\u003e\u003ccode\u003eaba6769\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/3549e0136b656df25e985bdb85233f95da5851d3\"\u003e\u003ccode\u003e3549e01\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.32'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/0847d5e023fd0f7d0e19a154ee22a46e8f56bc38\"\u003e\u003ccode\u003e0847d5e\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.32' into develop\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/botocore/compare/1.38.18...1.42.34\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `certifi` from 2025.4.26 to 2026.1.4\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/c64d9f3a8496c0195548697f2080e716af66dd6a\"\u003e\u003ccode\u003ec64d9f3\u003c/code\u003e\u003c/a\u003e 2026.01.04 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/389\"\u003e#389\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/4ac232f05a547071543d2fb069aa3c62b1dc79f3\"\u003e\u003ccode\u003e4ac232f\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 6.0.0 to 7.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/387\"\u003e#387\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/95ae4b20e8abb7fa708e751e346466d16b36211a\"\u003e\u003ccode\u003e95ae4b2\u003c/code\u003e\u003c/a\u003e Update CI workflow to use Ubuntu 24.04 and Python 3.14 stable (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/386\"\u003e#386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/b72a7b1a40ae20755338d3132d8f880427b3b6fc\"\u003e\u003ccode\u003eb72a7b1\u003c/code\u003e\u003c/a\u003e Bump dessant/lock-threads from 5.0.1 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/385\"\u003e#385\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ecc267216fbdcecb1b2aa2aa175152b773cc5ced\"\u003e\u003ccode\u003eecc2672\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/384\"\u003e#384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/6a897dbc1124b17f179ef225742fcda481ec96f3\"\u003e\u003ccode\u003e6a897db\u003c/code\u003e\u003c/a\u003e Bump peter-evans/create-pull-request from 7.0.11 to 8.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/383\"\u003e#383\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/27ca98ad845ee6d130a88301622c137893f71620\"\u003e\u003ccode\u003e27ca98a\u003c/code\u003e\u003c/a\u003e Bump peter-evans/create-pull-request from 7.0.9 to 7.0.11 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/381\"\u003e#381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/56c59a63909cfd3162b37e7bc16956e64df0f737\"\u003e\u003ccode\u003e56c59a6\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 6.0.0 to 6.0.1 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/382\"\u003e#382\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ae0021cd43a77bfba67d20a041469cdf6996570e\"\u003e\u003ccode\u003eae0021c\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 6.0.0 to 6.1.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/380\"\u003e#380\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ddf5d0b5d2a3d55fd92a79f141dbb5e074caf924\"\u003e\u003ccode\u003eddf5d0b\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5.0.1 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/378\"\u003e#378\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/certifi/python-certifi/compare/2025.04.26...2026.01.04\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `charset-normalizer` from 3.4.2 to 3.4.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.3...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003e multiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/b30ffdcc2f11043c0d34e60fe66d3815cd49b32b\"\u003e\u003ccode\u003eb30ffdc\u003c/code\u003e\u003c/a\u003e :wrench: fix checksum step in cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/d3fbfcfad7dfe3c640886f1a6a6351da527f6634\"\u003e\u003ccode\u003ed3fbfcf\u003c/code\u003e\u003c/a\u003e :wrench: fix cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/dafbb95f8c00d3cc8b99158caa63006ffab98749\"\u003e\u003ccode\u003edafbb95\u003c/code\u003e\u003c/a\u003e Release 3.4.4 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/658\"\u003e#658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/1f18ffaa69d2c84fea7abedb8840197ba9c14562\"\u003e\u003ccode\u003e1f18ffa\u003c/code\u003e\u003c/a\u003e :arrow_up: raise mypy upper bound to 1.18.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/ef4ac69ad203891f24e26b2422ab3a08053044fa\"\u003e\u003ccode\u003eef4ac69\u003c/code\u003e\u003c/a\u003e Merge branch 'release-3.4.4' of github.com:jawah/charset_normalizer into rele...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/4b35dda053db5e2e60a247e80a116e4ef04f439b\"\u003e\u003ccode\u003e4b35dda\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/0ec6452f1a34cbc77a55b237c4118807b44c2a33\"\u003e\u003ccode\u003e0ec6452\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f341edec8a828dda394abfa011b1ded8b4b102e2\"\u003e\u003ccode\u003ef341ede\u003c/code\u003e\u003c/a\u003e :arrow_up: upgrade dependencies (dev, ci)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/a308841e660a4d61ea6c448e7b8bf97415ecdc4a\"\u003e\u003ccode\u003ea308841\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/9c906da611d5ca5ef076d6bf7f60e629f661d0b0\"\u003e\u003ccode\u003e9c906da\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.2...3.4.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cloudpathlib` from 0.21.1 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/drivendataorg/cloudpathlib/releases\"\u003ecloudpathlib's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14 (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/529\"\u003e#529\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/530\"\u003e#530\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eChanged \u003ccode\u003eCloudPath.copy\u003c/code\u003e to have the first parameter named \u003ccode\u003etarget\u003c/code\u003e instead of \u003ccode\u003edestination\u003c/code\u003e and added new \u003ccode\u003efollow_symlinks\u003c/code\u003e and \u003ccode\u003epreserve_metadata\u003c/code\u003e kwargs. \u003cstrong\u003eBreaking change for users that relied on the first parameter being named \u003ccode\u003edestination\u003c/code\u003e instead of \u003ccode\u003etarget\u003c/code\u003e.\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.copy_into\u003c/code\u003e to copy a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move\u003c/code\u003e to move a file or directory to another location.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move_into\u003c/code\u003e to move a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPathInfo\u003c/code\u003e and \u003ccode\u003eCloudPath.info\u003c/code\u003e to get information about a file or directory.\u003c/li\u003e\n\u003cli\u003eAdded additional no-op kwargs to \u003ccode\u003emkdir\u003c/code\u003e, \u003ccode\u003etouch\u003c/code\u003e, \u003ccode\u003eglob\u003c/code\u003e, \u003ccode\u003erglob\u003c/code\u003e, \u003ccode\u003estat\u003c/code\u003e to match pathlib.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.22.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed issue with GS credentials, using default auth enables a wider set of authentication methods in GS (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/390\"\u003e#390\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/514\"\u003e#514\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ljyanesm\"\u003e\u003ccode\u003e@​ljyanesm\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for http(s) urls with \u003ccode\u003eHttpClient\u003c/code\u003e, \u003ccode\u003eHttpPath\u003c/code\u003e, \u003ccode\u003eHttpsClient\u003c/code\u003e, and \u003ccode\u003eHttpsPath\u003c/code\u003e. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/455\"\u003e#455\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded experimental support for patching the builtins \u003ccode\u003eopen\u003c/code\u003e, \u003ccode\u003eos\u003c/code\u003e, \u003ccode\u003eos.path\u003c/code\u003e, and \u003ccode\u003eglob\u003c/code\u003e to work with \u003ccode\u003eCloudPath\u003c/code\u003e objects. It is off by default; see the new \u0026quot;Compatibility\u0026quot; section in the docs for more information. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/128\"\u003e#128\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for \u003ccode\u003eCloudPath(*parts)\u003c/code\u003e to create a \u003ccode\u003eCloudPath\u003c/code\u003e object from a list of parts (to match \u003ccode\u003epathlib.Path\u003c/code\u003e). \u003cstrong\u003eThis is a potentially breaking change for users that relied on the second arg being the \u003ccode\u003eclient\u003c/code\u003e instead of making it an explicit kwarg.\u003c/strong\u003e (PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\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/drivendataorg/cloudpathlib/blob/master/HISTORY.md\"\u003ecloudpathlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0 (2025-10-07)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14 (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/529\"\u003e#529\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/530\"\u003e#530\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eChanged \u003ccode\u003eCloudPath.copy\u003c/code\u003e to have the first parameter named \u003ccode\u003etarget\u003c/code\u003e instead of \u003ccode\u003edestination\u003c/code\u003e and added new \u003ccode\u003efollow_symlinks\u003c/code\u003e and \u003ccode\u003epreserve_metadata\u003c/code\u003e kwargs. \u003cstrong\u003eBreaking change for users that relied on the first parameter being named \u003ccode\u003edestination\u003c/code\u003e instead of \u003ccode\u003etarget\u003c/code\u003e.\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.copy_into\u003c/code\u003e to copy a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move\u003c/code\u003e to move a file or directory to another location.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move_into\u003c/code\u003e to move a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPathInfo\u003c/code\u003e and \u003ccode\u003eCloudPath.info\u003c/code\u003e to get information about a file or directory.\u003c/li\u003e\n\u003cli\u003eAdded additional no-op kwargs to \u003ccode\u003emkdir\u003c/code\u003e, \u003ccode\u003etouch\u003c/code\u003e, \u003ccode\u003eglob\u003c/code\u003e, \u003ccode\u003erglob\u003c/code\u003e, \u003ccode\u003estat\u003c/code\u003e to match pathlib.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.22.0 (2025-08-29)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed issue with GS credentials, using default auth enables a wider set of authentication methods in GS (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/390\"\u003e#390\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/514\"\u003e#514\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ljyanesm\"\u003e\u003ccode\u003e@​ljyanesm\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for http(s) urls with \u003ccode\u003eHttpClient\u003c/code\u003e, \u003ccode\u003eHttpPath\u003c/code\u003e, \u003ccode\u003eHttpsClient\u003c/code\u003e, and \u003ccode\u003eHttpsPath\u003c/code\u003e. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/455\"\u003e#455\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded experimental support for patching the builtins \u003ccode\u003eopen\u003c/code\u003e, \u003ccode\u003eos\u003c/code\u003e, \u003ccode\u003eos.path\u003c/code\u003e, and \u003ccode\u003eglob\u003c/code\u003e to work with \u003ccode\u003eCloudPath\u003c/code\u003e objects. It is off by default; see the new \u0026quot;Compatibility\u0026quot; section in the docs for more information. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/128\"\u003e#128\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for \u003ccode\u003eCloudPath(*parts)\u003c/code\u003e to create a \u003ccode\u003eCloudPath\u003c/code\u003e object from a list of parts (to match \u003ccode\u003epathlib.Path\u003c/code\u003e). \u003cstrong\u003eThis is a potentially breaking change for users that relied on the second arg being the \u003ccode\u003eclient\u003c/code\u003e instead of making it an explicit kwarg.\u003c/strong\u003e (PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\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/drivendataorg/cloudpathlib/commit/28f1d943078517262d045ae50136edf27a5298a1\"\u003e\u003ccode\u003e28f1d94\u003c/code\u003e\u003c/a\u003e WIP Support 3.14 (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/530\"\u003e#530\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/fec5918d6725e9f1f52bee003528f4f854454980\"\u003e\u003ccode\u003efec5918\u003c/code\u003e\u003c/a\u003e Bump pypa/gh-action-pypi-publish in /.github/workflows (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/531\"\u003e#531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/e7900023bf4b32b70ca5b2d798f9ce52187582f8\"\u003e\u003ccode\u003ee790002\u003c/code\u003e\u003c/a\u003e version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/bb1f1e4cb5eba0928cec2aaff30cb0f5ace1f108\"\u003e\u003ccode\u003ebb1f1e4\u003c/code\u003e\u003c/a\u003e WIP: Patch open, os and os.path builtins (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/12005505fc29ab4183968022a487416a31b1a1bd\"\u003e\u003ccode\u003e1200550\u003c/code\u003e\u003c/a\u003e Refactor GS authentication to use default credentials (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/514\"\u003e#514\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/526\"\u003e#526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/b21cac14f0090021594f7e3afae9c48f5d7dbd46\"\u003e\u003ccode\u003eb21cac1\u003c/code\u003e\u003c/a\u003e Implement HTTP(s) support (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/863e884cbf1cf141cdf7bf9c0623e0cd3d27841d\"\u003e\u003ccode\u003e863e884\u003c/code\u003e\u003c/a\u003e fix for azure typing differences (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/524\"\u003e#524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/65c5c012bd4297ce4e812cfb8bbf9827db346e03\"\u003e\u003ccode\u003e65c5c01\u003c/code\u003e\u003c/a\u003e Set pytest-cases\u0026gt;=3.9.1 (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/520\"\u003e#520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/drivendataorg/cloudpathlib/compare/v0.21.1...v0.23.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `docutils` from 0.19 to 0.22.4\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/rtfd/recommonmark/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `idna` from 3.10 to 3.11\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kjd/idna/blob/master/HISTORY.rst\"\u003eidna's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e3.11 (2025-10-12)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to Unicode 16.0.0, including significant changes to UTS46\nprocessing. As a result of Unicode ending support for it, transitional\nprocessing no longer has an effect and returns the same result.\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14, lowest supported version is Python 3.8.\u003c/li\u003e\n\u003cli\u003eVarious updates to packaging, including PEP 740 support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/ad949ee3052c2265c66e3df2dd8871a5832ba327\"\u003e\u003ccode\u003ead949ee\u003c/code\u003e\u003c/a\u003e Release v3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/cae4ba779e0a543823894bd4136651c187944da8\"\u003e\u003ccode\u003ecae4ba7\u003c/code\u003e\u003c/a\u003e Second release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/8adb305165c77c4a45d1568a70ead75d2197692c\"\u003e\u003ccode\u003e8adb305\u003c/code\u003e\u003c/a\u003e Add space in RST link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/74cb2b652bb06133b0c4ab52cc98221be63162cf\"\u003e\u003ccode\u003e74cb2b6\u003c/code\u003e\u003c/a\u003e Release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/05dab09fdde5bbf7d52f757c4dc62e0ba934cca8\"\u003e\u003ccode\u003e05dab09\u003c/code\u003e\u003c/a\u003e Format idna-data with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/90eac78b737d26613776b490432fc6d926b15c55\"\u003e\u003ccode\u003e90eac78\u003c/code\u003e\u003c/a\u003e Apply ruff formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a31ce7ecc0b767e40abb5ce28744ac567b73f366\"\u003e\u003ccode\u003ea31ce7e\u003c/code\u003e\u003c/a\u003e Remove errant test vectors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/81f03334211c78c1832991ce70ebafb3cbfbb79c\"\u003e\u003ccode\u003e81f0333\u003c/code\u003e\u003c/a\u003e Omit vectors known to be broken in test suite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a0f32578c0cac28c7ffbb4c860c92eb2b9b579bd\"\u003e\u003ccode\u003ea0f3257\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into unicode-16-uts46-changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/38d98860e6a1ab92fd35ab09ea4739feabf339a3\"\u003e\u003ccode\u003e38d9886\u003c/code\u003e\u003c/a\u003e Remove extra UTS46 test vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kjd/idna/compare/v3.10...v3.11\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jellyfish` from 1.2.0 to 1.2.1\n\nUpdates `jmespath` from 1.0.1 to 1.1.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jmespath/jmespath.py/blob/develop/CHANGELOG.rst\"\u003ejmespath's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.1.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix concurrency issue with cache\n(\u003ccode\u003epr [#335](https://github.com/jmespath/jmespath.py/issues/335) \u0026lt;https://github.com/jmespath/jmespath.py/pull/335\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eAdded support for Python 3.12-3.14 (\u003ccode\u003epr [#331](https://github.com/jmespath/jmespath.py/issues/331) \u0026lt;https://github.com/jmespath/jmespath.py/pull/331\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eRemoved support for Python 3.7-3.8 (\u003ccode\u003epr [#335](https://github.com/jmespath/jmespath.py/issues/335) \u0026lt;https://github.com/jmespath/jmespath.py/pull/335\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/jmespath/jmespath.py/commit/6ff419a8b171d055a9bfc6904605bceb8b7a80ef\"\u003e\u003ccode\u003e6ff419a\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.1.0'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/17e964f81911b49babb33e8697b34a31f869420f\"\u003e\u003ccode\u003e17e964f\u003c/code\u003e\u003c/a\u003e Bump version to 1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/5ce13aab582ba08b07e1c615feeb3654a7cd8d62\"\u003e\u003ccode\u003e5ce13aa\u003c/code\u003e\u003c/a\u003e Merge branch 'v1.1.0' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/d8f0457f8f962724b2c1ae12f79d3ba65edf4d82\"\u003e\u003ccode\u003ed8f0457\u003c/code\u003e\u003c/a\u003e Revert versions back to current version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/8cb30825f62675f6018b812faa9e2c9566eba2e3\"\u003e\u003ccode\u003e8cb3082\u003c/code\u003e\u003c/a\u003e 1.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/6e379910c1bc0ec0339b05da73e32cad9d3dddbc\"\u003e\u003ccode\u003e6e37991\u003c/code\u003e\u003c/a\u003e Update permissions in codeql.yml workflow (\u003ca href=\"https://redirect.github.com/jmespath/jmespath.py/issues/338\"\u003e#338\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/141734d98ac79c165ec31aa1c18dd29efc45ac49\"\u003e\u003ccode\u003e141734d\u003c/code\u003e\u003c/a\u003e Bring .github settings up-to-date (\u003ca href=\"https://redirect.github.com/jmespath/jmespath.py/issues/336\"\u003e#336\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/07e30cf011056386c3dade2502a53eb2b1d4b3c1\"\u003e\u003ccode\u003e07e30cf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jmespath/jmespath.py/issues/337\"\u003e#337\u003c/a\u003e from nateprewitt/python_changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/9170711017c2be9e3057a384e4a6061ef71bdc6f\"\u003e\u003ccode\u003e9170711\u003c/code\u003e\u003c/a\u003e Add missing changelog entries for Python support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jmespath/jmespath.py/commit/cdb9327fd597dda1aff703e6e5b98d79503c6f4e\"\u003e\u003ccode\u003ecdb9327\u003c/code\u003e\u003c/a\u003e Fix file encoding for Windows\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jmespath/jmespath.py/compare/1.0.1...1.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `markdown-it-py` from 3.0.0 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/executablebooks/markdown-it-py/releases\"\u003emarkdown-it-py's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eThis primarily drops support for Python 3.8 and 3.9, adds support for Python 3.13,\nand updates the parser to comply with Commonmark 0.31.2 and Markdown-It v14.1.0.\u003c/p\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Drop Python 3.8, test 3.13 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/342\"\u003eexecutablebooks/markdown-it-py#342\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Drop support for Python 3.9 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/360\"\u003eexecutablebooks/markdown-it-py#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Comply with Commonmark 0.31.2 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/362\"\u003eexecutablebooks/markdown-it-py#362\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Improve performance of \u0026quot;text\u0026quot; inline rule by \u003ca href=\"https://github.com/hukkin\"\u003e\u003ccode\u003e@​hukkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/347\"\u003eexecutablebooks/markdown-it-py#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Use \u003ccode\u003estr.removesuffix\u003c/code\u003e by \u003ca href=\"https://github.com/hukkin\"\u003e\u003ccode\u003e@​hukkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/348\"\u003eexecutablebooks/markdown-it-py#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 limit the number of autocompleted cells in a table by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/364\"\u003eexecutablebooks/markdown-it-py#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 fix quadratic complexity in reference parser by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/367\"\u003eexecutablebooks/markdown-it-py#367\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix emphasis inside raw links bugs by \u003ca href=\"https://github.com/tsutsu3\"\u003e\u003ccode\u003e@​tsutsu3\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/320\"\u003eexecutablebooks/markdown-it-py#320\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔧 Replace black and isort with ruff formatter by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/313\"\u003eexecutablebooks/markdown-it-py#313\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Fixed Code Style paragraph still referring to flake8 by \u003ca href=\"https://github.com/venthur\"\u003e\u003ccode\u003e@​venthur\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/309\"\u003eexecutablebooks/markdown-it-py#309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Add \u0026quot;store_labels\u0026quot; to OptionsType by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/343\"\u003eexecutablebooks/markdown-it-py#343\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Move \u003ccode\u003ecode_style\u003c/code\u003e to dependency group by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/344\"\u003eexecutablebooks/markdown-it-py#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Update codecov action by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/345\"\u003eexecutablebooks/markdown-it-py#345\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Update pre-commit and upload-artifact by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/359\"\u003eexecutablebooks/markdown-it-py#359\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Improve spec update script by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/361\"\u003eexecutablebooks/markdown-it-py#361\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 simplify logic in scanDelims by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/365\"\u003eexecutablebooks/markdown-it-py#365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Add CI testing for Python 3.12 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/303\"\u003eexecutablebooks/markdown-it-py#303\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Fix codecov by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/332\"\u003eexecutablebooks/markdown-it-py#332\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📚 Fix typo by \u003ca href=\"https://github.com/bwagner\"\u003e\u003ccode\u003e@​bwagner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/315\"\u003eexecutablebooks/markdown-it-py#315\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix RTD build by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/322\"\u003eexecutablebooks/markdown-it-py#322\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Fix a few old URLs by \u003ca href=\"https://github.com/elijahgreenstein\"\u003e\u003ccode\u003e@​elijahgreenstein\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/358\"\u003eexecutablebooks/markdown-it-py#358\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Improve README by \u003ca href=\"https://github.com/mrmurilo75\"\u003e\u003ccode\u003e@​mrmurilo75\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/340\"\u003eexecutablebooks/markdown-it-py#340\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix CI badge link by \u003ca href=\"https://github.com/tsutsu3\"\u003e\u003ccode\u003e@​tsutsu3\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/291\"\u003eexecutablebooks/markdown-it-py#291\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Update docs by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/292\"\u003eexecutablebooks/markdown-it-py#292\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Add icon to readme by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/293\"\u003eexecutablebooks/markdown-it-py#293\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Update icon by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/294\"\u003eexecutablebooks/markdown-it-py#294\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Clarify docs regarding security configuration by \u003ca href=\"https://github.com/djramones\"\u003e\u003ccode\u003e@​djramones\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/296\"\u003eexecutablebooks/markdown-it-py#296\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix the RTD build by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/311\"\u003eexecutablebooks/markdown-it-py#311\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Fix typos by \u003ca href=\"https://github.com/elijahgreenstein\"\u003e\u003ccode\u003e@​elijahgreenstein\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/366\"\u003eexecutablebooks/markdown-it-py#366\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/executablebooks/markdown-it-py/blob/master/CHANGELOG.md\"\u003emarkdown-it-py's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.0 - 2024-08-10\u003c/h2\u003e\n\u003cp\u003eThis primarily drops support for Python 3.9, adds support for Python 3.13,\nand updates the parser to comply with Commonmark 0.31.2 and Markdown-It v14.1.0.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Drop support for Python 3.9 in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/360\"\u003e#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Comply with Commonmark 0.31.2 in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/362\"\u003e#362\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve performance of \u0026quot;text\u0026quot; inline rule in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/347\"\u003e#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Use \u003ccode\u003estr.removesuffix\u003c/code\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/348\"\u003e#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 limit the number of autocompleted cells in a table in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/364\"\u003e#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 fix quadratic complexity in reference parser in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/367\"\u003e#367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 Fix emphasis inside raw links bugs in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/320\"\u003e#320\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.0\"\u003ehttps://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.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/executablebooks/markdown-it-py/commit/c62983f1554124391b47170180e6c62df4d476ca\"\u003e\u003ccode\u003ec62983f\u003c/code\u003e\u003c/a\u003e 🚀 RELEASE v4.0.0 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/368\"\u003e#368\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/9e93bd554147ffb8582581e14620c7611103d2ff\"\u003e\u003ccode\u003e9e93bd5\u003c/code\u003e\u003c/a\u003e 👌 fix quadratic complexity in reference parser (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/367\"\u003e#367\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/da45c8764b2077425c091fa1811bbb1c5f211bd1\"\u003e\u003ccode\u003eda45c87\u003c/code\u003e\u003c/a\u003e 📚 DOCS: Fix typos (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/366\"\u003e#366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/87b16e272bf8207182084e07a63253b98fc437d7\"\u003e\u003ccode\u003e87b16e2\u003c/code\u003e\u003c/a\u003e 🔧 simplify logic in scanDelims (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/365\"\u003e#365\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/e4009641db528444b85d384af815e9cad997a016\"\u003e\u003ccode\u003ee400964\u003c/code\u003e\u003c/a\u003e 👌 limit the number of autocompleted cells in a table (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/364\"\u003e#364\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/4535d77edcb5f51450a266135687eeae8bcc5033\"\u003e\u003ccode\u003e4535d77\u003c/code\u003e\u003c/a\u003e ⬆️ Comply with Commonmark 0.31.2 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/8eb20ac1cb63e09dcd78e84a0c71dab8446bb73c\"\u003e\u003ccode\u003e8eb20ac\u003c/code\u003e\u003c/a\u003e 🔧 Improve spec update script (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/361\"\u003e#361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/fb9d3ab646e4f752dc8fd52e1dd7613c350ff190\"\u003e\u003ccode\u003efb9d3ab\u003c/code\u003e\u003c/a\u003e ⬆️ Drop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/360\"\u003e#360\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/9ffe841832d33264201aaff120349f001a02953a\"\u003e\u003ccode\u003e9ffe841\u003c/code\u003e\u003c/a\u003e 📚 DOCS: Fix a few old URLs (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/358\"\u003e#358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/154fe43feb17947e2c933d0bb3e26618129909a8\"\u003e\u003ccode\u003e154fe43\u003c/code\u003e\u003c/a\u003e 🔧 Update pre-commit and upload-artifact (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `numpy` from 2.2.5 to 2.4.1\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.1 (Jan 10, 2026)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.4.1 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.4.1 is a patch release that fixes bugs discoved after the\n2.4.0 release. In particular, the typo \u003ccode\u003eSeedlessSequence\u003c/code\u003e is preserved to\nenable wheels using the random Cython API and built against NumPy \u0026lt; 2.4.0\nto run without errors.\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 9 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\u003eAlexander Shadchin\u003c/li\u003e\n\u003cli\u003eBill Tompkins +\u003c/li\u003e\n\u003cli\u003eCharles Harris\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eMarten van Kerkwijk\u003c/li\u003e\n\u003cli\u003eNathan Goldbaum\u003c/li\u003e\n\u003cli\u003eRaghuveer Devulapalli\u003c/li\u003e\n\u003cli\u003eRalf Gommers\u003c/li\u003e\n\u003cli\u003eSebastian Berg\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ePull requests merged\u003c/h2\u003e\n\u003cp\u003eA total of 15 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/30490\"\u003e#30490\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/30503\"\u003e#30503\u003c/a\u003e: DOC: \u003ccode\u003enumpy.select\u003c/code\u003e: fix \u003ccode\u003edefault\u003c/code\u003e parameter docstring...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30504\"\u003e#30504\u003c/a\u003e: REV: Revert part of \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30164\"\u003e#30164\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30500\"\u003e#30500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30506\"\u003e#30506\u003c/a\u003e: TYP: \u003ccode\u003enumpy.select\u003c/code\u003e: allow passing array-like \u003ccode\u003edefault\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30507\"\u003e#30507\u003c/a\u003e: MNT: use if constexpr for compile-time branch selection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30513\"\u003e#30513\u003c/a\u003e: BUG: Fix leak i...\n\n_Description has been truncated_","html_url":"https://github.com/reichlab/cladetime/pull/190","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/reichlab%2Fcladetime/issues/190","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/190/packages"}},{"old_version":"4.0.0","new_version":"4.1.2","update_type":"minor","path":null,"pr_created_at":"2026-01-19T11:43:59.000Z","version_change":"4.0.0 → 4.1.2","issue":{"uuid":"3829335206","node_id":"PR_kwDOHGh9Jc69_OsB","number":923,"state":"closed","title":"build(deps): bump the pipenv group across 1 directory with 11 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-02-03T10:28:07.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-19T11:43:59.000Z","updated_at":"2026-02-03T10:28:10.000Z","time_to_close":1291448,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"pipenv","update_count":11,"packages":[{"name":"sphinx-rtd-theme","old_version":"3.0.2","new_version":"3.1.0","repository_url":"https://github.com/readthedocs/sphinx_rtd_theme"},{"name":"sphinxcontrib-plantuml","old_version":"0.30","new_version":"0.31","repository_url":"https://github.com/sphinx-contrib/plantuml"},{"name":"mistune","old_version":"3.1.3","new_version":"3.2.0","repository_url":"https://github.com/lepture/mistune"},{"name":"myst-parser","old_version":"4.0.1","new_version":"5.0.0","repository_url":"https://github.com/executablebooks/MyST-Parser"},{"name":"pytest","old_version":"8.4.1","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"dynaconf","old_version":"3.2.11","new_version":"3.2.12","repository_url":"https://github.com/dynaconf/dynaconf"},{"name":"isort","old_version":"6.0.1","new_version":"7.0.0","repository_url":"https://github.com/PyCQA/isort"},{"name":"black","old_version":"25.1.0","new_version":"26.1.0","repository_url":"https://github.com/psf/black"},{"name":"pytest-html","old_version":"4.1.1","new_version":"4.2.0","repository_url":"https://github.com/pytest-dev/pytest-html"},{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.2","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"},{"name":"sphinx-needs","old_version":"5.1.0","new_version":"6.3.0","repository_url":"https://github.com/useblocks/sphinx-needs"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pipenv group with 11 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) | `3.0.2` | `3.1.0` |\n| [sphinxcontrib-plantuml](https://github.com/sphinx-contrib/plantuml) | `0.30` | `0.31` |\n| [mistune](https://github.com/lepture/mistune) | `3.1.3` | `3.2.0` |\n| [myst-parser](https://github.com/executablebooks/MyST-Parser) | `4.0.1` | `5.0.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.4.1` | `8.4.2` |\n| [dynaconf](https://github.com/dynaconf/dynaconf) | `3.2.11` | `3.2.12` |\n| [isort](https://github.com/PyCQA/isort) | `6.0.1` | `7.0.0` |\n| [black](https://github.com/psf/black) | `25.1.0` | `26.1.0` |\n| [pytest-html](https://github.com/pytest-dev/pytest-html) | `4.1.1` | `4.2.0` |\n| [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) | `4.0.0` | `4.1.2` |\n| [sphinx-needs](https://github.com/useblocks/sphinx-needs) | `5.1.0` | `6.3.0` |\n\n\nUpdates `sphinx-rtd-theme` from 3.0.2 to 3.1.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/blob/master/docs/changelog.rst\"\u003esphinx-rtd-theme's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.1.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for docutils 0.22\u003c/li\u003e\n\u003cli\u003eAdded support for Sphinx 9.x\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _release-3.1.0rc2:\u003c/p\u003e\n\u003ch1\u003e3.1.0rc2\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for docutils 0.22\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _release-3.1.0rc1:\u003c/p\u003e\n\u003ch1\u003e3.1.0rc1\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Sphinx 9.x\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _release-3.0.2:\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/795de79c8b311592f5863a25307d85924bf52164\"\u003e\u003ccode\u003e795de79\u003c/code\u003e\u003c/a\u003e Release 3.1.0 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1676\"\u003e#1676\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/66d0fdd910e142d058c20b474338051b0751f03c\"\u003e\u003ccode\u003e66d0fdd\u003c/code\u003e\u003c/a\u003e Add Python 3.14 to the test suite (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1668\"\u003e#1668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/fbe5e6004195a1e75654eface1884485c57eb68e\"\u003e\u003ccode\u003efbe5e60\u003c/code\u003e\u003c/a\u003e 3.1.0rc2 with support for docutils 0.22 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/a76174c0bb0af755718f3cbdffbf97d19d0ac0ec\"\u003e\u003ccode\u003ea76174c\u003c/code\u003e\u003c/a\u003e Add support for docutils 0.22 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1671\"\u003e#1671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/20733c3bcc60df8eda23512a0f3ccb2861486110\"\u003e\u003ccode\u003e20733c3\u003c/code\u003e\u003c/a\u003e Add support for Sphinx 9.0.0 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1666\"\u003e#1666\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/71aacd35048c8bc2ab646ed4e3e9af1075034387\"\u003e\u003ccode\u003e71aacd3\u003c/code\u003e\u003c/a\u003e Update Code of Conduct URL (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1664\"\u003e#1664\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/5a263753d52c1628c88392fbf52c729f5a8e79b5\"\u003e\u003ccode\u003e5a26375\u003c/code\u003e\u003c/a\u003e Run tests and build docs with Sphinx 8.2 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1640\"\u003e#1640\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/8d4d394dad2d55cf9a4db880effac6aa5c7b12e6\"\u003e\u003ccode\u003e8d4d394\u003c/code\u003e\u003c/a\u003e Sidebar should not be floating on mobile (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1622\"\u003e#1622\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/compare/3.0.2...3.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinxcontrib-plantuml` from 0.30 to 0.31\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/d15308432fc659319417a3f57f2190860c854b20\"\u003e\u003ccode\u003ed153084\u003c/code\u003e\u003c/a\u003e bump version to 0.31\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/123c26239e24d829c67950a4ee6b02d9a8a04179\"\u003e\u003ccode\u003e123c262\u003c/code\u003e\u003c/a\u003e search for ImageConverter capable of svg to pdf conversion after init\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/2d2adc477058594a81391cfda781f8c99be5f893\"\u003e\u003ccode\u003e2d2adc4\u003c/code\u003e\u003c/a\u003e github: bump actions, add Python 3.12 and 3.13, remove some middle/dead versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/27ece3637c0ec5fa91cacf511349e290a1440ba9\"\u003e\u003ccode\u003e27ece36\u003c/code\u003e\u003c/a\u003e tests: use inspect.getdoc() to get around breaking change in Python 3.13\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sphinx-contrib/plantuml/compare/0.30...0.31\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mistune` from 3.1.3 to 3.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lepture/mistune/releases\"\u003emistune's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.2.0\u003c/h2\u003e\n\u003ch3\u003e   🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport footnotes that start on the next line.  -  by \u003ca href=\"https://github.com/kylechui\"\u003e\u003ccode\u003e@​kylechui\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/2677e2d\"\u003e\u003c!-- raw HTML omitted --\u003e(2677e)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eProperly handle code blocks inside footnotes.  -  by \u003ca href=\"https://github.com/kylechui\"\u003e\u003ccode\u003e@​kylechui\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/0516c9e\"\u003e\u003c!-- raw HTML omitted --\u003e(0516c)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport python 3.14  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/7e0eb65\"\u003e\u003c!-- raw HTML omitted --\u003e(7e0eb)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRender ref links and footnotes in footnotes.  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/bd90e44\"\u003e\u003c!-- raw HTML omitted --\u003e(bd90e)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRender ref links in TOC.  -  by \u003ca href=\"https://github.com/lemon24\"\u003e\u003ccode\u003e@​lemon24\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/a0a0148\"\u003e\u003c!-- raw HTML omitted --\u003e(a0a01)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate typing for mypy upgrades  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/8d49cba\"\u003e\u003c!-- raw HTML omitted --\u003e(8d49c)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRender correct html for footnotes  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/9b62204\"\u003e\u003c!-- raw HTML omitted --\u003e(9b622)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/lepture/mistune/compare/v3.1.4...v3.2.0\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev3.1.4\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd fenced directive break rule in list parser, \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/412\"\u003e#412\u003c/a\u003e  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/412\"\u003elepture/mistune#412\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/ea3ecaf\"\u003e\u003c!-- raw HTML omitted --\u003e(ea3ec)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrevent remove unicode whitespace when parsing atx heading  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/9e72063\"\u003e\u003c!-- raw HTML omitted --\u003e(9e720)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/lepture/mistune/compare/v3.1.3...v3.1.4\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\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/lepture/mistune/blob/main/docs/changes.rst\"\u003emistune's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.2.0\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eReleased on Dec 23, 2025\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAnnounce supports for python 3.14\u003c/li\u003e\n\u003cli\u003eFix footnotes plugins for code blocks, ref links, blockquote and etc.\u003c/li\u003e\n\u003cli\u003eFix ref links in TOC.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.1.4\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eReleased on Aug 29, 2025\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd fenced directive break rule in list parser.\u003c/li\u003e\n\u003cli\u003ePrevent removing unicode whitespace when parsing atx heading.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/df23edd60b43b639d2e6760ef9dd3d618aa11c21\"\u003e\u003ccode\u003edf23edd\u003c/code\u003e\u003c/a\u003e chore: release 3.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/55fe3aff1e543faa0db281bbe60eb9e1a5f35933\"\u003e\u003ccode\u003e55fe3af\u003c/code\u003e\u003c/a\u003e chore: move permissions to job level\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/db9df8687d75915628ef20b4210b6aeb999cf4af\"\u003e\u003ccode\u003edb9df86\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/429\"\u003e#429\u003c/a\u003e from lepture/fix-428\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/9b6220486d7591c3204c82edff4376bfe40fdc19\"\u003e\u003ccode\u003e9b62204\u003c/code\u003e\u003c/a\u003e fix: render correct html for footnotes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/7dda5f5d321608a7c906e167c1ee6f1110dd5802\"\u003e\u003ccode\u003e7dda5f5\u003c/code\u003e\u003c/a\u003e chore: remove python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/0eb68715e08405158ad589def3fb4594ba2a004c\"\u003e\u003ccode\u003e0eb6871\u003c/code\u003e\u003c/a\u003e chore: mypy 1.19 has bugs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/8d49cba8ffa69fc807e3b30b87822d89069dff72\"\u003e\u003ccode\u003e8d49cba\u003c/code\u003e\u003c/a\u003e fix: update typing for mypy upgrades\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/7e0eb658e70e27e409cbf61f49a0907731e17acf\"\u003e\u003ccode\u003e7e0eb65\u003c/code\u003e\u003c/a\u003e feat: support python 3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/28e7d464aa898f23a4975c76c19f6977aaa738e0\"\u003e\u003ccode\u003e28e7d46\u003c/code\u003e\u003c/a\u003e chore: update deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/c82ad09675a5603166cf34bf1682953b56efb9ae\"\u003e\u003ccode\u003ec82ad09\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/427\"\u003e#427\u003c/a\u003e from lemon24/main\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/lepture/mistune/compare/v3.1.3...v3.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `myst-parser` from 4.0.1 to 5.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/executablebooks/MyST-Parser/releases\"\u003emyst-parser's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.0.0\u003c/h2\u003e\n\u003ch1\u003eMyST-Parser 5.0.0\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eRelease Date\u003c/strong\u003e: 2026-01-15\u003c/p\u003e\n\u003cp\u003eThis release significantly bumps the supported versions of core dependencies:\u003c/p\u003e\n\u003ch2\u003e‼️ Breaking Changes\u003c/h2\u003e\n\u003cp\u003eThis release updates the minimum supported versions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ePython\u003c/strong\u003e: \u003ccode\u003e\u0026gt;=3.11\u003c/code\u003e (dropped Python 3.10, tests up to 3.14)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eSphinx\u003c/strong\u003e: \u003ccode\u003e\u0026gt;=8,\u0026lt;10\u003c/code\u003e (dropped Sphinx 7, added Sphinx 9)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDocutils\u003c/strong\u003e: \u003ccode\u003e\u0026gt;=0.20,\u0026lt;0.23\u003c/code\u003e (dropped docutils 0.19, added docutils 0.22)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emarkdown-it-py\u003c/strong\u003e: \u003ccode\u003e~=4.0\u003c/code\u003e (upgraded from v3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e⬆️ Dependency Upgrades\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Upgrade to markdown-it-py v4 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1060\"\u003e#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Drop Python 3.10 and Sphinx 7 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1059\"\u003e#1059\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Drop docutils 0.19 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1061\"\u003e#1061\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Add support for Python 3.14 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1075\"\u003e#1075\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Support Sphinx v9 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1076\"\u003e#1076\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Allow docutils 0.22 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1084\"\u003e#1084\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e👌 Improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Improve generation of meta nodes by \u003ca href=\"https://github.com/AA-Turner\"\u003e\u003ccode\u003e@​AA-Turner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1080\"\u003e#1080\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e📚 Fix typo in tables.md by \u003ca href=\"https://github.com/electricalgorithm\"\u003e\u003ccode\u003e@​electricalgorithm\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1034\"\u003e#1034\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix minor typo in \u003ccode\u003ecross-referencing.md\u003c/code\u003e by \u003ca href=\"https://github.com/krassowski\"\u003e\u003ccode\u003e@​krassowski\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1036\"\u003e#1036\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🔧 Internal / Maintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🔧 Update pre-commit by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1058\"\u003e#1058\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Add \u003ccode\u003eAGENTS.md\u003c/code\u003e by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/pull/1083\"\u003e#1083\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/executablebooks/MyST-Parser/compare/v4.0.1...v5.0.0\"\u003ev4.0.1...v5.0.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/executablebooks/MyST-Parser/blob/master/CHANGELOG.md\"\u003emyst-parser's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.0.0 - 2026-01-15\u003c/h2\u003e\n\u003cp\u003eThis release significantly bumps the supported versions of core dependencies:\u003c/p\u003e\n\u003ch3\u003e‼️ Breaking Changes\u003c/h3\u003e\n\u003cp\u003eThis release updates the minimum supported versions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ePython\u003c/strong\u003e: \u003ccode\u003e\u0026gt;=3.11\u003c/code\u003e (dropped Python 3.10, tests up to 3.14)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eSphinx\u003c/strong\u003e: \u003ccode\u003e\u0026gt;=8,\u0026lt;10\u003c/code\u003e (dropped Sphinx 7, added Sphinx 9)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eDocutils\u003c/strong\u003e: \u003ccode\u003e\u0026gt;=0.20,\u0026lt;0.23\u003c/code\u003e (dropped docutils 0.19, added docutils 0.22)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003emarkdown-it-py\u003c/strong\u003e: \u003ccode\u003e~=4.0\u003c/code\u003e (upgraded from v3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e⬆️ Dependency Upgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Upgrade to markdown-it-py v4 by \u003ca href=\"gh-user:chrisjsewell\"\u003egh-user:chrisjsewell\u003c/a\u003e in \u003ca href=\"gh-pr:1060\"\u003egh-pr:1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Drop Python 3.10 and Sphinx 7 by \u003ca href=\"gh-user:chrisjsewell\"\u003egh-user:chrisjsewell\u003c/a\u003e in \u003ca href=\"gh-pr:1059\"\u003egh-pr:1059\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Drop docutils 0.19 by \u003ca href=\"gh-user:chrisjsewell\"\u003egh-user:chrisjsewell\u003c/a\u003e in \u003ca href=\"gh-pr:1061\"\u003egh-pr:1061\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Add support for Python 3.14 by \u003ca href=\"gh-user:chrisjsewell\"\u003egh-user:chrisjsewell\u003c/a\u003e in \u003ca href=\"gh-pr:1075\"\u003egh-pr:1075\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Support Sphinx v9 by \u003ca href=\"gh-user:chrisjsewell\"\u003egh-user:chrisjsewell\u003c/a\u003e in \u003ca href=\"gh-pr:1076\"\u003egh-pr:1076\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Allow docutils 0.22 by \u003ca href=\"gh-user:chrisjsewell\"\u003egh-user:chrisjsewell\u003c/a\u003e in \u003ca href=\"gh-pr:1084\"\u003egh-pr:1084\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e👌 Improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Improve generation of meta nodes by \u003ca href=\"gh-user:AA-Turner\"\u003egh-user:AA-Turner\u003c/a\u003e in \u003ca href=\"gh-pr:1080\"\u003egh-pr:1080\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📚 Fix typo in tables.md by \u003ca href=\"gh-user:electricalgorithm\"\u003egh-user:electricalgorithm\u003c/a\u003e in \u003ca href=\"gh-pr:1034\"\u003egh-pr:1034\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix minor typo in \u003ccode\u003ecross-referencing.md\u003c/code\u003e by \u003ca href=\"gh-user:krassowski\"\u003egh-user:krassowski\u003c/a\u003e in \u003ca href=\"gh-pr:1036\"\u003egh-pr:1036\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🔧 Internal / Maintenance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔧 Update pre-commit by \u003ca href=\"gh-user:chrisjsewell\"\u003egh-user:chrisjsewell\u003c/a\u003e in \u003ca href=\"gh-pr:1058\"\u003egh-pr:1058\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Add \u003ccode\u003eAGENTS.md\u003c/code\u003e by \u003ca href=\"gh-user:chrisjsewell\"\u003egh-user:chrisjsewell\u003c/a\u003e in \u003ca href=\"gh-pr:1083\"\u003egh-pr:1083\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/executablebooks/MyST-Parser/compare/v4.0.1...v5.0.0\"\u003ev4.0.1...v5.0.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/executablebooks/MyST-Parser/commit/a139a1fd47277c5adcb7ec033e9f4ad52e6c779e\"\u003e\u003ccode\u003ea139a1f\u003c/code\u003e\u003c/a\u003e 🚀 Release v5.0.0 (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1085\"\u003e#1085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/540511016f1f7a791b300201b069c05cf76b6b65\"\u003e\u003ccode\u003e5405110\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1071\"\u003e#1071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/19512c00ae2b4af7866850305d63c7a08f81684f\"\u003e\u003ccode\u003e19512c0\u003c/code\u003e\u003c/a\u003e ⬆️ Allow docutils 0.22 (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1084\"\u003e#1084\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/a9e529f279ebd3192b870632e92d47036b75d240\"\u003e\u003ccode\u003ea9e529f\u003c/code\u003e\u003c/a\u003e ⬆️ Support Sphinx v9 (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/fcf78ca56fafd4454e3537cc8728e9af6b1052d0\"\u003e\u003ccode\u003efcf78ca\u003c/code\u003e\u003c/a\u003e 👌 Improve generation of meta nodes (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1080\"\u003e#1080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/e0fc7a32ae6dee181213b86c6f85195bc08b2706\"\u003e\u003ccode\u003ee0fc7a3\u003c/code\u003e\u003c/a\u003e 🔧 Add \u003ccode\u003eAGENTS.md\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1083\"\u003e#1083\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/59d5384732ea25c9a4d7e8615ee74b97631326da\"\u003e\u003ccode\u003e59d5384\u003c/code\u003e\u003c/a\u003e ⬆️ Add support for Python 3.14 (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1075\"\u003e#1075\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/7b7d961c12c1bf267dc5f87f69f87c603f18c8b9\"\u003e\u003ccode\u003e7b7d961\u003c/code\u003e\u003c/a\u003e ⬆️ Update pytest requirement from \u0026lt;9,\u0026gt;=8 to \u0026gt;=9,\u0026lt;10 (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1063\"\u003e#1063\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/3342a3c7d89dfd8de6a09bbf17bc9134160fe609\"\u003e\u003ccode\u003e3342a3c\u003c/code\u003e\u003c/a\u003e ⬆️ Update sphinxext-opengraph requirement from ~=0.9.0 to ~=0.13.0 (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1066\"\u003e#1066\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/MyST-Parser/commit/2cf85deb227418c20fef5e9550a6f7e6671f6d4a\"\u003e\u003ccode\u003e2cf85de\u003c/code\u003e\u003c/a\u003e ⬆️ Update sphinxext-rediraffe requirement from ~=0.2.7 to ~=0.3.0 (\u003ca href=\"https://redirect.github.com/executablebooks/MyST-Parser/issues/1064\"\u003e#1064\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/executablebooks/MyST-Parser/compare/v4.0.1...v5.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 8.4.1 to 8.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.2\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.2 (2025-09-03)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13478\"\u003e#13478\u003c/a\u003e: Fixed a crash when using \u003ccode\u003econsole_output_style\u003c/code\u003e{.interpreted-text role=\u0026quot;confval\u0026quot;} with \u003ccode\u003etimes\u003c/code\u003e and a module is skipped.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13530\"\u003e#13530\u003c/a\u003e: Fixed a crash when using \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and \u003ccode\u003edecimal.Decimal\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} instances with the \u003ccode\u003edecimal.FloatOperation\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} trap set.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13549\"\u003e#13549\u003c/a\u003e: No longer evaluate type annotations in Python \u003ccode\u003e3.14\u003c/code\u003e when inspecting function signatures.\u003c/p\u003e\n\u003cp\u003eThis prevents crashes during module collection when modules do not explicitly use \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e and import types for annotations within a \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13559\"\u003e#13559\u003c/a\u003e: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in \u003ccode\u003epytest.Parser.addini\u003c/code\u003e{.interpreted-text role=\u0026quot;meth\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13563\"\u003e#13563\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now only imports \u003ccode\u003enumpy\u003c/code\u003e if NumPy is already in \u003ccode\u003esys.modules\u003c/code\u003e. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13577\"\u003e#13577\u003c/a\u003e: Clarify that \u003ccode\u003epytest_generate_tests\u003c/code\u003e is discovered in test modules/classes; other hooks must be in \u003ccode\u003econftest.py\u003c/code\u003e or plugins.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13480\"\u003e#13480\u003c/a\u003e: Self-testing: fixed a few test failures when run with \u003ccode\u003e-Wdefault\u003c/code\u003e or a similar override.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13547\"\u003e#13547\u003c/a\u003e: Self-testing: corrected expected message for \u003ccode\u003etest_doctest_unexpected_exception\u003c/code\u003e in Python \u003ccode\u003e3.14\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13684\"\u003e#13684\u003c/a\u003e: Make pytest's own testsuite insensitive to the presence of the \u003ccode\u003eCI\u003c/code\u003e environment variable -- by \u003ccode\u003eogrisel\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bfae4224fd554d3d7f2c277a4cc092b6ec6af3ae\"\u003e\u003ccode\u003ebfae422\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/89905381a163be30ae87d62e5f750e902d750c5f\"\u003e\u003ccode\u003e8990538\u003c/code\u003e\u003c/a\u003e Fix passenv CI in tox ini and make tests insensitive to the presence of the C...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ca676bfe005aebcb12f4146d1b0f1d2772e2cd5d\"\u003e\u003ccode\u003eca676bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13687\"\u003e#13687\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/e63f6e51c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/975a60a63ce385a44655596e254c1899feaa53e4\"\u003e\u003ccode\u003e975a60a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13686\"\u003e#13686\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/12bde8af6...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7723ce84b87ab08f86ddafcb342acc28ba5ec99d\"\u003e\u003ccode\u003e7723ce8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13683\"\u003e#13683\u003c/a\u003e from even-even/fix_Exeption_to_Exception_in_errorMe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7f05680d1301e0969b30bcb3c4b27433c9ee2b7\"\u003e\u003ccode\u003eb7f0568\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13685\"\u003e#13685\u003c/a\u003e from CoretexShadow/fix/docs-pytest-generate-tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2c94c4a6948ba53440818389298157fa5d5f94cd\"\u003e\u003ccode\u003e2c94c4a\u003c/code\u003e\u003c/a\u003e add missing colon (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13640\"\u003e#13640\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13641\"\u003e#13641\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c3d7684bc01c8c48d05145a30c5211ca8656c68c\"\u003e\u003ccode\u003ec3d7684\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13606\"\u003e#13606\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/5f9938563...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/dc6e3be2ddc75a149b6d102d9b7c82ee47a00cfa\"\u003e\u003ccode\u003edc6e3be\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13605\"\u003e#13605\u003c/a\u003e from The-Compiler/training-update-2025-07\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f87289c36c8dbe7740e3020f5546b6f8b0861ff0\"\u003e\u003ccode\u003ef87289c\u003c/code\u003e\u003c/a\u003e Fix crash with \u003ccode\u003etimes\u003c/code\u003e output style and skipped module (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13573\"\u003e#13573\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13579\"\u003e#13579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.4.1...8.4.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dynaconf` from 3.2.11 to 3.2.12\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dynaconf/dynaconf/releases\"\u003edynaconf's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.12\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIncremental improvment to access performance by \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1304\"\u003edynaconf/dynaconf#1304\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: get method to return Any type. by \u003ca href=\"https://github.com/rochacbruno\"\u003e\u003ccode\u003e@​rochacbruno\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1314\"\u003edynaconf/dynaconf#1314\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: add lru caching to \u003ccode\u003efind_the_correct_casing\u003c/code\u003e function by \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1326\"\u003edynaconf/dynaconf#1326\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\"\u003ehttps://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dynaconf/dynaconf/blob/3.2.12/CHANGELOG.md\"\u003edynaconf's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/pedro-psb/dynaconf/releases/tag/3.2.12\"\u003e3.2.12\u003c/a\u003e - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eget method to return Any type.. \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eremove unnecessary recursive evaluation call on Settings.get. \u003cem\u003eBy Pedro Brochado\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eimprove performance of settings access in a loop (part 1). \u003cem\u003eBy Pedro Brochado\u003c/em\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/7606f351ac460b15c56e7a538300de4a501c56e7\"\u003e\u003ccode\u003e7606f35\u003c/code\u003e\u003c/a\u003e Release version 3.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/da44e5182940299dd90ca3e2a0e0e3c23cb9ebf7\"\u003e\u003ccode\u003eda44e51\u003c/code\u003e\u003c/a\u003e perf: add lru caching to \u003ccode\u003efind_the_correct_casing\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1326\"\u003e#1326\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/b75eda0da141bdc29f707f2cb0c29e06b03a72bb\"\u003e\u003ccode\u003eb75eda0\u003c/code\u003e\u003c/a\u003e fix: get method to return Any type.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/4f3df1a47bcb71feddf7565f603e7994c65ede65\"\u003e\u003ccode\u003e4f3df1a\u003c/code\u003e\u003c/a\u003e misc: add some profile/perf scripts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/420acebf64e77ba475df94dfd7d409207e5e239d\"\u003e\u003ccode\u003e420aceb\u003c/code\u003e\u003c/a\u003e refactor: merge \u003cem\u003esafe\u003c/em\u003e{get,copy} into .get and .copy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/18c0c8422dc9651d57c76d1b098ad6fb3f75c09d\"\u003e\u003ccode\u003e18c0c84\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary recursive evaluation call on Settings.get\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/0fde96f2e0b71309e63800ddac8eceda062155a9\"\u003e\u003ccode\u003e0fde96f\u003c/code\u003e\u003c/a\u003e refactor: rewrite decorator as explicit call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/52efd9ed78d2187550e03a2ae5008661d5e28df9\"\u003e\u003ccode\u003e52efd9e\u003c/code\u003e\u003c/a\u003e Bump to version 3.2.12-dev0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isort` from 6.0.1 to 7.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/releases\"\u003eisort's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.0.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003ch2\u003e:boom: Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:rocket: Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eShow absolute paths in skipped file messages (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2416\"\u003e#2416\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSome fixes for Python 3.14 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on \u003ccode\u003e3.14\u003c/code\u003e and fix any bugs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2425\"\u003e#2425\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CHANGELOG.md + Fix Formatting and Grammar (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2419\"\u003e#2419\u003c/a\u003e) \u003ca href=\"https://github.com/lukbrew25\"\u003e\u003ccode\u003e@​lukbrew25\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix output of hanging indent for long lines with noqa (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2407\"\u003e#2407\u003c/a\u003e) \u003ca href=\"https://github.com/matan1008\"\u003e\u003ccode\u003e@​matan1008\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFormat with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTarget 3.10 for \u003ccode\u003eruff\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate development dependencies to latest version (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2426\"\u003e#2426\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update pre-commit examples to version 6.1.0 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2413\"\u003e#2413\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSmall cleanup for developer environment (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2418\"\u003e#2418\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/setup-python from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2411\"\u003e#2411\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.1.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs discussions channel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2410\"\u003e#2410\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse working isort version in pre-commit example (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2402\"\u003e#2402\u003c/a\u003e) \u003ca href=\"https://github.com/iainelder\"\u003e\u003ccode\u003e@​iainelder\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix typo in _get_files_from_dir_cached test (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2392\"\u003e#2392\u003c/a\u003e) \u003ca href=\"https://github.com/tiltingpenguin\"\u003e\u003ccode\u003e@​tiltingpenguin\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eResolve bandit warnings (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2379\"\u003e#2379\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd tox for cross-platform, parallel test suite execution (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2378\"\u003e#2378\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Project URLs to PyPI Side Panel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2387\"\u003e#2387\u003c/a\u003e) \u003ca href=\"https://github.com/guillermodotn\"\u003e\u003ccode\u003e@​guillermodotn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typos (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2376\"\u003e#2376\u003c/a\u003e) \u003ca href=\"https://github.com/co63oc\"\u003e\u003ccode\u003e@​co63oc\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd make bash scripts portable (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2377\"\u003e#2377\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 4 to 5 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2406\"\u003e#2406\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/blob/main/CHANGELOG.md\"\u003eisort's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003eNOTE: isort follows the \u003ca href=\"https://semver.org/\"\u003esemver\u003c/a\u003e versioning standard.\nFind out more about isort's release policy \u003ca href=\"https://pycqa.github.io/isort/docs/major_releases/release_policy\"\u003ehere\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eUnreleased\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved \u003ccode\u003e--old-finders\u003c/code\u003e and \u003ccode\u003e--magic-placement\u003c/code\u003e flags and \u003ccode\u003eold_finders\u003c/code\u003e configuration option. The legacy finder logic that relied on environment introspection has been removed (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2445\"\u003e#2445\u003c/a\u003e) \u003ca href=\"https://github.com/joao-faria-dev\"\u003e\u003ccode\u003e@​joao-faria-dev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e6.1.0 October 1 2025\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0a09c783808cfe77bb3269250f663ff733d23302\"\u003e\u003ccode\u003e0a09c78\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e from DanielNoord/python-314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0fee794a05b5d0c471ac80bc8943f9843ca29644\"\u003e\u003ccode\u003e0fee794\u003c/code\u003e\u003c/a\u003e Add 3.14 to \u003ccode\u003estdlibds\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/332a1ad0b68bf3a3acac055b0ec3666408b3b425\"\u003e\u003ccode\u003e332a1ad\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003ezstandard\u003c/code\u003e for 3.14 compat\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/f756e5653afcf6d79ec4d0240b1868cbebd8fafd\"\u003e\u003ccode\u003ef756e56\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/52f5134889d345ff35afdcb86501c8221b804c70\"\u003e\u003ccode\u003e52f5134\u003c/code\u003e\u003c/a\u003e Format with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/012aa69fcadb3c89ff92a3d96aa449be7ae6746f\"\u003e\u003ccode\u003e012aa69\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/89773dbb371192541092657972a74e9ce0bbbc74\"\u003e\u003ccode\u003e89773db\u003c/code\u003e\u003c/a\u003e Target 3.10 with \u003ccode\u003eruff\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/933e382f98a0c77b4c6e33c4e3ef12bd57192884\"\u003e\u003ccode\u003e933e382\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e from DanielNoord/drop-39\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/8b6e00cbe643a216da57fed4baa282d0a4a1b829\"\u003e\u003ccode\u003e8b6e00c\u003c/code\u003e\u003c/a\u003e Remove support for Python 3.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/b5f9f296ad873734e8caa3a731f27360648d9b37\"\u003e\u003ccode\u003eb5f9f29\u003c/code\u003e\u003c/a\u003e Bump profile plugin to 3.10+ and re-lock\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/isort/compare/6.0.1...7.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `black` from 25.1.0 to 26.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e26.1.0\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cp\u003eIntroduces the 2026 stable style (\u003ca href=\"https://redirect.github.com/psf/black/issues/4892\"\u003e#4892\u003c/a\u003e), stabilizing the following changes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ealways_one_newline_after_import\u003c/code\u003e: Always force one blank line after import\nstatements, except when the line after the import is a comment or an import statement\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4489\"\u003e#4489\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e: Fix \u003ccode\u003e# fmt: skip\u003c/code\u003e behavior on one-liner declarations,\nsuch as \u003ccode\u003edef foo(): return \u0026quot;mock\u0026quot; # fmt: skip\u003c/code\u003e, where previously the declaration would\nhave been incorrectly collapsed (\u003ca href=\"https://redirect.github.com/psf/black/issues/4800\"\u003e#4800\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efix_module_docstring_detection\u003c/code\u003e: Fix module docstrings being treated as normal\nstrings if preceded by comments (\u003ca href=\"https://redirect.github.com/psf/black/issues/4764\"\u003e#4764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efix_type_expansion_split\u003c/code\u003e: Fix type expansions split in generic functions (\u003ca href=\"https://redirect.github.com/psf/black/issues/4777\"\u003e#4777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emultiline_string_handling\u003c/code\u003e: Make expressions involving multiline strings more compact\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/1879\"\u003e#1879\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enormalize_cr_newlines\u003c/code\u003e: Add \u003ccode\u003e\\r\u003c/code\u003e style newlines to the potential newlines to\nnormalize file newlines both from and to (\u003ca href=\"https://redirect.github.com/psf/black/issues/4710\"\u003e#4710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eremove_parens_around_except_types\u003c/code\u003e: Remove parentheses around multiple exception\ntypes in \u003ccode\u003eexcept\u003c/code\u003e and \u003ccode\u003eexcept*\u003c/code\u003e without \u003ccode\u003eas\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4720\"\u003e#4720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eremove_parens_from_assignment_lhs\u003c/code\u003e: Remove unnecessary parentheses from the left-hand\nside of assignments while preserving magic trailing commas and intentional multiline\nformatting (\u003ca href=\"https://redirect.github.com/psf/black/issues/4865\"\u003e#4865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003estandardize_type_comments\u003c/code\u003e: Format type comments which have zero or more spaces\nbetween \u003ccode\u003e#\u003c/code\u003e and \u003ccode\u003etype:\u003c/code\u003e or between \u003ccode\u003etype:\u003c/code\u003e and value to \u003ccode\u003e# type: (value)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe following change was not in any previous stable release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRegenerated the \u003ccode\u003e_width_table.py\u003c/code\u003e and added tests for the Khmer language (\u003ca href=\"https://redirect.github.com/psf/black/issues/4253\"\u003e#4253\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThis release alo bumps \u003ccode\u003epathspec\u003c/code\u003e to v1 and fixes inconsistencies with Git's\n\u003ccode\u003e.gitignore\u003c/code\u003e logic (\u003ca href=\"https://redirect.github.com/psf/black/issues/4958\"\u003e#4958\u003c/a\u003e). Now, files will be ignored if a pattern matches them, even\nif the parent directory is directly unignored. For example, Black would previously\nformat \u003ccode\u003eexclude/not_this/foo.py\u003c/code\u003e with this \u003ccode\u003e.gitignore\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexclude/\n!exclude/not_this/\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNow, \u003ccode\u003eexclude/not_this/foo.py\u003c/code\u003e will remain ignored. To ensure \u003ccode\u003eexclude/not_this/\u003c/code\u003e and\nall of it's children are included in formatting (and in Git), use this \u003ccode\u003e.gitignore\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e*/exclude/*\n!*/exclude/not_this/\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eThis new behavior matches Git. The leading \u003ccode\u003e*/\u003c/code\u003e are only necessary if you wish to ignore\nmatching subdirectories (like the previous behavior did), and not just matching root\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e26.1.0\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cp\u003eIntroduces the 2026 stable style (\u003ca href=\"https://redirect.github.com/psf/black/issues/4892\"\u003e#4892\u003c/a\u003e), stabilizing the following changes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ealways_one_newline_after_import\u003c/code\u003e: Always force one blank line after import\nstatements, except when the line after the import is a comment or an import statement\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4489\"\u003e#4489\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e: Fix \u003ccode\u003e# fmt: skip\u003c/code\u003e behavior on one-liner declarations,\nsuch as \u003ccode\u003edef foo(): return \u0026quot;mock\u0026quot; # fmt: skip\u003c/code\u003e, where previously the declaration would\nhave been incorrectly collapsed (\u003ca href=\"https://redirect.github.com/psf/black/issues/4800\"\u003e#4800\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efix_module_docstring_detection\u003c/code\u003e: Fix module docstrings being treated as normal\nstrings if preceded by comments (\u003ca href=\"https://redirect.github.com/psf/black/issues/4764\"\u003e#4764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003efix_type_expansion_split\u003c/code\u003e: Fix type expansions split in generic functions (\u003ca href=\"https://redirect.github.com/psf/black/issues/4777\"\u003e#4777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emultiline_string_handling\u003c/code\u003e: Make expressions involving multiline strings more compact\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/1879\"\u003e#1879\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003enormalize_cr_newlines\u003c/code\u003e: Add \u003ccode\u003e\\r\u003c/code\u003e style newlines to the potential newlines to\nnormalize file newlines both from and to (\u003ca href=\"https://redirect.github.com/psf/black/issues/4710\"\u003e#4710\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eremove_parens_around_except_types\u003c/code\u003e: Remove parentheses around multiple exception\ntypes in \u003ccode\u003eexcept\u003c/code\u003e and \u003ccode\u003eexcept*\u003c/code\u003e without \u003ccode\u003eas\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4720\"\u003e#4720\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eremove_parens_from_assignment_lhs\u003c/code\u003e: Remove unnecessary parentheses from the left-hand\nside of assignments while preserving magic trailing commas and intentional multiline\nformatting (\u003ca href=\"https://redirect.github.com/psf/black/issues/4865\"\u003e#4865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003estandardize_type_comments\u003c/code\u003e: Format type comments which have zero or more spaces\nbetween \u003ccode\u003e#\u003c/code\u003e and \u003ccode\u003etype:\u003c/code\u003e or between \u003ccode\u003etype:\u003c/code\u003e and value to \u003ccode\u003e# type: (value)\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4645\"\u003e#4645\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThe following change was not in any previous stable release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRegenerated the \u003ccode\u003e_width_table.py\u003c/code\u003e and added tests for the Khmer language (\u003ca href=\"https://redirect.github.com/psf/black/issues/4253\"\u003e#4253\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThis release alo bumps \u003ccode\u003epathspec\u003c/code\u003e to v1 and fixes inconsistencies with Git's\n\u003ccode\u003e.gitignore\u003c/code\u003e logic (\u003ca href=\"https://redirect.github.com/psf/black/issues/4958\"\u003e#4958\u003c/a\u003e). Now, files will be ignored if a pattern matches them, even\nif the parent directory is directly unignored. For example, Black would previously\nformat \u003ccode\u003eexclude/not_this/foo.py\u003c/code\u003e with this \u003ccode\u003e.gitignore\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eexclude/\n!exclude/not_this/\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eNow, \u003ccode\u003eexclude/not_this/foo.py\u003c/code\u003e will remain ignored. To ensure \u003ccode\u003eexclude/not_this/\u003c/code\u003e and\nall of it's children are included in formatting (and in Git), use this \u003ccode\u003e.gitignore\u003c/code\u003e:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e*/exclude/*\n!*/exclude/not_this/\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eThis new behavior matches Git. The leading \u003ccode\u003e*/\u003c/code\u003e are only necessary if you wish to ignore\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/6305bf1ae645ab7541be4f5028a86239316178eb\"\u003e\u003ccode\u003e6305bf1\u003c/code\u003e\u003c/a\u003e Prepare 2026.1.0 release (\u003ca href=\"https://redirect.github.com/psf/black/issues/4892\"\u003e#4892\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/e71305bee302f7f9016b228361e5ae69669dca7b\"\u003e\u003ccode\u003ee71305b\u003c/code\u003e\u003c/a\u003e Bump pypa/cibuildwheel from 3.3.0 to 3.3.1 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4961\"\u003e#4961\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/21a2a8c2b1d0c8d47bc00cc59591470f6a9e2307\"\u003e\u003ccode\u003e21a2a8c\u003c/code\u003e\u003c/a\u003e Fix Shutdown multiprocessing Manager in schedule_formatting (\u003ca href=\"https://redirect.github.com/psf/black/issues/4952\"\u003e#4952\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/e3146cea4245fcee29d007cb45d9faaf63271586\"\u003e\u003ccode\u003ee3146ce\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.11.1 to 3.12.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4919\"\u003e#4919\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/fe1fbc4fdfa03fa1d460f975b8aca77e4b4f1a4a\"\u003e\u003ccode\u003efe1fbc4\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4923\"\u003e#4923\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/2b4b7fcfe00bb0d99322e07e87fc2f0992f7a4d8\"\u003e\u003ccode\u003e2b4b7fc\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 6.0.0 to 7.0.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4922\"\u003e#4922\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/d745be69bfa9d85ec2ef6e5f9b7ec7e253b5e8ab\"\u003e\u003ccode\u003ed745be6\u003c/code\u003e\u003c/a\u003e docs: document --force-exclude for pre-commit workflows (\u003ca href=\"https://redirect.github.com/psf/black/issues/4957\"\u003e#4957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b41acd6ebbe76e18b49286166924f73f01c3fd02\"\u003e\u003ccode\u003eb41acd6\u003c/code\u003e\u003c/a\u003e Various CI and doc refactors (\u003ca href=\"https://redirect.github.com/psf/black/issues/4928\"\u003e#4928\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/6f43612766da4a2f275b575af0802c3e73b6ed83\"\u003e\u003ccode\u003e6f43612\u003c/code\u003e\u003c/a\u003e Handle pathspec v1 changes (\u003ca href=\"https://redirect.github.com/psf/black/issues/4958\"\u003e#4958\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/200c550aff44372f801a6d826a361cb26f45a504\"\u003e\u003ccode\u003e200c550\u003c/code\u003e\u003c/a\u003e Bump furo from 2025.9.25 to 2025.12.19 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4933\"\u003e#4933\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/25.1.0...26.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-html` from 4.1.1 to 4.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-html/releases\"\u003epytest-html's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: Extras from setup/teardown missing in report by \u003ca href=\"https://github.com/BeyondEvil\"\u003e\u003ccode\u003e@​BeyondEvil\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/784\"\u003epytest-dev/pytest-html#784\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: Total duration when running in parallel by \u003ca href=\"https://github.com/BeyondEvil\"\u003e\u003ccode\u003e@​BeyondEvil\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/785\"\u003epytest-dev/pytest-html#785\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix license classifier in pyproject.toml by \u003ca href=\"https://github.com/tapdiego-amzn\"\u003e\u003ccode\u003e@​tapdiego-amzn\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/789\"\u003epytest-dev/pytest-html#789\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/771\"\u003epytest-dev/pytest-html#771\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix for \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/806\"\u003e#806\u003c/a\u003e (if results table order changed, hide/show details hover over broken) by \u003ca href=\"https://github.com/volkan-aslan\"\u003e\u003ccode\u003e@​volkan-aslan\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/807\"\u003epytest-dev/pytest-html#807\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump certifi from 2023.5.7 to 2023.7.22 in /docs 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/pytest-dev/pytest-html/pull/699\"\u003epytest-dev/pytest-html#699\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart tag has wrong closing tag by \u003ca href=\"https://github.com/zingero\"\u003e\u003ccode\u003e@​zingero\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/834\"\u003epytest-dev/pytest-html#834\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop python 3.8, add support for 3.12, 3.13 by \u003ca href=\"https://github.com/Pierre-Sassoulas\"\u003e\u003ccode\u003e@​Pierre-Sassoulas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/842\"\u003epytest-dev/pytest-html#842\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump elliptic from 6.5.4 to 6.6.1 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/pytest-dev/pytest-html/pull/843\"\u003epytest-dev/pytest-html#843\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump browserify-sign from 4.2.1 to 4.2.3 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/pytest-dev/pytest-html/pull/831\"\u003epytest-dev/pytest-html#831\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump requests from 2.30.0 to 2.32.2 in /docs 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/pytest-dev/pytest-html/pull/832\"\u003epytest-dev/pytest-html#832\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump urllib3 from 2.0.2 to 2.2.2 in /docs 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/pytest-dev/pytest-html/pull/830\"\u003epytest-dev/pytest-html#830\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump certifi from 2023.7.22 to 2024.7.4 in /docs 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/pytest-dev/pytest-html/pull/829\"\u003epytest-dev/pytest-html#829\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump braces from 3.0.2 to 3.0.3 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/pytest-dev/pytest-html/pull/826\"\u003epytest-dev/pytest-html#826\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump idna from 3.4 to 3.7 in /docs 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/pytest-dev/pytest-html/pull/827\"\u003epytest-dev/pytest-html#827\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump \u003ccode\u003e@​babel/traverse\u003c/code\u003e from 7.21.3 to 7.25.9 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/pytest-dev/pytest-html/pull/844\"\u003epytest-dev/pytest-html#844\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump jinja2 from 3.1.2 to 3.1.4 in /docs 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/pytest-dev/pytest-html/pull/828\"\u003epytest-dev/pytest-html#828\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump word-wrap from 1.2.3 to 1.2.5 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/pytest-dev/pytest-html/pull/845\"\u003epytest-dev/pytest-html#845\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/800\"\u003epytest-dev/pytest-html#800\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd mypy to CI pipeline and begin typing modules by \u003ca href=\"https://github.com/gnikonorov\"\u003e\u003ccode\u003e@​gnikonorov\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/435\"\u003epytest-dev/pytest-html#435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit] Add pyproject-fmt to normalize the pyproject.toml by \u003ca href=\"https://github.com/Pierre-Sassoulas\"\u003e\u003ccode\u003e@​Pierre-Sassoulas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/846\"\u003epytest-dev/pytest-html#846\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix the pyproject.toml following concurrent merge by \u003ca href=\"https://github.com/Pierre-Sassoulas\"\u003e\u003ccode\u003e@​Pierre-Sassoulas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/847\"\u003epytest-dev/pytest-html#847\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade tool for python 3.9 by \u003ca href=\"https://github.com/Pierre-Sassoulas\"\u003e\u003ccode\u003e@​Pierre-Sassoulas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/848\"\u003epytest-dev/pytest-html#848\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix report template by \u003ca href=\"https://github.com/hendzeld\"\u003e\u003ccode\u003e@​hendzeld\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/804\"\u003epytest-dev/pytest-html#804\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/851\"\u003epytest-dev/pytest-html#851\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump jinja2 from 3.1.4 to 3.1.5 in /docs 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/pytest-dev/pytest-html/pull/855\"\u003epytest-dev/pytest-html#855\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/854\"\u003epytest-dev/pytest-html#854\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eCreate a dependabot.yml to be explicit about what need to be updated by \u003ca href=\"https://github.com/Pierre-Sassoulas\"\u003e\u003ccode\u003e@​Pierre-Sassoulas\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/861\"\u003epytest-dev/pytest-html#861\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump actions/cache from 3 to 4 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/pytest-dev/pytest-html/pull/862\"\u003epytest-dev/pytest-html#862\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump codecov/codecov-action from 3 to 5 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/pytest-dev/pytest-html/pull/863\"\u003epytest-dev/pytest-html#863\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump release-drafter/release-drafter from 5 to 6 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/864\"\u003epytest-dev/pytest-html#864\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump actions/setup-python from 4 to 5 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/pytest-dev/pytest-html/pull/865\"\u003epytest-dev/pytest-html#865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump sphinx-rtd-theme from 1.2.0 to 3.0.2 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/871\"\u003epytest-dev/pytest-html#871\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump sass from 1.58.0 to 1.83.4 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/pytest-dev/pytest-html/pull/867\"\u003epytest-dev/pytest-html#867\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump sinon from 14.0.2 to 19.0.2 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/868\"\u003epytest-dev/pytest-html#868\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump nyc from 15.1.0 to 17.1.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/869\"\u003epytest-dev/pytest-html#869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump browserify from 17.0.0 to 17.0.1 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/pytest-dev/pytest-html/pull/876\"\u003epytest-dev/pytest-html#876\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump mocha from 10.2.0 to 11.1.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/875\"\u003epytest-dev/pytest-html#875\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump sass from 1.83.4 to 1.84.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/874\"\u003epytest-dev/pytest-html#874\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump sphinx from 6.2.1 to 7.2.2 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/877\"\u003epytest-dev/pytest-html#877\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/878\"\u003epytest-dev/pytest-html#878\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/882\"\u003epytest-dev/pytest-html#882\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump sphinx from 7.2.2 to 8.1.3 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/pytest-dev/pytest-html/pull/881\"\u003epytest-dev/pytest-html#881\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps-dev): Bump sass from 1.84.0 to 1.85.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/879\"\u003epytest-dev/pytest-html#879\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate index.jinja2 by \u003ca href=\"https://github.com/TCMPK\"\u003e\u003ccode\u003e@​TCMPK\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/883\"\u003epytest-dev/pytest-html#883\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump sphinx from 8.1.3 to 8.2.1 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/pytest-dev/pytest-html/pull/885\"\u003epytest-dev/pytest-html#885\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/pull/886\"\u003epytest-dev/pytest-html#886\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eChore(deps): Bump sphinx from 8.2.1 to 8.2.3 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/pytest-dev/pytest-html/pull/888\"\u003epytest-dev/pytest-html#888\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/pytest-dev/pytest-html/blob/master/docs/changelog.rst\"\u003epytest-html's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003eVersions follow \u003ccode\u003eSemantic Versioning\u003c/code\u003e_ (\u003ccode\u003e\u0026lt;major\u0026gt;.\u0026lt;minor\u0026gt;.\u0026lt;patch\u0026gt;\u003c/code\u003e).\u003c/p\u003e\n\u003ch2\u003eVersion History\u003c/h2\u003e\n\u003c/blockquote\u003e\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-html/commit/d8fa812281d735948fd6678e680fbfe6316d9f4b\"\u003e\u003ccode\u003ed8fa812\u003c/code\u003e\u003c/a\u003e ci: switch to trusted publishing (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/992\"\u003e#992\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/36a2911d1177113e2737755616c7339a37a5f92c\"\u003e\u003ccode\u003e36a2911\u003c/code\u003e\u003c/a\u003e Chore(deps-dev): Bump sass from 1.97.1 to 1.97.2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/990\"\u003e#990\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/6c8a66e89d4f2fdcb19582bb8ccdae899ab1ab0f\"\u003e\u003ccode\u003e6c8a66e\u003c/code\u003e\u003c/a\u003e Chore(deps-dev): Bump chai from 6.2.1 to 6.2.2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/989\"\u003e#989\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/aca223fb39f30ce795afa8916f26fb7300c5d855\"\u003e\u003ccode\u003eaca223f\u003c/code\u003e\u003c/a\u003e Chore(deps-dev): Bump sinon from 21.0.0 to 21.0.1 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/987\"\u003e#987\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/9ad73892ca4420478f8d04e8b47509f3d9057846\"\u003e\u003ccode\u003e9ad7389\u003c/code\u003e\u003c/a\u003e Chore(deps-dev): Bump sass from 1.96.0 to 1.97.1 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/988\"\u003e#988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/ffec3a50da100dac782b7eb659340d659f5077c7\"\u003e\u003ccode\u003effec3a5\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/986\"\u003e#986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/c965f6dfbc3fe230656abfdbaa8348a6e9521804\"\u003e\u003ccode\u003ec965f6d\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/974\"\u003e#974\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/ba3790382be6dc72cf213518510c0c68641aeb77\"\u003e\u003ccode\u003eba37903\u003c/code\u003e\u003c/a\u003e Chore(deps-dev): Bump sass from 1.94.2 to 1.96.0 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/983\"\u003e#983\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/5ddb4bce264f451e0aadb16ecb3f13c008074cc5\"\u003e\u003ccode\u003e5ddb4bc\u003c/code\u003e\u003c/a\u003e Chore(deps): Bump actions/cache from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-html/issues/984\"\u003e#984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-html/commit/e5ac7de16ca2a7a797924d8952f30a986df5d293\"\u003e\u003ccode\u003ee5ac7de\u003c/code\u003e\u003c/a\u003e Fix rst-lint: error: unrecognized arguments: --encoding\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-html/compare/4.1.1...4.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-toolbox` from 4.0.0 to 4.1.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.2\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.2\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e📝 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e:octocat: repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🙋 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🏪 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 4.1.1\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.1\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/424ec8cc2b7af5faf6114c06f9a528ef00601911\"\u003e\u003ccode\u003e424ec8c\u003c/code\u003e\u003c/a\u003e Bump version v4.1.1 -\u0026gt; v4.1.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/6646ea845522b5e8b2a78f066cf9c0a080e37979\"\u003e\u003ccode\u003e6646ea8\u003c/code\u003e\u003c/a\u003e Updated files with 'repo_helper'. (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/206\"\u003e#206\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/eb99359653b8a34c7bf13d79f1fdd0ab7f7ef26b\"\u003e\u003ccode\u003eeb99359\u003c/code\u003e\u003c/a\u003e Ignore man page builds for CollapseNode (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/0efd91a93cac16622119784eacaf8f0129d26505\"\u003e\u003ccode\u003e0efd91a\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/1c79c9c38a8594479846af7f83787ff6a1a9db40\"\u003e\u003ccode\u003e1c79c9c\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/a88102b4a9aee2a547b810b23b4b344eee8d192b\"\u003e\u003ccode\u003ea88102b\u003c/code\u003e\u003c/a\u003e Updated files with 'repo_helper'. (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/202\"...\n\n_Description has been truncated_","html_url":"https://github.com/repository-service-tuf/repository-service-tuf/pull/923","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/repository-service-tuf%2Frepository-service-tuf/issues/923","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/923/packages"}},{"old_version":"4.1.0","new_version":"4.1.1","update_type":"patch","path":"the sphinx group","pr_created_at":"2026-01-16T07:48:42.000Z","version_change":"4.1.0 → 4.1.1","issue":{"uuid":"3820843672","node_id":"PR_kwDOFmS81M69jmEi","number":125,"state":"closed","title":"Bump sphinx-toolbox from 4.1.0 to 4.1.1 in the sphinx group","user":"dependabot[bot]","labels":["dependencies","maintenance"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-02-01T20:23:43.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-16T07:48:42.000Z","updated_at":"2026-02-01T20:23:44.000Z","time_to_close":1427701,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.1.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":"the sphinx group","ecosystem":"pip"},"body":"Bumps the sphinx group with 1 update: [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox).\n\nUpdates `sphinx-toolbox` from 4.1.0 to 4.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.1\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.1\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.1.0...v4.1.1\"\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=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.1.0\u0026new-version=4.1.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nYou can trigger a rebase of this PR by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/hakostra/pyvista/pull/125","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/hakostra%2Fpyvista/issues/125","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/125/packages"}},{"old_version":"4.0.0","new_version":"4.1.1","update_type":"minor","path":null,"pr_created_at":"2026-01-14T01:33:05.000Z","version_change":"4.0.0 → 4.1.1","issue":{"uuid":"3811169401","node_id":"PR_kwDOC_dG4M69DRQ3","number":63,"state":"open","title":"Bump sphinx-toolbox from 4.0.0 to 4.1.1","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-01-14T01:33:05.000Z","updated_at":"2026-01-14T01:34:13.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.0.0 to 4.1.1.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.1\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.1\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.0.0...v4.1.1\"\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=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.0.0\u0026new-version=4.1.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/Senzing/mapper-csv/pull/63","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Senzing%2Fmapper-csv/issues/63","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/63/packages"}},{"old_version":"4.0.0","new_version":"4.1.1","update_type":"minor","path":null,"pr_created_at":"2026-01-14T00:54:11.000Z","version_change":"4.0.0 → 4.1.1","issue":{"uuid":"3811097021","node_id":"PR_kwDOMs4Zzc69DD9r","number":20,"state":"open","title":"Bump sphinx-toolbox from 4.0.0 to 4.1.1","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-01-14T00:54:11.000Z","updated_at":"2026-01-14T17:01:02.578Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.0.0 to 4.1.1.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.1\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.1\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.0.0...v4.1.1\"\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=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.0.0\u0026new-version=4.1.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/Senzing/mapper-spire/pull/20","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Senzing%2Fmapper-spire/issues/20","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/20/packages"}},{"old_version":"4.0.0","new_version":"4.1.1","update_type":"minor","path":null,"pr_created_at":"2026-01-13T10:39:15.000Z","version_change":"4.0.0 → 4.1.1","issue":{"uuid":"3808241482","node_id":"PR_kwDOHGh9Jc685hF5","number":920,"state":"closed","title":"build(deps): bump the pipenv group across 1 directory with 9 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-15T10:18:45.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-13T10:39:15.000Z","updated_at":"2026-01-15T10:18:47.000Z","time_to_close":171570,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"pipenv","update_count":9,"packages":[{"name":"sphinx-rtd-theme","old_version":"3.0.2","new_version":"3.1.0","repository_url":"https://github.com/readthedocs/sphinx_rtd_theme"},{"name":"sphinxcontrib-plantuml","old_version":"0.30","new_version":"0.31","repository_url":"https://github.com/sphinx-contrib/plantuml"},{"name":"mistune","old_version":"3.1.3","new_version":"3.2.0","repository_url":"https://github.com/lepture/mistune"},{"name":"pytest","old_version":"8.4.1","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"dynaconf","old_version":"3.2.11","new_version":"3.2.12","repository_url":"https://github.com/dynaconf/dynaconf"},{"name":"isort","old_version":"6.0.1","new_version":"7.0.0","repository_url":"https://github.com/PyCQA/isort"},{"name":"black","old_version":"25.1.0","new_version":"25.12.0","repository_url":"https://github.com/psf/black"},{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"},{"name":"sphinx-needs","old_version":"5.1.0","new_version":"6.3.0","repository_url":"https://github.com/useblocks/sphinx-needs"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pipenv group with 9 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) | `3.0.2` | `3.1.0` |\n| [sphinxcontrib-plantuml](https://github.com/sphinx-contrib/plantuml) | `0.30` | `0.31` |\n| [mistune](https://github.com/lepture/mistune) | `3.1.3` | `3.2.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.4.1` | `8.4.2` |\n| [dynaconf](https://github.com/dynaconf/dynaconf) | `3.2.11` | `3.2.12` |\n| [isort](https://github.com/PyCQA/isort) | `6.0.1` | `7.0.0` |\n| [black](https://github.com/psf/black) | `25.1.0` | `25.12.0` |\n| [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) | `4.0.0` | `4.1.1` |\n| [sphinx-needs](https://github.com/useblocks/sphinx-needs) | `5.1.0` | `6.3.0` |\n\n\nUpdates `sphinx-rtd-theme` from 3.0.2 to 3.1.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/blob/master/docs/changelog.rst\"\u003esphinx-rtd-theme's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.1.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for docutils 0.22\u003c/li\u003e\n\u003cli\u003eAdded support for Sphinx 9.x\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _release-3.1.0rc2:\u003c/p\u003e\n\u003ch1\u003e3.1.0rc2\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for docutils 0.22\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _release-3.1.0rc1:\u003c/p\u003e\n\u003ch1\u003e3.1.0rc1\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Sphinx 9.x\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _release-3.0.2:\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/795de79c8b311592f5863a25307d85924bf52164\"\u003e\u003ccode\u003e795de79\u003c/code\u003e\u003c/a\u003e Release 3.1.0 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1676\"\u003e#1676\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/66d0fdd910e142d058c20b474338051b0751f03c\"\u003e\u003ccode\u003e66d0fdd\u003c/code\u003e\u003c/a\u003e Add Python 3.14 to the test suite (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1668\"\u003e#1668\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/fbe5e6004195a1e75654eface1884485c57eb68e\"\u003e\u003ccode\u003efbe5e60\u003c/code\u003e\u003c/a\u003e 3.1.0rc2 with support for docutils 0.22 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1674\"\u003e#1674\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/a76174c0bb0af755718f3cbdffbf97d19d0ac0ec\"\u003e\u003ccode\u003ea76174c\u003c/code\u003e\u003c/a\u003e Add support for docutils 0.22 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1671\"\u003e#1671\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/20733c3bcc60df8eda23512a0f3ccb2861486110\"\u003e\u003ccode\u003e20733c3\u003c/code\u003e\u003c/a\u003e Add support for Sphinx 9.0.0 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1666\"\u003e#1666\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/71aacd35048c8bc2ab646ed4e3e9af1075034387\"\u003e\u003ccode\u003e71aacd3\u003c/code\u003e\u003c/a\u003e Update Code of Conduct URL (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1664\"\u003e#1664\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/5a263753d52c1628c88392fbf52c729f5a8e79b5\"\u003e\u003ccode\u003e5a26375\u003c/code\u003e\u003c/a\u003e Run tests and build docs with Sphinx 8.2 (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1640\"\u003e#1640\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/commit/8d4d394dad2d55cf9a4db880effac6aa5c7b12e6\"\u003e\u003ccode\u003e8d4d394\u003c/code\u003e\u003c/a\u003e Sidebar should not be floating on mobile (\u003ca href=\"https://redirect.github.com/readthedocs/sphinx_rtd_theme/issues/1622\"\u003e#1622\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/readthedocs/sphinx_rtd_theme/compare/3.0.2...3.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinxcontrib-plantuml` from 0.30 to 0.31\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/d15308432fc659319417a3f57f2190860c854b20\"\u003e\u003ccode\u003ed153084\u003c/code\u003e\u003c/a\u003e bump version to 0.31\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/123c26239e24d829c67950a4ee6b02d9a8a04179\"\u003e\u003ccode\u003e123c262\u003c/code\u003e\u003c/a\u003e search for ImageConverter capable of svg to pdf conversion after init\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/2d2adc477058594a81391cfda781f8c99be5f893\"\u003e\u003ccode\u003e2d2adc4\u003c/code\u003e\u003c/a\u003e github: bump actions, add Python 3.12 and 3.13, remove some middle/dead versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/27ece3637c0ec5fa91cacf511349e290a1440ba9\"\u003e\u003ccode\u003e27ece36\u003c/code\u003e\u003c/a\u003e tests: use inspect.getdoc() to get around breaking change in Python 3.13\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sphinx-contrib/plantuml/compare/0.30...0.31\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mistune` from 3.1.3 to 3.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lepture/mistune/releases\"\u003emistune's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.2.0\u003c/h2\u003e\n\u003ch3\u003e   🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSupport footnotes that start on the next line.  -  by \u003ca href=\"https://github.com/kylechui\"\u003e\u003ccode\u003e@​kylechui\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/2677e2d\"\u003e\u003c!-- raw HTML omitted --\u003e(2677e)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eProperly handle code blocks inside footnotes.  -  by \u003ca href=\"https://github.com/kylechui\"\u003e\u003ccode\u003e@​kylechui\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/0516c9e\"\u003e\u003c!-- raw HTML omitted --\u003e(0516c)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport python 3.14  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/7e0eb65\"\u003e\u003c!-- raw HTML omitted --\u003e(7e0eb)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRender ref links and footnotes in footnotes.  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/bd90e44\"\u003e\u003c!-- raw HTML omitted --\u003e(bd90e)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRender ref links in TOC.  -  by \u003ca href=\"https://github.com/lemon24\"\u003e\u003ccode\u003e@​lemon24\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/a0a0148\"\u003e\u003c!-- raw HTML omitted --\u003e(a0a01)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate typing for mypy upgrades  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/8d49cba\"\u003e\u003c!-- raw HTML omitted --\u003e(8d49c)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRender correct html for footnotes  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/9b62204\"\u003e\u003c!-- raw HTML omitted --\u003e(9b622)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/lepture/mistune/compare/v3.1.4...v3.2.0\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\u003e\n\u003ch2\u003ev3.1.4\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd fenced directive break rule in list parser, \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/412\"\u003e#412\u003c/a\u003e  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/412\"\u003elepture/mistune#412\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/ea3ecaf\"\u003e\u003c!-- raw HTML omitted --\u003e(ea3ec)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrevent remove unicode whitespace when parsing atx heading  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/9e72063\"\u003e\u003c!-- raw HTML omitted --\u003e(9e720)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/lepture/mistune/compare/v3.1.3...v3.1.4\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\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/lepture/mistune/blob/main/docs/changes.rst\"\u003emistune's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.2.0\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eReleased on Dec 23, 2025\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAnnounce supports for python 3.14\u003c/li\u003e\n\u003cli\u003eFix footnotes plugins for code blocks, ref links, blockquote and etc.\u003c/li\u003e\n\u003cli\u003eFix ref links in TOC.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.1.4\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eReleased on Aug 29, 2025\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd fenced directive break rule in list parser.\u003c/li\u003e\n\u003cli\u003ePrevent removing unicode whitespace when parsing atx heading.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/df23edd60b43b639d2e6760ef9dd3d618aa11c21\"\u003e\u003ccode\u003edf23edd\u003c/code\u003e\u003c/a\u003e chore: release 3.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/55fe3aff1e543faa0db281bbe60eb9e1a5f35933\"\u003e\u003ccode\u003e55fe3af\u003c/code\u003e\u003c/a\u003e chore: move permissions to job level\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/db9df8687d75915628ef20b4210b6aeb999cf4af\"\u003e\u003ccode\u003edb9df86\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/429\"\u003e#429\u003c/a\u003e from lepture/fix-428\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/9b6220486d7591c3204c82edff4376bfe40fdc19\"\u003e\u003ccode\u003e9b62204\u003c/code\u003e\u003c/a\u003e fix: render correct html for footnotes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/7dda5f5d321608a7c906e167c1ee6f1110dd5802\"\u003e\u003ccode\u003e7dda5f5\u003c/code\u003e\u003c/a\u003e chore: remove python 3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/0eb68715e08405158ad589def3fb4594ba2a004c\"\u003e\u003ccode\u003e0eb6871\u003c/code\u003e\u003c/a\u003e chore: mypy 1.19 has bugs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/8d49cba8ffa69fc807e3b30b87822d89069dff72\"\u003e\u003ccode\u003e8d49cba\u003c/code\u003e\u003c/a\u003e fix: update typing for mypy upgrades\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/7e0eb658e70e27e409cbf61f49a0907731e17acf\"\u003e\u003ccode\u003e7e0eb65\u003c/code\u003e\u003c/a\u003e feat: support python 3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/28e7d464aa898f23a4975c76c19f6977aaa738e0\"\u003e\u003ccode\u003e28e7d46\u003c/code\u003e\u003c/a\u003e chore: update deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/c82ad09675a5603166cf34bf1682953b56efb9ae\"\u003e\u003ccode\u003ec82ad09\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/427\"\u003e#427\u003c/a\u003e from lemon24/main\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/lepture/mistune/compare/v3.1.3...v3.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 8.4.1 to 8.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.2\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.2 (2025-09-03)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13478\"\u003e#13478\u003c/a\u003e: Fixed a crash when using \u003ccode\u003econsole_output_style\u003c/code\u003e{.interpreted-text role=\u0026quot;confval\u0026quot;} with \u003ccode\u003etimes\u003c/code\u003e and a module is skipped.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13530\"\u003e#13530\u003c/a\u003e: Fixed a crash when using \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and \u003ccode\u003edecimal.Decimal\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} instances with the \u003ccode\u003edecimal.FloatOperation\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} trap set.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13549\"\u003e#13549\u003c/a\u003e: No longer evaluate type annotations in Python \u003ccode\u003e3.14\u003c/code\u003e when inspecting function signatures.\u003c/p\u003e\n\u003cp\u003eThis prevents crashes during module collection when modules do not explicitly use \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e and import types for annotations within a \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13559\"\u003e#13559\u003c/a\u003e: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in \u003ccode\u003epytest.Parser.addini\u003c/code\u003e{.interpreted-text role=\u0026quot;meth\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13563\"\u003e#13563\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now only imports \u003ccode\u003enumpy\u003c/code\u003e if NumPy is already in \u003ccode\u003esys.modules\u003c/code\u003e. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13577\"\u003e#13577\u003c/a\u003e: Clarify that \u003ccode\u003epytest_generate_tests\u003c/code\u003e is discovered in test modules/classes; other hooks must be in \u003ccode\u003econftest.py\u003c/code\u003e or plugins.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13480\"\u003e#13480\u003c/a\u003e: Self-testing: fixed a few test failures when run with \u003ccode\u003e-Wdefault\u003c/code\u003e or a similar override.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13547\"\u003e#13547\u003c/a\u003e: Self-testing: corrected expected message for \u003ccode\u003etest_doctest_unexpected_exception\u003c/code\u003e in Python \u003ccode\u003e3.14\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13684\"\u003e#13684\u003c/a\u003e: Make pytest's own testsuite insensitive to the presence of the \u003ccode\u003eCI\u003c/code\u003e environment variable -- by \u003ccode\u003eogrisel\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bfae4224fd554d3d7f2c277a4cc092b6ec6af3ae\"\u003e\u003ccode\u003ebfae422\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/89905381a163be30ae87d62e5f750e902d750c5f\"\u003e\u003ccode\u003e8990538\u003c/code\u003e\u003c/a\u003e Fix passenv CI in tox ini and make tests insensitive to the presence of the C...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ca676bfe005aebcb12f4146d1b0f1d2772e2cd5d\"\u003e\u003ccode\u003eca676bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13687\"\u003e#13687\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/e63f6e51c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/975a60a63ce385a44655596e254c1899feaa53e4\"\u003e\u003ccode\u003e975a60a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13686\"\u003e#13686\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/12bde8af6...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7723ce84b87ab08f86ddafcb342acc28ba5ec99d\"\u003e\u003ccode\u003e7723ce8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13683\"\u003e#13683\u003c/a\u003e from even-even/fix_Exeption_to_Exception_in_errorMe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7f05680d1301e0969b30bcb3c4b27433c9ee2b7\"\u003e\u003ccode\u003eb7f0568\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13685\"\u003e#13685\u003c/a\u003e from CoretexShadow/fix/docs-pytest-generate-tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2c94c4a6948ba53440818389298157fa5d5f94cd\"\u003e\u003ccode\u003e2c94c4a\u003c/code\u003e\u003c/a\u003e add missing colon (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13640\"\u003e#13640\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13641\"\u003e#13641\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c3d7684bc01c8c48d05145a30c5211ca8656c68c\"\u003e\u003ccode\u003ec3d7684\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13606\"\u003e#13606\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/5f9938563...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/dc6e3be2ddc75a149b6d102d9b7c82ee47a00cfa\"\u003e\u003ccode\u003edc6e3be\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13605\"\u003e#13605\u003c/a\u003e from The-Compiler/training-update-2025-07\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f87289c36c8dbe7740e3020f5546b6f8b0861ff0\"\u003e\u003ccode\u003ef87289c\u003c/code\u003e\u003c/a\u003e Fix crash with \u003ccode\u003etimes\u003c/code\u003e output style and skipped module (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13573\"\u003e#13573\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13579\"\u003e#13579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.4.1...8.4.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dynaconf` from 3.2.11 to 3.2.12\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dynaconf/dynaconf/releases\"\u003edynaconf's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.12\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIncremental improvment to access performance by \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1304\"\u003edynaconf/dynaconf#1304\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: get method to return Any type. by \u003ca href=\"https://github.com/rochacbruno\"\u003e\u003ccode\u003e@​rochacbruno\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1314\"\u003edynaconf/dynaconf#1314\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: add lru caching to \u003ccode\u003efind_the_correct_casing\u003c/code\u003e function by \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1326\"\u003edynaconf/dynaconf#1326\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\"\u003ehttps://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dynaconf/dynaconf/blob/3.2.12/CHANGELOG.md\"\u003edynaconf's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/pedro-psb/dynaconf/releases/tag/3.2.12\"\u003e3.2.12\u003c/a\u003e - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eget method to return Any type.. \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eremove unnecessary recursive evaluation call on Settings.get. \u003cem\u003eBy Pedro Brochado\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eimprove performance of settings access in a loop (part 1). \u003cem\u003eBy Pedro Brochado\u003c/em\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/7606f351ac460b15c56e7a538300de4a501c56e7\"\u003e\u003ccode\u003e7606f35\u003c/code\u003e\u003c/a\u003e Release version 3.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/da44e5182940299dd90ca3e2a0e0e3c23cb9ebf7\"\u003e\u003ccode\u003eda44e51\u003c/code\u003e\u003c/a\u003e perf: add lru caching to \u003ccode\u003efind_the_correct_casing\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1326\"\u003e#1326\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/b75eda0da141bdc29f707f2cb0c29e06b03a72bb\"\u003e\u003ccode\u003eb75eda0\u003c/code\u003e\u003c/a\u003e fix: get method to return Any type.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/4f3df1a47bcb71feddf7565f603e7994c65ede65\"\u003e\u003ccode\u003e4f3df1a\u003c/code\u003e\u003c/a\u003e misc: add some profile/perf scripts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/420acebf64e77ba475df94dfd7d409207e5e239d\"\u003e\u003ccode\u003e420aceb\u003c/code\u003e\u003c/a\u003e refactor: merge \u003cem\u003esafe\u003c/em\u003e{get,copy} into .get and .copy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/18c0c8422dc9651d57c76d1b098ad6fb3f75c09d\"\u003e\u003ccode\u003e18c0c84\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary recursive evaluation call on Settings.get\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/0fde96f2e0b71309e63800ddac8eceda062155a9\"\u003e\u003ccode\u003e0fde96f\u003c/code\u003e\u003c/a\u003e refactor: rewrite decorator as explicit call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/52efd9ed78d2187550e03a2ae5008661d5e28df9\"\u003e\u003ccode\u003e52efd9e\u003c/code\u003e\u003c/a\u003e Bump to version 3.2.12-dev0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isort` from 6.0.1 to 7.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/releases\"\u003eisort's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.0.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003ch2\u003e:boom: Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:rocket: Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eShow absolute paths in skipped file messages (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2416\"\u003e#2416\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSome fixes for Python 3.14 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on \u003ccode\u003e3.14\u003c/code\u003e and fix any bugs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2425\"\u003e#2425\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CHANGELOG.md + Fix Formatting and Grammar (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2419\"\u003e#2419\u003c/a\u003e) \u003ca href=\"https://github.com/lukbrew25\"\u003e\u003ccode\u003e@​lukbrew25\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix output of hanging indent for long lines with noqa (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2407\"\u003e#2407\u003c/a\u003e) \u003ca href=\"https://github.com/matan1008\"\u003e\u003ccode\u003e@​matan1008\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFormat with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTarget 3.10 for \u003ccode\u003eruff\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate development dependencies to latest version (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2426\"\u003e#2426\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update pre-commit examples to version 6.1.0 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2413\"\u003e#2413\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSmall cleanup for developer environment (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2418\"\u003e#2418\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/setup-python from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2411\"\u003e#2411\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.1.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs discussions channel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2410\"\u003e#2410\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse working isort version in pre-commit example (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2402\"\u003e#2402\u003c/a\u003e) \u003ca href=\"https://github.com/iainelder\"\u003e\u003ccode\u003e@​iainelder\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix typo in _get_files_from_dir_cached test (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2392\"\u003e#2392\u003c/a\u003e) \u003ca href=\"https://github.com/tiltingpenguin\"\u003e\u003ccode\u003e@​tiltingpenguin\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eResolve bandit warnings (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2379\"\u003e#2379\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd tox for cross-platform, parallel test suite execution (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2378\"\u003e#2378\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Project URLs to PyPI Side Panel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2387\"\u003e#2387\u003c/a\u003e) \u003ca href=\"https://github.com/guillermodotn\"\u003e\u003ccode\u003e@​guillermodotn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typos (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2376\"\u003e#2376\u003c/a\u003e) \u003ca href=\"https://github.com/co63oc\"\u003e\u003ccode\u003e@​co63oc\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd make bash scripts portable (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2377\"\u003e#2377\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 4 to 5 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2406\"\u003e#2406\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/blob/main/CHANGELOG.md\"\u003eisort's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003eNOTE: isort follows the \u003ca href=\"https://semver.org/\"\u003esemver\u003c/a\u003e versioning standard.\nFind out more about isort's release policy \u003ca href=\"https://pycqa.github.io/isort/docs/major_releases/release_policy\"\u003ehere\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eUnreleased\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved \u003ccode\u003e--old-finders\u003c/code\u003e and \u003ccode\u003e--magic-placement\u003c/code\u003e flags and \u003ccode\u003eold_finders\u003c/code\u003e configuration option. The legacy finder logic that relied on environment introspection has been removed (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2445\"\u003e#2445\u003c/a\u003e) \u003ca href=\"https://github.com/joao-faria-dev\"\u003e\u003ccode\u003e@​joao-faria-dev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e6.1.0 October 1 2025\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0a09c783808cfe77bb3269250f663ff733d23302\"\u003e\u003ccode\u003e0a09c78\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e from DanielNoord/python-314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0fee794a05b5d0c471ac80bc8943f9843ca29644\"\u003e\u003ccode\u003e0fee794\u003c/code\u003e\u003c/a\u003e Add 3.14 to \u003ccode\u003estdlibds\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/332a1ad0b68bf3a3acac055b0ec3666408b3b425\"\u003e\u003ccode\u003e332a1ad\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003ezstandard\u003c/code\u003e for 3.14 compat\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/f756e5653afcf6d79ec4d0240b1868cbebd8fafd\"\u003e\u003ccode\u003ef756e56\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/52f5134889d345ff35afdcb86501c8221b804c70\"\u003e\u003ccode\u003e52f5134\u003c/code\u003e\u003c/a\u003e Format with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/012aa69fcadb3c89ff92a3d96aa449be7ae6746f\"\u003e\u003ccode\u003e012aa69\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/89773dbb371192541092657972a74e9ce0bbbc74\"\u003e\u003ccode\u003e89773db\u003c/code\u003e\u003c/a\u003e Target 3.10 with \u003ccode\u003eruff\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/933e382f98a0c77b4c6e33c4e3ef12bd57192884\"\u003e\u003ccode\u003e933e382\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e from DanielNoord/drop-39\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/8b6e00cbe643a216da57fed4baa282d0a4a1b829\"\u003e\u003ccode\u003e8b6e00c\u003c/code\u003e\u003c/a\u003e Remove support for Python 3.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/b5f9f296ad873734e8caa3a731f27360648d9b37\"\u003e\u003ccode\u003eb5f9f29\u003c/code\u003e\u003c/a\u003e Bump profile plugin to 3.10+ and re-lock\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/isort/compare/6.0.1...7.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `black` from 25.1.0 to 25.12.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e25.12.0\u003c/h2\u003e\n\u003cp\u003ePlease test out the draft 2026 style in version 26.1a1! This style will be finalized in\nthe January release (26.1.0). Most of the changes in \u003ccode\u003e--preview\u003c/code\u003e will be in the 2026\nstable style, but not all.\n\u003ca href=\"https://redirect.github.com/psf/black/issues/4042\"\u003ePlease share your feedback!\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis release (25.12.0) will still produce the 2025 style.\u003c/p\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBlack no longer supports running with Python 3.9 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4842\"\u003e#4842\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bug where comments preceding \u003ccode\u003e# fmt: off\u003c/code\u003e/\u003ccode\u003e# fmt: on\u003c/code\u003e blocks were incorrectly\nremoved, particularly affecting Jupytext's \u003ccode\u003e# %% [markdown]\u003c/code\u003e comments (\u003ca href=\"https://redirect.github.com/psf/black/issues/4845\"\u003e#4845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash when multiple \u003ccode\u003e# fmt: skip\u003c/code\u003e comments are used in a multi-part if-clause, on\nstring literals, or on dictionary entries with long lines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4872\"\u003e#4872\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix possible crash when \u003ccode\u003efmt: \u003c/code\u003e directives aren't on the top level (\u003ca href=\"https://redirect.github.com/psf/black/issues/4856\"\u003e#4856\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePreview style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003efmt: skip\u003c/code\u003e skipping the line after instead of the line it's on (\u003ca href=\"https://redirect.github.com/psf/black/issues/4855\"\u003e#4855\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary parentheses from the left-hand side of assignments while preserving\nmagic trailing commas and intentional multiline formatting (\u003ca href=\"https://redirect.github.com/psf/black/issues/4865\"\u003e#4865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e crashing on \u003ccode\u003ewith\u003c/code\u003e statements (\u003ca href=\"https://redirect.github.com/psf/black/issues/4853\"\u003e#4853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e crashing on annotated parameters (\u003ca href=\"https://redirect.github.com/psf/black/issues/4854\"\u003e#4854\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix new lines being added after imports with \u003ccode\u003e# fmt: skip\u003c/code\u003e on them (\u003ca href=\"https://redirect.github.com/psf/black/issues/4894\"\u003e#4894\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReleases now include arm64 Windows binaries and wheels (\u003ca href=\"https://redirect.github.com/psf/black/issues/4814\"\u003e#4814\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eIntegrations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eoutput-file\u003c/code\u003e input to GitHub Action \u003ccode\u003epsf/black\u003c/code\u003e to write formatter output to a\nfile for artifact capture and log cleanliness (\u003ca href=\"https://redirect.github.com/psf/black/issues/4824\"\u003e#4824\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e25.11.0\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnable base 3.14 support (\u003ca href=\"https://redirect.github.com/psf/black/issues/4804\"\u003e#4804\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for the new Python 3.14 t-string syntax introduced by PEP 750 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4805\"\u003e#4805\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bug where comments between \u003ccode\u003e# fmt: off\u003c/code\u003e and \u003ccode\u003e# fmt: on\u003c/code\u003e were reformatted (\u003ca href=\"https://redirect.github.com/psf/black/issues/4811\"\u003e#4811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eComments containing fmt directives now preserve their exact formatting instead of\nbeing normalized (\u003ca href=\"https://redirect.github.com/psf/black/issues/4811\"\u003e#4811\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e25.12.0\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBlack no longer supports running with Python 3.9 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4842\"\u003e#4842\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bug where comments preceding \u003ccode\u003e# fmt: off\u003c/code\u003e/\u003ccode\u003e# fmt: on\u003c/code\u003e blocks were incorrectly\nremoved, particularly affecting Jupytext's \u003ccode\u003e# %% [markdown]\u003c/code\u003e comments (\u003ca href=\"https://redirect.github.com/psf/black/issues/4845\"\u003e#4845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash when multiple \u003ccode\u003e# fmt: skip\u003c/code\u003e comments are used in a multi-part if-clause, on\nstring literals, or on dictionary entries with long lines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4872\"\u003e#4872\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix possible crash when \u003ccode\u003efmt: \u003c/code\u003e directives aren't on the top level (\u003ca href=\"https://redirect.github.com/psf/black/issues/4856\"\u003e#4856\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePreview style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003efmt: skip\u003c/code\u003e skipping the line after instead of the line it's on (\u003ca href=\"https://redirect.github.com/psf/black/issues/4855\"\u003e#4855\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary parentheses from the left-hand side of assignments while preserving\nmagic trailing commas and intentional multiline formatting (\u003ca href=\"https://redirect.github.com/psf/black/issues/4865\"\u003e#4865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e crashing on \u003ccode\u003ewith\u003c/code\u003e statements (\u003ca href=\"https://redirect.github.com/psf/black/issues/4853\"\u003e#4853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e crashing on annotated parameters (\u003ca href=\"https://redirect.github.com/psf/black/issues/4854\"\u003e#4854\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix new lines being added after imports with \u003ccode\u003e# fmt: skip\u003c/code\u003e on them (\u003ca href=\"https://redirect.github.com/psf/black/issues/4894\"\u003e#4894\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReleases now include arm64 Windows binaries and wheels (\u003ca href=\"https://redirect.github.com/psf/black/issues/4814\"\u003e#4814\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eIntegrations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eoutput-file\u003c/code\u003e input to GitHub Action \u003ccode\u003epsf/black\u003c/code\u003e to write formatter output to a\nfile for artifact capture and log cleanliness (\u003ca href=\"https://redirect.github.com/psf/black/issues/4824\"\u003e#4824\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e25.11.0\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnable base 3.14 support (\u003ca href=\"https://redirect.github.com/psf/black/issues/4804\"\u003e#4804\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for the new Python 3.14 t-string syntax introduced by PEP 750 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4805\"\u003e#4805\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bug where comments between \u003ccode\u003e# fmt: off\u003c/code\u003e and \u003ccode\u003e# fmt: on\u003c/code\u003e were reformatted (\u003ca href=\"https://redirect.github.com/psf/black/issues/4811\"\u003e#4811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eComments containing fmt directives now preserve their exact formatting instead of\nbeing normalized (\u003ca href=\"https://redirect.github.com/psf/black/issues/4811\"\u003e#4811\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePreview style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove \u003ccode\u003emultiline_string_handling\u003c/code\u003e from \u003ccode\u003e--unstable\u003c/code\u003e to \u003ccode\u003e--preview\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4760\"\u003e#4760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug where module docstrings would be treated as normal strings if preceded by\ncomments (\u003ca href=\"https://redirect.github.com/psf/black/issues/4764\"\u003e#4764\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/psf/black/commit/782e5605c86aab56be6f905da10dcd3e463fd9c2\"\u003e\u003ccode\u003e782e560\u003c/code\u003e\u003c/a\u003e Pin actions/checkout@v5.0.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4895\"\u003e#4895\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/f0f40945c1b0ebaa9ca733aca517610574c451d6\"\u003e\u003ccode\u003ef0f4094\u003c/code\u003e\u003c/a\u003e Fix new lines being added after imports with \u003ccode\u003e# fmt: skip\u003c/code\u003e on them (\u003ca href=\"https://redirect.github.com/psf/black/issues/4894\"\u003e#4894\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/70fc194172184861aafb418c124824cae0fbe3b0\"\u003e\u003ccode\u003e70fc194\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Fix \u003ccode\u003e# fmt: skip\u003c/code\u003e ignored in deeply nested expressions\u0026quot; (\u003ca href=\"https://redirect.github.com/psf/black/issues/4893\"\u003e#4893\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7044b145f4826e0d6e07178d89666856a8e37aff\"\u003e\u003ccode\u003e7044b14\u003c/code\u003e\u003c/a\u003e Prepare 25.12.0 release (\u003ca href=\"https://redirect.github.com/psf/black/issues/4891\"\u003e#4891\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/5b470f0e577f3c39e0f7d668934d587c0733a652\"\u003e\u003ccode\u003e5b470f0\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003e# fmt: skip\u003c/code\u003e ignored in deeply nested expressions (\u003ca href=\"https://redirect.github.com/psf/black/issues/4883\"\u003e#4883\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/1b342ef5b0433fc1ed61a7e05a65744bef706fc9\"\u003e\u003ccode\u003e1b342ef\u003c/code\u003e\u003c/a\u003e Fix crash when multiple \u003ccode\u003e# fmt: skip\u003c/code\u003e comments are used in multi-part if-clau...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7b265f16634155dafcca65f6122ef7ed8d14a67f\"\u003e\u003ccode\u003e7b265f1\u003c/code\u003e\u003c/a\u003e Pin Hatch to hopefully fix Docker builds (\u003ca href=\"https://redirect.github.com/psf/black/issues/4878\"\u003e#4878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/c9523f463fdc9d9f9f0e61ca92d9b37acdf0d8fc\"\u003e\u003ccode\u003ec9523f4\u003c/code\u003e\u003c/a\u003e Attempt to fix Docker build failures (\u003ca href=\"https://redirect.github.com/psf/black/issues/4876\"\u003e#4876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/0f376e0c35bcb29f87ce18eace30333a3e105841\"\u003e\u003ccode\u003e0f376e0\u003c/code\u003e\u003c/a\u003e Fix crashes when fmt directives are indented (\u003ca href=\"https://redirect.github.com/psf/black/issues/4856\"\u003e#4856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/a8bfcc1040fdfce2e02cdd85dc8bf4e7abe0462f\"\u003e\u003ccode\u003ea8bfcc1\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003efmt: skip\u003c/code\u003e skipping the line after instead of the line it's on (\u003ca href=\"https://redirect.github.com/psf/black/issues/4855\"\u003e#4855\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/25.1.0...25.12.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-toolbox` from 4.0.0 to 4.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.1\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.1\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.0.0...v4.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-needs` from 5.1.0 to 6.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/useblocks/sphinx-needs/releases\"\u003esphinx-needs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev6.3.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Relative paths from toml configuration by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1589\"\u003euseblocks/sphinx-needs#1589\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Ensure \u003ccode\u003eextra_links\u003c/code\u003e \u003ccode\u003eschema\u003c/code\u003e contains item type by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1595\"\u003euseblocks/sphinx-needs#1595\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Validate all schemas compile during config resolution by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1596\"\u003euseblocks/sphinx-needs#1596\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e♻️ Remove typeguard dependency by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1597\"\u003euseblocks/sphinx-needs#1597\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Support Python 3.14 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1598\"\u003euseblocks/sphinx-needs#1598\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix typo in tutorial documentation by \u003ca href=\"https://github.com/dskkato\"\u003e\u003ccode\u003e@​dskkato\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1591\"\u003euseblocks/sphinx-needs#1591\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1586\"\u003euseblocks/sphinx-needs#1586\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/dskkato\"\u003e\u003ccode\u003e@​dskkato\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1591\"\u003euseblocks/sphinx-needs#1591\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/useblocks/sphinx-needs/compare/6.2.0...6.3.0\"\u003ehttps://github.com/useblocks/sphinx-needs/compare/6.2.0...6.3.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🧪 Fix schema benchmark tests by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1577\"\u003euseblocks/sphinx-needs#1577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Improve schema process benchmarking by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1579\"\u003euseblocks/sphinx-needs#1579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Reduce nested functions in \u003ccode\u003eget_ontology_warnings\u003c/code\u003e by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1578\"\u003euseblocks/sphinx-needs#1578\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema validation performance (pre-compute validators) by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1581\"\u003euseblocks/sphinx-needs#1581\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema validation performance (use jsonschema-rs) by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1582\"\u003euseblocks/sphinx-needs#1582\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema validation performance (improve reduce_needs) by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1583\"\u003euseblocks/sphinx-needs#1583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema validation performance (cache recursive validators) by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1584\"\u003euseblocks/sphinx-needs#1584\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1421\"\u003euseblocks/sphinx-needs#1421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🚀 Release v6.2.0 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1585\"\u003euseblocks/sphinx-needs#1585\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/useblocks/sphinx-needs/compare/6.1.1...6.2.0\"\u003ehttps://github.com/useblocks/sphinx-needs/compare/6.1.1...6.2.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev6.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Allow . in schema regex by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1568\"\u003euseblocks/sphinx-needs#1568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 Fix schema network type injection by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1570\"\u003euseblocks/sphinx-needs#1570\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 needs.json for nullable fields by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1571\"\u003euseblocks/sphinx-needs#1571\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Remove mutable global variables by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1575\"\u003euseblocks/sphinx-needs#1575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eneeds_schema_validation_enabled\u003c/code\u003e configuration by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1574\"\u003euseblocks/sphinx-needs#1574\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eallow_type_coercion\u003c/code\u003e configuration for external/import \u003ccode\u003eneeds.json\u003c/code\u003e reads by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1573\"\u003euseblocks/sphinx-needs#1573\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/useblocks/sphinx-needs/compare/6.1.0...6.1.1\"\u003ehttps://github.com/useblocks/sphinx-needs/compare/6.1.0...6.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev6.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix schema rule severity by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1535\"\u003euseblocks/sphinx-needs#1535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Co-locate dynamic and variant function docs by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1544\"\u003euseblocks/sphinx-needs#1544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Add snapshot test for field schema by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1545\"\u003euseblocks/sphinx-needs#1545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Derive core \u003ccode\u003eFieldSchema\u003c/code\u003e from \u003ccode\u003eNeedsCoreFields\u003c/code\u003e by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1546\"\u003euseblocks/sphinx-needs#1546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Make \u003ccode\u003eincoming\u003c/code\u003e/\u003ccode\u003eoutgoing\u003c/code\u003e keys optional in \u003ccode\u003eneeds_extra_links\u003c/code\u003e by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1548\"\u003euseblocks/sphinx-needs#1548\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Removed unused code by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1550\"\u003euseblocks/sphinx-needs#1550\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/useblocks/sphinx-needs/blob/master/docs/changelog.rst\"\u003esphinx-needs's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.3.0\u003c/h2\u003e\n\u003cp\u003e:Released: 15.12.2025\n:Full Changelog: \u003ccode\u003ev6.2.0...v6.3.0 \u0026lt;https://github.com/useblocks/sphinx-needs/compare/6.2.0...f567c1fafb4e1ba1a7dabb3bd6afc5f17ded84cd\u0026gt;\u003c/code\u003e__\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e⬆️ Support Python 3.14 (:pr:\u003ccode\u003e1598\u003c/code\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e♻️ Remove \u003ccode\u003etypeguard\u003c/code\u003e dependency (:pr:\u003ccode\u003e1597\u003c/code\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e👌 Relative paths from toml configuration (:pr:\u003ccode\u003e1589\u003c/code\u003e)\u003c/p\u003e\n\u003cp\u003eEnsure that file paths originating from a :ref:\u003ccode\u003eneeds_from_toml\u003c/code\u003e file are relative to that file, rather than the :file:\u003ccode\u003econf.py\u003c/code\u003e file\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _\u003ccode\u003erelease:6.2.0\u003c/code\u003e:\u003c/p\u003e\n\u003ch2\u003e6.2.0\u003c/h2\u003e\n\u003cp\u003e:Released: 28.11.2025\n:Full Changelog: \u003ccode\u003ev6.1.1...v6.2.0 \u0026lt;https://github.com/useblocks/sphinx-needs/compare/6.1.1...6.2.0\u0026gt;\u003c/code\u003e__\u003c/p\u003e\n\u003cp\u003eThis release introduces performance improvements for schema validation, to make it ~3 times faster (:pr:\u003ccode\u003e1581\u003c/code\u003e, :pr:\u003ccode\u003e1582\u003c/code\u003e, :pr:\u003ccode\u003e1583\u003c/code\u003e, :pr:\u003ccode\u003e1584\u003c/code\u003e).\u003c/p\u003e\n\u003cp\u003eThis includes a change in dependencies, from \u003ccode\u003ejsonschema\u003c/code\u003e to \u003ccode\u003ejsonschema-rs\u003c/code\u003e for the core validation engine.\u003c/p\u003e\n\u003cp\u003e.. _\u003ccode\u003erelease:6.1.1\u003c/code\u003e:\u003c/p\u003e\n\u003ch2\u003e6.1.1\u003c/h2\u003e\n\u003cp\u003e:Released: 25.11.2025\n:Full Changelog: \u003ccode\u003ev6.1.0...v6.1.1 \u0026lt;https://github.com/useblocks/sphinx-needs/compare/6.1.0...6.1.1\u0026gt;\u003c/code\u003e__\u003c/p\u003e\n\u003cp\u003eThis release focuses on schema validation improvements and bug fixes.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e✨ Add \u003ccode\u003eneeds_schema_validation_enabled\u003c/code\u003e configuration (:pr:\u003ccode\u003e1574\u003c/code\u003e)\u003c/p\u003e\n\u003cp\u003eNew configuration option to disable schema validation entirely.\nThis is set to \u003ccode\u003eTrue\u003c/code\u003e by default, for backward compatibility,\nand provides an opt-out mechanism when schema validation is not needed.\u003c/p\u003e\n\u003cp\u003eSee :ref:\u003ccode\u003eneeds_schema_validation_enabled\u003c/code\u003e for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e✨ Add \u003ccode\u003eallow_type_coercion\u003c/code\u003e configuration for external/import \u003ccode\u003eneeds.json\u003c/code\u003e reads (:pr:\u003ccode\u003e1573\u003c/code\u003e)\u003c/p\u003e\n\u003cp\u003eNew configuration option for \u003ccode\u003eneeds_external_needs\u003c/code\u003e and the \u003ccode\u003eneedimport\u003c/code\u003e directive\nthat controls whether field values should be automatically coerced to expected types.\nFor example, enables/disables parsing comma-separated strings like \u003ccode\u003e\u0026quot;a,b,c\u0026quot;\u003c/code\u003e into\nlist types like \u003ccode\u003e[\u0026quot;a\u0026quot;, \u0026quot;b\u0026quot;, \u0026quot;c\u0026quot;]\u003c/code\u003e.\nSet to \u003ccode\u003eTrue\u003c/code\u003e by default for backward compatibility.\nSetting to \u003ccode\u003eFalse\u003c/code\u003e may improve performance by skipping additional parsing.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/0a059cecd1ac10ade89a9ba6ed28842053241ae5\"\u003e\u003ccode\u003e0a059ce\u003c/code\u003e\u003c/a\u003e 🚀 Release v6.3.0 (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1599\"\u003e#1599\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/f567c1fafb4e1ba1a7dabb3bd6afc5f17ded84cd\"\u003e\u003ccode\u003ef567c1f\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1586\"\u003e#1586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/a60a104cf2ae878a438ff718bc95b729f41276da\"\u003e\u003ccode\u003ea60a104\u003c/code\u003e\u003c/a\u003e 📚 Fix typo in tutorial documentation (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1591\"\u003e#1591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/2783b84169f0c2caffe1ded27c9b8d6993b18d4b\"\u003e\u003ccode\u003e2783b84\u003c/code\u003e\u003c/a\u003e ⬆️ Support Python 3.14 (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1598\"\u003e#1598\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/339b358a42f99572f297aa9923b80093679304f2\"\u003e\u003ccode\u003e339b358\u003c/code\u003e\u003c/a\u003e ♻️ Remove typeguard dependency (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1597\"\u003e#1597\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/f09fe6e7cfd4058c9aa8df36bd9eb796138d6d76\"\u003e\u003ccode\u003ef09fe6e\u003c/code\u003e\u003c/a\u003e 👌 Validate all schemas compile during config resolution (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1596\"\u003e#1596\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/4d7e4e132f6ce4044201dab51dde838ec2183136\"\u003e\u003ccode\u003e4d7e4e1\u003c/code\u003e\u003c/a\u003e 👌 Ensure \u003ccode\u003eextra_links\u003c/code\u003e \u003ccode\u003eschema\u003c/code\u003e contains item type (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1595\"\u003e#1595\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/94be2b14336e670505959f047c4f57ed721b1438\"\u003e\u003ccode\u003e94be2b1\u003c/code\u003e\u003c/a\u003e 👌 Relative paths from toml configuration (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1589\"\u003e#1589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/cd2024fe2f4eb3e1c28616a47493e3e8728ea8a9\"\u003e\u003ccode\u003ecd2024f\u003c/code\u003e\u003c/a\u003e 🚀 Release v6.2.0 (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1585\"\u003e#1585\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/92462bbc0a9559e01e1fa6b874a1031472dec1bf\"\u003e\u003ccode\u003e92462bb\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1421\"\u003e#1421\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/useblocks/sphinx-needs/compare/5.1.0...6.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/repository-service-tuf/repository-service-tuf/pull/920","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/repository-service-tuf%2Frepository-service-tuf/issues/920","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/920/packages"}},{"old_version":"4.0.0","new_version":"4.1.1","update_type":"minor","path":null,"pr_created_at":"2026-01-12T04:41:08.000Z","version_change":"4.0.0 → 4.1.1","issue":{"uuid":"3802743037","node_id":"PR_kwDOMftbFc68njza","number":188,"state":"closed","title":"Bump the py-updates group across 1 directory with 79 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-19T04:50:43.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-12T04:41:08.000Z","updated_at":"2026-01-19T04:50:44.000Z","time_to_close":605375,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"py-updates","update_count":79,"packages":[{"name":"awscli","old_version":"1.40.17","new_version":"1.44.15","repository_url":"https://github.com/aws/aws-cli"},{"name":"polars","old_version":"1.28.1","new_version":"1.37.0","repository_url":"https://github.com/pola-rs/polars"},{"name":"requests","old_version":"2.32.3","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"biopython","old_version":"1.85","new_version":"1.86","repository_url":"https://github.com/biopython/biopython"},{"name":"boto3","old_version":"1.38.18","new_version":"1.42.25","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.38.18","new_version":"1.42.25","repository_url":"https://github.com/boto/botocore"},{"name":"certifi","old_version":"2025.4.26","new_version":"2026.1.4","repository_url":"https://github.com/certifi/python-certifi"},{"name":"charset-normalizer","old_version":"3.4.2","new_version":"3.4.4","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"cloudpathlib","old_version":"0.21.1","new_version":"0.23.0","repository_url":"https://github.com/drivendataorg/cloudpathlib"},{"name":"docutils","old_version":"0.19","new_version":"0.22.4","repository_url":"https://github.com/rtfd/recommonmark"},{"name":"idna","old_version":"3.10","new_version":"3.11","repository_url":"https://github.com/kjd/idna"},{"name":"jellyfish","old_version":"1.2.0","new_version":"1.2.1"},{"name":"markdown-it-py","old_version":"3.0.0","new_version":"4.0.0","repository_url":"https://github.com/executablebooks/markdown-it-py"},{"name":"numpy","old_version":"2.2.5","new_version":"2.4.1","repository_url":"https://github.com/numpy/numpy"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"pyarrow","old_version":"20.0.0","new_version":"22.0.0","repository_url":"https://github.com/apache/arrow"},{"name":"pygments","old_version":"2.19.1","new_version":"2.19.2","repository_url":"https://github.com/pygments/pygments"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"rich","old_version":"14.0.0","new_version":"14.2.0","repository_url":"https://github.com/Textualize/rich"},{"name":"rsa","old_version":"4.7.2","new_version":"4.9.1","repository_url":"https://github.com/sybrenstuvel/python-rsa"},{"name":"s3transfer","old_version":"0.12.0","new_version":"0.16.0","repository_url":"https://github.com/boto/s3transfer"},{"name":"structlog","old_version":"25.3.0","new_version":"25.5.0","repository_url":"https://github.com/hynek/structlog"},{"name":"tzdata","old_version":"2025.2","new_version":"2025.3","repository_url":"https://github.com/python/tzdata"},{"name":"urllib3","old_version":"2.4.0","new_version":"2.6.3","repository_url":"https://github.com/urllib3/urllib3"},{"name":"zstandard","old_version":"0.23.0","new_version":"0.25.0","repository_url":"https://github.com/indygreg/python-zstandard"},{"name":"boto3-stubs","old_version":"1.38.18","new_version":"1.42.25","repository_url":"https://github.com/youtype/mypy_boto3_builder"},{"name":"botocore-stubs","old_version":"1.38.18","new_version":"1.42.25","repository_url":"https://github.com/youtype/botocore-stubs"},{"name":"cffi","old_version":"1.17.1","new_version":"2.0.0","repository_url":"https://github.com/python-cffi/cffi"},{"name":"coverage","old_version":"7.8.0","new_version":"7.13.1","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cryptography","old_version":"44.0.3","new_version":"46.0.3","repository_url":"https://github.com/pyca/cryptography"},{"name":"freezegun","old_version":"1.5.1","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"iniconfig","old_version":"2.1.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"markupsafe","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/pallets/markupsafe"},{"name":"moto","old_version":"5.1.4","new_version":"5.1.19","repository_url":"https://github.com/getmoto/moto"},{"name":"mypy","old_version":"1.15.0","new_version":"1.19.1","repository_url":"https://github.com/python/mypy"},{"name":"mypy-boto3-s3","old_version":"1.38.0","new_version":"1.42.21","repository_url":"https://github.com/youtype/mypy_boto3_builder"},{"name":"pycparser","old_version":"2.22","new_version":"2.23","repository_url":"https://github.com/eliben/pycparser"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"responses","old_version":"0.25.7","new_version":"0.25.8","repository_url":"https://github.com/getsentry/responses"},{"name":"ruff","old_version":"0.11.10","new_version":"0.14.11","repository_url":"https://github.com/astral-sh/ruff"},{"name":"types-awscrt","old_version":"0.27.2","new_version":"0.30.0","repository_url":"https://github.com/youtype/types-awscrt"},{"name":"types-requests","old_version":"2.32.0.20250515","new_version":"2.32.4.20260107","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-s3transfer","old_version":"0.12.0","new_version":"0.16.0","repository_url":"https://github.com/youtype/types-s3transfer"},{"name":"typing-extensions","old_version":"4.13.2","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"werkzeug","old_version":"3.1.3","new_version":"3.1.5","repository_url":"https://github.com/pallets/werkzeug"},{"name":"xmltodict","old_version":"0.14.2","new_version":"1.0.2","repository_url":"https://github.com/martinblech/xmltodict"},{"name":"alabaster","old_version":"0.7.16","new_version":"1.0.0","repository_url":"https://github.com/sphinx-doc/alabaster"},{"name":"anyio","old_version":"4.9.0","new_version":"4.12.1","repository_url":"https://github.com/agronholm/anyio"},{"name":"beautifulsoup4","old_version":"4.13.4","new_version":"4.14.3"},{"name":"cachecontrol","old_version":"0.14.3","new_version":"0.14.4","repository_url":"https://github.com/psf/cachecontrol"},{"name":"click","old_version":"8.2.0","new_version":"8.3.1","repository_url":"https://github.com/pallets/click"},{"name":"contourpy","old_version":"1.3.2","new_version":"1.3.3","repository_url":"https://github.com/contourpy/contourpy"},{"name":"filelock","old_version":"3.18.0","new_version":"3.20.3","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"fonttools","old_version":"4.58.0","new_version":"4.61.1","repository_url":"https://github.com/fonttools/fonttools"},{"name":"furo","old_version":"2024.8.6","new_version":"2025.12.19","repository_url":"https://github.com/pradyunsg/furo"},{"name":"kiwisolver","old_version":"1.4.8","new_version":"1.4.9","repository_url":"https://github.com/nucleic/kiwi"},{"name":"matplotlib","old_version":"3.10.3","new_version":"3.10.8","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mdit-py-plugins","old_version":"0.4.2","new_version":"0.5.0","repository_url":"https://github.com/executablebooks/mdit-py-plugins"},{"name":"more-itertools","old_version":"10.7.0","new_version":"10.8.0","repository_url":"https://github.com/more-itertools/more-itertools"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.1.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"pillow","old_version":"11.2.1","new_version":"12.1.0","repository_url":"https://github.com/python-pillow/Pillow"},{"name":"platformdirs","old_version":"4.3.8","new_version":"4.5.1","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pyparsing","old_version":"3.2.3","new_version":"3.3.1","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"ruamel-yaml","old_version":"0.18.10","new_version":"0.19.1"},{"name":"ruamel-yaml-clib","old_version":"0.2.12","new_version":"0.2.15"},{"name":"soupsieve","old_version":"2.7","new_version":"2.8.1","repository_url":"https://github.com/facelessuser/soupsieve"},{"name":"sphinx","old_version":"7.3.7","new_version":"9.0.4","repository_url":"https://github.com/sphinx-doc/sphinx"},{"name":"sphinx-autobuild","old_version":"2024.10.3","new_version":"2025.8.25","repository_url":"https://github.com/sphinx-doc/sphinx-autobuild"},{"name":"sphinx-autodoc-typehints","old_version":"2.3.0","new_version":"3.6.1","repository_url":"https://github.com/tox-dev/sphinx-autodoc-typehints"},{"name":"sphinx-jinja2-compat","old_version":"0.3.0","new_version":"0.4.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-jinja2-compat"},{"name":"sphinx-prompt","old_version":"1.8.0","new_version":"1.10.2","repository_url":"https://github.com/sbrunner/sphinx-prompt"},{"name":"sphinx-tabs","old_version":"3.4.5","new_version":"3.4.7","repository_url":"https://github.com/executablebooks/sphinx-tabs"},{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"},{"name":"sphinxext-opengraph","old_version":"0.10.0","new_version":"0.13.0","repository_url":"https://github.com/sphinx-doc/sphinxext-opengraph"},{"name":"starlette","old_version":"0.46.2","new_version":"0.51.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"uvicorn","old_version":"0.34.2","new_version":"0.40.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"watchfiles","old_version":"1.0.5","new_version":"1.1.1","repository_url":"https://github.com/samuelcolvin/watchfiles"},{"name":"websockets","old_version":"15.0.1","new_version":"16.0","repository_url":"https://github.com/python-websockets/websockets"}],"path":null,"ecosystem":"pip"},"body":"Bumps the py-updates group with 79 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [awscli](https://github.com/aws/aws-cli) | `1.40.17` | `1.44.15` |\n| [polars](https://github.com/pola-rs/polars) | `1.28.1` | `1.37.0` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.32.5` |\n| [biopython](https://github.com/biopython/biopython) | `1.85` | `1.86` |\n| [boto3](https://github.com/boto/boto3) | `1.38.18` | `1.42.25` |\n| [botocore](https://github.com/boto/botocore) | `1.38.18` | `1.42.25` |\n| [certifi](https://github.com/certifi/python-certifi) | `2025.4.26` | `2026.1.4` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.2` | `3.4.4` |\n| [cloudpathlib](https://github.com/drivendataorg/cloudpathlib) | `0.21.1` | `0.23.0` |\n| [docutils](https://github.com/rtfd/recommonmark) | `0.19` | `0.22.4` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.11` |\n| [jellyfish](https://jellyfish.jpt.sh/) | `1.2.0` | `1.2.1` |\n| [markdown-it-py](https://github.com/executablebooks/markdown-it-py) | `3.0.0` | `4.0.0` |\n| [numpy](https://github.com/numpy/numpy) | `2.2.5` | `2.4.1` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [pyarrow](https://github.com/apache/arrow) | `20.0.0` | `22.0.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.19.1` | `2.19.2` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [rich](https://github.com/Textualize/rich) | `14.0.0` | `14.2.0` |\n| [rsa](https://github.com/sybrenstuvel/python-rsa) | `4.7.2` | `4.9.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.12.0` | `0.16.0` |\n| [structlog](https://github.com/hynek/structlog) | `25.3.0` | `25.5.0` |\n| [tzdata](https://github.com/python/tzdata) | `2025.2` | `2025.3` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.4.0` | `2.6.3` |\n| [zstandard](https://github.com/indygreg/python-zstandard) | `0.23.0` | `0.25.0` |\n| [boto3-stubs](https://github.com/youtype/mypy_boto3_builder) | `1.38.18` | `1.42.25` |\n| [botocore-stubs](https://github.com/youtype/botocore-stubs) | `1.38.18` | `1.42.25` |\n| [cffi](https://github.com/python-cffi/cffi) | `1.17.1` | `2.0.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.8.0` | `7.13.1` |\n| [cryptography](https://github.com/pyca/cryptography) | `44.0.3` | `46.0.3` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.1` | `1.5.5` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.1.0` | `2.3.0` |\n| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` |\n| [moto](https://github.com/getmoto/moto) | `5.1.4` | `5.1.19` |\n| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.19.1` |\n| [mypy-boto3-s3](https://github.com/youtype/mypy_boto3_builder) | `1.38.0` | `1.42.21` |\n| [pycparser](https://github.com/eliben/pycparser) | `2.22` | `2.23` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.2` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [responses](https://github.com/getsentry/responses) | `0.25.7` | `0.25.8` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.10` | `0.14.11` |\n| [types-awscrt](https://github.com/youtype/types-awscrt) | `0.27.2` | `0.30.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.32.0.20250515` | `2.32.4.20260107` |\n| [types-s3transfer](https://github.com/youtype/types-s3transfer) | `0.12.0` | `0.16.0` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.13.2` | `4.15.0` |\n| [werkzeug](https://github.com/pallets/werkzeug) | `3.1.3` | `3.1.5` |\n| [xmltodict](https://github.com/martinblech/xmltodict) | `0.14.2` | `1.0.2` |\n| [alabaster](https://github.com/sphinx-doc/alabaster) | `0.7.16` | `1.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.9.0` | `4.12.1` |\n| [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) | `4.13.4` | `4.14.3` |\n| [cachecontrol](https://github.com/psf/cachecontrol) | `0.14.3` | `0.14.4` |\n| [click](https://github.com/pallets/click) | `8.2.0` | `8.3.1` |\n| [contourpy](https://github.com/contourpy/contourpy) | `1.3.2` | `1.3.3` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.18.0` | `3.20.3` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.58.0` | `4.61.1` |\n| [furo](https://github.com/pradyunsg/furo) | `2024.8.6` | `2025.12.19` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.8` | `1.4.9` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.3` | `3.10.8` |\n| [mdit-py-plugins](https://github.com/executablebooks/mdit-py-plugins) | `0.4.2` | `0.5.0` |\n| [more-itertools](https://github.com/more-itertools/more-itertools) | `10.7.0` | `10.8.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.1.2` |\n| [pillow](https://github.com/python-pillow/Pillow) | `11.2.1` | `12.1.0` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.8` | `4.5.1` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.3` | `3.3.1` |\n| ruamel-yaml | `0.18.10` | `0.19.1` |\n| ruamel-yaml-clib | `0.2.12` | `0.2.15` |\n| [soupsieve](https://github.com/facelessuser/soupsieve) | `2.7` | `2.8.1` |\n| [sphinx](https://github.com/sphinx-doc/sphinx) | `7.3.7` | `9.0.4` |\n| [sphinx-autobuild](https://github.com/sphinx-doc/sphinx-autobuild) | `2024.10.3` | `2025.8.25` |\n| [sphinx-autodoc-typehints](https://github.com/tox-dev/sphinx-autodoc-typehints) | `2.3.0` | `3.6.1` |\n| [sphinx-jinja2-compat](https://github.com/sphinx-toolbox/sphinx-jinja2-compat) | `0.3.0` | `0.4.1` |\n| [sphinx-prompt](https://github.com/sbrunner/sphinx-prompt) | `1.8.0` | `1.10.2` |\n| [sphinx-tabs](https://github.com/executablebooks/sphinx-tabs) | `3.4.5` | `3.4.7` |\n| [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) | `4.0.0` | `4.1.1` |\n| [sphinxext-opengraph](https://github.com/sphinx-doc/sphinxext-opengraph) | `0.10.0` | `0.13.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.46.2` | `0.51.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.34.2` | `0.40.0` |\n| [watchfiles](https://github.com/samuelcolvin/watchfiles) | `1.0.5` | `1.1.1` |\n| [websockets](https://github.com/python-websockets/websockets) | `15.0.1` | `16.0` |\n\n\nUpdates `awscli` from 1.40.17 to 1.44.15\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/56a551a5916a09423336124a8967615e0d0be143\"\u003e\u003ccode\u003e56a551a\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.15'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/b78a64f27cce6dc86754f39196b44f5b1a7f266d\"\u003e\u003ccode\u003eb78a64f\u003c/code\u003e\u003c/a\u003e Bumping version to 1.44.15\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/715bce7cf992e841f04b6b15c701d4292450d9d6\"\u003e\u003ccode\u003e715bce7\u003c/code\u003e\u003c/a\u003e Update changelog based on model updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/72510f852833ea976520851bda26757265c6c207\"\u003e\u003ccode\u003e72510f8\u003c/code\u003e\u003c/a\u003e Create update-vpc-link.rst (\u003ca href=\"https://redirect.github.com/aws/aws-cli/issues/9405\"\u003e#9405\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/d6a71c953a9155fceb7fcecf4246718153522c4d\"\u003e\u003ccode\u003ed6a71c9\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.14'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/b2be64a7c3c8747a0cfd7b174307409f9c130420\"\u003e\u003ccode\u003eb2be64a\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.14' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/95337ce8110bbd70efef24b8255892a374698e52\"\u003e\u003ccode\u003e95337ce\u003c/code\u003e\u003c/a\u003e Bumping version to 1.44.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/3224f1b5e55abc438d1f86f06a70fef3dbaa89ca\"\u003e\u003ccode\u003e3224f1b\u003c/code\u003e\u003c/a\u003e Update changelog based on model updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/d90b023b6b34361dec3bffee9b64f62d662fa3d7\"\u003e\u003ccode\u003ed90b023\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.13'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/76549b03313edbe5b8e011b9cf35e3e89b5d5387\"\u003e\u003ccode\u003e76549b0\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.44.13' into develop\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-cli/compare/1.40.17...1.44.15\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `polars` from 1.28.1 to 1.37.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pola-rs/polars/releases\"\u003epolars's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePython Polars 1.37.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Performance improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSpeed up \u003ccode\u003eSQL\u003c/code\u003e interface \u0026quot;ORDER BY\u0026quot; clauses (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26037\"\u003e#26037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd fast kernel for is_nan and use it for numpy NaN-\u0026gt;null conversion (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26034\"\u003e#26034\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOptimize ArrayFromIter implementations for ObjectArray (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25712\"\u003e#25712\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew streaming NDJSON sink pipeline (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25948\"\u003e#25948\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eNew streaming CSV sink pipeline (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25900\"\u003e#25900\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDispatch partitioned usage of \u003ccode\u003esink_*\u003c/code\u003e functions to new-streaming by default (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25910\"\u003e#25910\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace ryu with faster zmij (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25885\"\u003e#25885\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReduce memory usage for .item() count in grouped first/last (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25787\"\u003e#25787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip schema inference if schema provided for \u003ccode\u003escan_csv/ndjson\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25757\"\u003e#25757\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd width-aware chunking to prevent degradation with wide data (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25764\"\u003e#25764\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse new sink pipeline for write/sink_ipc (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25746\"\u003e#25746\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReduce memory usage when scanning multiple parquet files in streaming (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25747\"\u003e#25747\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDon't call cluster_with_columns optimization if not needed (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25724\"\u003e#25724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e✨ Enhancements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new \u003ccode\u003epl.PartitionBy\u003c/code\u003e API (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26004\"\u003e#26004\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eArrowStreamExportable and sink_delta (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25994\"\u003e#25994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRelease musl builds (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25894\"\u003e#25894\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplement streaming decompression for CSV \u003ccode\u003eCOUNT(*)\u003c/code\u003e fast path (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25988\"\u003e#25988\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd nulls support for rolling_mean_by (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25917\"\u003e#25917\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd lazy \u003ccode\u003ecollect_all\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25991\"\u003e#25991\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd streaming decompression for NDJSON schema inference (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25992\"\u003e#25992\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved handling of unqualified SQL \u003ccode\u003eJOIN\u003c/code\u003e columns that are ambiguous (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25761\"\u003e#25761\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDrop Python 3.9 support (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25984\"\u003e#25984\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpose record batch size in \u003ccode\u003e{sink,write}_ipc\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25958\"\u003e#25958\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003enull_on_oob\u003c/code\u003e parameter to \u003ccode\u003eexpr.get\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25957\"\u003e#25957\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSuggest correct timezone if timezone validation fails (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25937\"\u003e#25937\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport streaming IPC scan from S3 object store (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25868\"\u003e#25868\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplement streaming CSV schema inference (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25911\"\u003e#25911\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport hashing of meta expressions (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25916\"\u003e#25916\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove \u003ccode\u003eSQLContext\u003c/code\u003e recognition of possible table objects in the Python globals (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25749\"\u003e#25749\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd pl.Expr.(min|max)_by (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25905\"\u003e#25905\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove MemSlice Debug impl (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25913\"\u003e#25913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplement or fix json encode/decode for (U)Int128, Categorical, Enum, Decimal (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25896\"\u003e#25896\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpand scatter to more dtypes (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25874\"\u003e#25874\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImplement streaming CSV decompression (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25842\"\u003e#25842\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd Series \u003ccode\u003esql\u003c/code\u003e method for API consistency (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25792\"\u003e#25792\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMark Polars as safe for free-threading (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25677\"\u003e#25677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSupport Binary and Decimal in arg_(min|max) (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25839\"\u003e#25839\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow Decimal parsing in str.json_decode (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25797\"\u003e#25797\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eshift\u003c/code\u003e support for Object data type (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25769\"\u003e#25769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing \u003ccode\u003eSeries.arr.mean\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25774\"\u003e#25774\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow scientific notation when parsing Decimals (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25711\"\u003e#25711\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐞 Bug fixes\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/1674b37a0a066e76d33eb8f66d31fd870c0cd52d\"\u003e\u003ccode\u003e1674b37\u003c/code\u003e\u003c/a\u003e Python Polars 1.37.0 (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26038\"\u003e#26038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/4c49bf5ebb9208e70a84a7effdc5368bc901ba84\"\u003e\u003ccode\u003e4c49bf5\u003c/code\u003e\u003c/a\u003e perf: Speed up \u003ccode\u003eSQL\u003c/code\u003e interface \u0026quot;ORDER BY\u0026quot; clauses (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26037\"\u003e#26037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/c1b9d86310269ae4ab22a9bff87d8f2657c8b050\"\u003e\u003ccode\u003ec1b9d86\u003c/code\u003e\u003c/a\u003e chore: Update rust compiler (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26017\"\u003e#26017\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/68911e4e9f7a2bdedca6d3aefa208a6ec02cf8ad\"\u003e\u003ccode\u003e68911e4\u003c/code\u003e\u003c/a\u003e chore: Improve csv test coverage (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25980\"\u003e#25980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/5f25b4f6b828bcd5df1116b0517358ad51c51529\"\u003e\u003ccode\u003e5f25b4f\u003c/code\u003e\u003c/a\u003e perf: Add fast kernel for is_nan and use it for numpy NaN-\u0026gt;null conversion (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/59463cefe36550547b50e5c6801b1d98516cc0c8\"\u003e\u003ccode\u003e59463ce\u003c/code\u003e\u003c/a\u003e docs(python): Fix display of deprecation warning (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26010\"\u003e#26010\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/21721eba70b9fc18dff58958997c151dfe214903\"\u003e\u003ccode\u003e21721eb\u003c/code\u003e\u003c/a\u003e fix(python): Release GIL on collect_batches (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26033\"\u003e#26033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/778dbb645ccbff8b1e5999a279037571a03c718b\"\u003e\u003ccode\u003e778dbb6\u003c/code\u003e\u003c/a\u003e fix: Missing buffer update in String is_in Parquet pushdown (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/26019\"\u003e#26019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/807cfc5a2eae6af453b14a1663e74d07202ce92e\"\u003e\u003ccode\u003e807cfc5\u003c/code\u003e\u003c/a\u003e fix: Make \u003ccode\u003estruct.with_fields\u003c/code\u003e data model coherent (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25610\"\u003e#25610\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/e6d62387f64b225754c15ad1e0b3d4f981509692\"\u003e\u003ccode\u003ee6d6238\u003c/code\u003e\u003c/a\u003e refactor(rust): Use \u003ccode\u003efrom_any_values_and_dtype\u003c/code\u003e in \u003ccode\u003eSeries::extend_constant\u003c/code\u003e ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pola-rs/polars/compare/py-1.28.1...py-1.37.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.32.3 to 2.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/releases\"\u003erequests's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.32.5\u003c/h2\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b25c87d7cb8d6a18a37fa12442b5f883f9e41741\"\u003e\u003ccode\u003eb25c87d\u003c/code\u003e\u003c/a\u003e v2.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/131e506079d97606e4214cc4d87b780ac478de7a\"\u003e\u003ccode\u003e131e506\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/7010\"\u003e#7010\u003c/a\u003e from psf/dependabot/github_actions/actions/checkout-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b336cb2bc616a63a93c6470c558fc1f576b77f90\"\u003e\u003ccode\u003eb336cb2\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/46e939b5525d9c72b677340985582b04b128478a\"\u003e\u003ccode\u003e46e939b\u003c/code\u003e\u003c/a\u003e Update publish workflow to use \u003ccode\u003eartifact-id\u003c/code\u003e instead of \u003ccode\u003ename\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4b9c546aa3f35fca6ca24945376fe7462bb007c4\"\u003e\u003ccode\u003e4b9c546\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6999\"\u003e#6999\u003c/a\u003e from psf/dependabot/github_actions/step-security/har...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7618dbef01d333f23ba4b9c4d97397b06dd89cb6\"\u003e\u003ccode\u003e7618dbe\u003c/code\u003e\u003c/a\u003e Bump step-security/harden-runner from 2.12.0 to 2.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2edca11103c1c27dd8b572dab544b7f48cf3b446\"\u003e\u003ccode\u003e2edca11\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 and drop support for Python 3.8 (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6993\"\u003e#6993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/fec96cd5976ad763e45bac9a033d62cca1877a00\"\u003e\u003ccode\u003efec96cd\u003c/code\u003e\u003c/a\u003e Update Makefile rules (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6996\"\u003e#6996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/d58d8aa2f45c3575268d6d5250745ef69f9cf8b7\"\u003e\u003ccode\u003ed58d8aa\u003c/code\u003e\u003c/a\u003e docs: clarify timeout parameter uses seconds in Session.request (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6994\"\u003e#6994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/91a3eabd3dcc4d7f36dd8249e4777a90ef9b4305\"\u003e\u003ccode\u003e91a3eab\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.5 to 3.29.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `biopython` from 1.85 to 1.86\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/biopython/biopython/blob/master/NEWS.rst\"\u003ebiopython's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e28 October 2025: Biopython 1.86\u003c/h1\u003e\n\u003cp\u003eThis release of Biopython supports Python 3.10, 3.11, 3.12, 3.13 and 3.14.  It\nhas also been tested on PyPy3.10 v7.3.19.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.SearchIO\u003c/code\u003e now supports parsing the tabular and plain text output of\n\u003ccode\u003eInfernal \u0026lt;http://eddylab.org/infernal/\u0026gt;\u003c/code\u003e (v1.0.0+) RNA search tool. The\nformat names are \u003ccode\u003einfernal-tab\u003c/code\u003e and \u003ccode\u003einfernal-text\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe default value of the gap score of a \u003ccode\u003ePairwiseAligner\u003c/code\u003e object was changed\nin this release.  Previously, for consistency with \u003ccode\u003eBio.pairwise2\u003c/code\u003e, the\ndefault value for gap score was 0.  However, this means that a mismatch, an\ninsertion followed by a deletion, and a deletion followed by an insertion all\nget assigned a score of 0.  The aligner then finds a large number of alignments\nthat are logically the same, but have trivial differences between them.  For\nexample, aligning AAACAAA to AAAGAAA previously yielded the following three\nalignments, all with score 6::\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e AAACAAA        AAAC-AAA        AAA-CAAA\n AAAGAAA        AAA-GAAA        AAAG-AAA\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eWith the new default parameter for the gap score, only the first alignment is\nreturned.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.PDBIO\u003c/code\u003e now ensures that b-factor values are always at most 6 characters to\nensure that we do not violate the wwPDB specification. This should not have an impact\non the majority of uses, as b-factor values are generally small (less than 100). When\n1000 \u0026lt;= b-factor \u0026lt; 10_000, the value is rounded to a single decimal place. When,\n10_000 \u0026lt;= b-factor \u0026lt; 999_999, the value is rounded to zero decimal places. Values\nabove 999_999 are now clamped. The justification for this is the rise in the b-factor\nfield being used for additional metadata, typically from computational tools.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.Align\u003c/code\u003e now provides a method \u003ccode\u003eAlignment.from_alignments_with_same_reference\u003c/code\u003e\nto construct a multiple sequence alignment from a collection of alignments\nthat share the same reference sequence.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.PDBIO\u003c/code\u003e will now raise module specific warnings:\n\u003ccode\u003eBio.PDB.PDBExceptions.PDBIOWarning\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.SCADIO\u003c/code\u003e now supports object selection by color in the OpenSCAD\noutput file.  This enables generation of separate STL files for each color for\nprinting protein structures on multi-material 3D printers.\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eiplotx\u003c/code\u003e library is mentioned in the Tutorial as an option to visualise\ntrees using complex style options.\u003c/p\u003e\n\u003cp\u003eMany thanks to the Biopython developers and community for making this release\npossible, especially the following contributors:\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\u003eSee full diff in \u003ca href=\"https://github.com/biopython/biopython/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.18 to 1.42.25\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/8dd60074e59d29c733b6b6eefad3a75ab615090b\"\u003e\u003ccode\u003e8dd6007\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.25'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/0bf89db7865cfef4ed697b92199c093ca6f5f803\"\u003e\u003ccode\u003e0bf89db\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/34bf8f819c2870d7baa90c6e65f83dea34586bdd\"\u003e\u003ccode\u003e34bf8f8\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/9b8fbad82f97a16e4b468b7f9ff83bafa2e8d55d\"\u003e\u003ccode\u003e9b8fbad\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.24'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/6dda579bbbeafe145506fb40a65a2f7979f196c2\"\u003e\u003ccode\u003e6dda579\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.24' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/dc3945deb487ce84d804cb813b8075461973041f\"\u003e\u003ccode\u003edc3945d\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/60784e3398975b90331d227e1377a42232fd3f8a\"\u003e\u003ccode\u003e60784e3\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/dae67fb6753924da30b42cc61dc0d940a672afbd\"\u003e\u003ccode\u003edae67fb\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.23'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/c7b7d4157a8130921bf9e7bef024a1dd17eaf600\"\u003e\u003ccode\u003ec7b7d41\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.23' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/95878f640e54fa7658e242eb2213d361b92162c2\"\u003e\u003ccode\u003e95878f6\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.23\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.18...1.42.25\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `botocore` from 1.38.18 to 1.42.25\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/a35f376045da3bc2dcf0de2c1346482ce1ad30c7\"\u003e\u003ccode\u003ea35f376\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.25'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/721ab7860e75d7c5ef5c0eda91f18c568b2f31e1\"\u003e\u003ccode\u003e721ab78\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/b4541b5471194a63234467945b97397e42e265e4\"\u003e\u003ccode\u003eb4541b5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/90830226c8e3cd3b96755c3b71be3314225871e3\"\u003e\u003ccode\u003e9083022\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/331cd6689f458e58465234ad58a60881d49007fa\"\u003e\u003ccode\u003e331cd66\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.24'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/47f2b30e092fd853d28193d60cb10acf8a89b5ec\"\u003e\u003ccode\u003e47f2b30\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.24' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/230fac5f074e94b3c32f112624c04224d123873d\"\u003e\u003ccode\u003e230fac5\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.24\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/cc102f140d97d286544a36adb5c3fc6043c50321\"\u003e\u003ccode\u003ecc102f1\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/beaeab5eee438b737029aa27c7b7641ec89ba3ad\"\u003e\u003ccode\u003ebeaeab5\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/f6e323727729fb2aa26ec9f8362de39d6adf1d2e\"\u003e\u003ccode\u003ef6e3237\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.23'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/botocore/compare/1.38.18...1.42.25\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `certifi` from 2025.4.26 to 2026.1.4\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/c64d9f3a8496c0195548697f2080e716af66dd6a\"\u003e\u003ccode\u003ec64d9f3\u003c/code\u003e\u003c/a\u003e 2026.01.04 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/389\"\u003e#389\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/4ac232f05a547071543d2fb069aa3c62b1dc79f3\"\u003e\u003ccode\u003e4ac232f\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 6.0.0 to 7.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/387\"\u003e#387\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/95ae4b20e8abb7fa708e751e346466d16b36211a\"\u003e\u003ccode\u003e95ae4b2\u003c/code\u003e\u003c/a\u003e Update CI workflow to use Ubuntu 24.04 and Python 3.14 stable (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/386\"\u003e#386\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/b72a7b1a40ae20755338d3132d8f880427b3b6fc\"\u003e\u003ccode\u003eb72a7b1\u003c/code\u003e\u003c/a\u003e Bump dessant/lock-threads from 5.0.1 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/385\"\u003e#385\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ecc267216fbdcecb1b2aa2aa175152b773cc5ced\"\u003e\u003ccode\u003eecc2672\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/384\"\u003e#384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/6a897dbc1124b17f179ef225742fcda481ec96f3\"\u003e\u003ccode\u003e6a897db\u003c/code\u003e\u003c/a\u003e Bump peter-evans/create-pull-request from 7.0.11 to 8.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/383\"\u003e#383\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/27ca98ad845ee6d130a88301622c137893f71620\"\u003e\u003ccode\u003e27ca98a\u003c/code\u003e\u003c/a\u003e Bump peter-evans/create-pull-request from 7.0.9 to 7.0.11 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/381\"\u003e#381\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/56c59a63909cfd3162b37e7bc16956e64df0f737\"\u003e\u003ccode\u003e56c59a6\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 6.0.0 to 6.0.1 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/382\"\u003e#382\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ae0021cd43a77bfba67d20a041469cdf6996570e\"\u003e\u003ccode\u003eae0021c\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 6.0.0 to 6.1.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/380\"\u003e#380\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ddf5d0b5d2a3d55fd92a79f141dbb5e074caf924\"\u003e\u003ccode\u003eddf5d0b\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5.0.1 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/378\"\u003e#378\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/certifi/python-certifi/compare/2025.04.26...2026.01.04\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `charset-normalizer` from 3.4.2 to 3.4.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.3...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003e multiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/b30ffdcc2f11043c0d34e60fe66d3815cd49b32b\"\u003e\u003ccode\u003eb30ffdc\u003c/code\u003e\u003c/a\u003e :wrench: fix checksum step in cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/d3fbfcfad7dfe3c640886f1a6a6351da527f6634\"\u003e\u003ccode\u003ed3fbfcf\u003c/code\u003e\u003c/a\u003e :wrench: fix cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/dafbb95f8c00d3cc8b99158caa63006ffab98749\"\u003e\u003ccode\u003edafbb95\u003c/code\u003e\u003c/a\u003e Release 3.4.4 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/658\"\u003e#658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/1f18ffaa69d2c84fea7abedb8840197ba9c14562\"\u003e\u003ccode\u003e1f18ffa\u003c/code\u003e\u003c/a\u003e :arrow_up: raise mypy upper bound to 1.18.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/ef4ac69ad203891f24e26b2422ab3a08053044fa\"\u003e\u003ccode\u003eef4ac69\u003c/code\u003e\u003c/a\u003e Merge branch 'release-3.4.4' of github.com:jawah/charset_normalizer into rele...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/4b35dda053db5e2e60a247e80a116e4ef04f439b\"\u003e\u003ccode\u003e4b35dda\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/0ec6452f1a34cbc77a55b237c4118807b44c2a33\"\u003e\u003ccode\u003e0ec6452\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f341edec8a828dda394abfa011b1ded8b4b102e2\"\u003e\u003ccode\u003ef341ede\u003c/code\u003e\u003c/a\u003e :arrow_up: upgrade dependencies (dev, ci)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/a308841e660a4d61ea6c448e7b8bf97415ecdc4a\"\u003e\u003ccode\u003ea308841\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/9c906da611d5ca5ef076d6bf7f60e629f661d0b0\"\u003e\u003ccode\u003e9c906da\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.2...3.4.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cloudpathlib` from 0.21.1 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/drivendataorg/cloudpathlib/releases\"\u003ecloudpathlib's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14 (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/529\"\u003e#529\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/530\"\u003e#530\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eChanged \u003ccode\u003eCloudPath.copy\u003c/code\u003e to have the first parameter named \u003ccode\u003etarget\u003c/code\u003e instead of \u003ccode\u003edestination\u003c/code\u003e and added new \u003ccode\u003efollow_symlinks\u003c/code\u003e and \u003ccode\u003epreserve_metadata\u003c/code\u003e kwargs. \u003cstrong\u003eBreaking change for users that relied on the first parameter being named \u003ccode\u003edestination\u003c/code\u003e instead of \u003ccode\u003etarget\u003c/code\u003e.\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.copy_into\u003c/code\u003e to copy a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move\u003c/code\u003e to move a file or directory to another location.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move_into\u003c/code\u003e to move a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPathInfo\u003c/code\u003e and \u003ccode\u003eCloudPath.info\u003c/code\u003e to get information about a file or directory.\u003c/li\u003e\n\u003cli\u003eAdded additional no-op kwargs to \u003ccode\u003emkdir\u003c/code\u003e, \u003ccode\u003etouch\u003c/code\u003e, \u003ccode\u003eglob\u003c/code\u003e, \u003ccode\u003erglob\u003c/code\u003e, \u003ccode\u003estat\u003c/code\u003e to match pathlib.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.22.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed issue with GS credentials, using default auth enables a wider set of authentication methods in GS (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/390\"\u003e#390\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/514\"\u003e#514\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ljyanesm\"\u003e\u003ccode\u003e@​ljyanesm\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for http(s) urls with \u003ccode\u003eHttpClient\u003c/code\u003e, \u003ccode\u003eHttpPath\u003c/code\u003e, \u003ccode\u003eHttpsClient\u003c/code\u003e, and \u003ccode\u003eHttpsPath\u003c/code\u003e. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/455\"\u003e#455\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded experimental support for patching the builtins \u003ccode\u003eopen\u003c/code\u003e, \u003ccode\u003eos\u003c/code\u003e, \u003ccode\u003eos.path\u003c/code\u003e, and \u003ccode\u003eglob\u003c/code\u003e to work with \u003ccode\u003eCloudPath\u003c/code\u003e objects. It is off by default; see the new \u0026quot;Compatibility\u0026quot; section in the docs for more information. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/128\"\u003e#128\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for \u003ccode\u003eCloudPath(*parts)\u003c/code\u003e to create a \u003ccode\u003eCloudPath\u003c/code\u003e object from a list of parts (to match \u003ccode\u003epathlib.Path\u003c/code\u003e). \u003cstrong\u003eThis is a potentially breaking change for users that relied on the second arg being the \u003ccode\u003eclient\u003c/code\u003e instead of making it an explicit kwarg.\u003c/strong\u003e (PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\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/drivendataorg/cloudpathlib/blob/master/HISTORY.md\"\u003ecloudpathlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0 (2025-10-07)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14 (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/529\"\u003e#529\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/530\"\u003e#530\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eChanged \u003ccode\u003eCloudPath.copy\u003c/code\u003e to have the first parameter named \u003ccode\u003etarget\u003c/code\u003e instead of \u003ccode\u003edestination\u003c/code\u003e and added new \u003ccode\u003efollow_symlinks\u003c/code\u003e and \u003ccode\u003epreserve_metadata\u003c/code\u003e kwargs. \u003cstrong\u003eBreaking change for users that relied on the first parameter being named \u003ccode\u003edestination\u003c/code\u003e instead of \u003ccode\u003etarget\u003c/code\u003e.\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.copy_into\u003c/code\u003e to copy a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move\u003c/code\u003e to move a file or directory to another location.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move_into\u003c/code\u003e to move a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPathInfo\u003c/code\u003e and \u003ccode\u003eCloudPath.info\u003c/code\u003e to get information about a file or directory.\u003c/li\u003e\n\u003cli\u003eAdded additional no-op kwargs to \u003ccode\u003emkdir\u003c/code\u003e, \u003ccode\u003etouch\u003c/code\u003e, \u003ccode\u003eglob\u003c/code\u003e, \u003ccode\u003erglob\u003c/code\u003e, \u003ccode\u003estat\u003c/code\u003e to match pathlib.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.22.0 (2025-08-29)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed issue with GS credentials, using default auth enables a wider set of authentication methods in GS (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/390\"\u003e#390\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/514\"\u003e#514\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ljyanesm\"\u003e\u003ccode\u003e@​ljyanesm\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for http(s) urls with \u003ccode\u003eHttpClient\u003c/code\u003e, \u003ccode\u003eHttpPath\u003c/code\u003e, \u003ccode\u003eHttpsClient\u003c/code\u003e, and \u003ccode\u003eHttpsPath\u003c/code\u003e. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/455\"\u003e#455\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded experimental support for patching the builtins \u003ccode\u003eopen\u003c/code\u003e, \u003ccode\u003eos\u003c/code\u003e, \u003ccode\u003eos.path\u003c/code\u003e, and \u003ccode\u003eglob\u003c/code\u003e to work with \u003ccode\u003eCloudPath\u003c/code\u003e objects. It is off by default; see the new \u0026quot;Compatibility\u0026quot; section in the docs for more information. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/128\"\u003e#128\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for \u003ccode\u003eCloudPath(*parts)\u003c/code\u003e to create a \u003ccode\u003eCloudPath\u003c/code\u003e object from a list of parts (to match \u003ccode\u003epathlib.Path\u003c/code\u003e). \u003cstrong\u003eThis is a potentially breaking change for users that relied on the second arg being the \u003ccode\u003eclient\u003c/code\u003e instead of making it an explicit kwarg.\u003c/strong\u003e (PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\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/drivendataorg/cloudpathlib/commit/28f1d943078517262d045ae50136edf27a5298a1\"\u003e\u003ccode\u003e28f1d94\u003c/code\u003e\u003c/a\u003e WIP Support 3.14 (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/530\"\u003e#530\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/fec5918d6725e9f1f52bee003528f4f854454980\"\u003e\u003ccode\u003efec5918\u003c/code\u003e\u003c/a\u003e Bump pypa/gh-action-pypi-publish in /.github/workflows (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/531\"\u003e#531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/e7900023bf4b32b70ca5b2d798f9ce52187582f8\"\u003e\u003ccode\u003ee790002\u003c/code\u003e\u003c/a\u003e version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/bb1f1e4cb5eba0928cec2aaff30cb0f5ace1f108\"\u003e\u003ccode\u003ebb1f1e4\u003c/code\u003e\u003c/a\u003e WIP: Patch open, os and os.path builtins (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/12005505fc29ab4183968022a487416a31b1a1bd\"\u003e\u003ccode\u003e1200550\u003c/code\u003e\u003c/a\u003e Refactor GS authentication to use default credentials (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/514\"\u003e#514\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/526\"\u003e#526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/b21cac14f0090021594f7e3afae9c48f5d7dbd46\"\u003e\u003ccode\u003eb21cac1\u003c/code\u003e\u003c/a\u003e Implement HTTP(s) support (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/863e884cbf1cf141cdf7bf9c0623e0cd3d27841d\"\u003e\u003ccode\u003e863e884\u003c/code\u003e\u003c/a\u003e fix for azure typing differences (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/524\"\u003e#524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/65c5c012bd4297ce4e812cfb8bbf9827db346e03\"\u003e\u003ccode\u003e65c5c01\u003c/code\u003e\u003c/a\u003e Set pytest-cases\u0026gt;=3.9.1 (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/520\"\u003e#520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/drivendataorg/cloudpathlib/compare/v0.21.1...v0.23.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `docutils` from 0.19 to 0.22.4\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/rtfd/recommonmark/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `idna` from 3.10 to 3.11\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kjd/idna/blob/master/HISTORY.rst\"\u003eidna's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e3.11 (2025-10-12)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to Unicode 16.0.0, including significant changes to UTS46\nprocessing. As a result of Unicode ending support for it, transitional\nprocessing no longer has an effect and returns the same result.\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14, lowest supported version is Python 3.8.\u003c/li\u003e\n\u003cli\u003eVarious updates to packaging, including PEP 740 support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/ad949ee3052c2265c66e3df2dd8871a5832ba327\"\u003e\u003ccode\u003ead949ee\u003c/code\u003e\u003c/a\u003e Release v3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/cae4ba779e0a543823894bd4136651c187944da8\"\u003e\u003ccode\u003ecae4ba7\u003c/code\u003e\u003c/a\u003e Second release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/8adb305165c77c4a45d1568a70ead75d2197692c\"\u003e\u003ccode\u003e8adb305\u003c/code\u003e\u003c/a\u003e Add space in RST link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/74cb2b652bb06133b0c4ab52cc98221be63162cf\"\u003e\u003ccode\u003e74cb2b6\u003c/code\u003e\u003c/a\u003e Release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/05dab09fdde5bbf7d52f757c4dc62e0ba934cca8\"\u003e\u003ccode\u003e05dab09\u003c/code\u003e\u003c/a\u003e Format idna-data with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/90eac78b737d26613776b490432fc6d926b15c55\"\u003e\u003ccode\u003e90eac78\u003c/code\u003e\u003c/a\u003e Apply ruff formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a31ce7ecc0b767e40abb5ce28744ac567b73f366\"\u003e\u003ccode\u003ea31ce7e\u003c/code\u003e\u003c/a\u003e Remove errant test vectors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/81f03334211c78c1832991ce70ebafb3cbfbb79c\"\u003e\u003ccode\u003e81f0333\u003c/code\u003e\u003c/a\u003e Omit vectors known to be broken in test suite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a0f32578c0cac28c7ffbb4c860c92eb2b9b579bd\"\u003e\u003ccode\u003ea0f3257\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into unicode-16-uts46-changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/38d98860e6a1ab92fd35ab09ea4739feabf339a3\"\u003e\u003ccode\u003e38d9886\u003c/code\u003e\u003c/a\u003e Remove extra UTS46 test vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kjd/idna/compare/v3.10...v3.11\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jellyfish` from 1.2.0 to 1.2.1\n\nUpdates `markdown-it-py` from 3.0.0 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/executablebooks/markdown-it-py/releases\"\u003emarkdown-it-py's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eThis primarily drops support for Python 3.8 and 3.9, adds support for Python 3.13,\nand updates the parser to comply with Commonmark 0.31.2 and Markdown-It v14.1.0.\u003c/p\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Drop Python 3.8, test 3.13 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/342\"\u003eexecutablebooks/markdown-it-py#342\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Drop support for Python 3.9 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/360\"\u003eexecutablebooks/markdown-it-py#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Comply with Commonmark 0.31.2 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/362\"\u003eexecutablebooks/markdown-it-py#362\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Improve performance of \u0026quot;text\u0026quot; inline rule by \u003ca href=\"https://github.com/hukkin\"\u003e\u003ccode\u003e@​hukkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/347\"\u003eexecutablebooks/markdown-it-py#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Use \u003ccode\u003estr.removesuffix\u003c/code\u003e by \u003ca href=\"https://github.com/hukkin\"\u003e\u003ccode\u003e@​hukkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/348\"\u003eexecutablebooks/markdown-it-py#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 limit the number of autocompleted cells in a table by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/364\"\u003eexecutablebooks/markdown-it-py#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 fix quadratic complexity in reference parser by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/367\"\u003eexecutablebooks/markdown-it-py#367\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix emphasis inside raw links bugs by \u003ca href=\"https://github.com/tsutsu3\"\u003e\u003ccode\u003e@​tsutsu3\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/320\"\u003eexecutablebooks/markdown-it-py#320\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔧 Replace black and isort with ruff formatter by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/313\"\u003eexecutablebooks/markdown-it-py#313\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Fixed Code Style paragraph still referring to flake8 by \u003ca href=\"https://github.com/venthur\"\u003e\u003ccode\u003e@​venthur\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/309\"\u003eexecutablebooks/markdown-it-py#309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Add \u0026quot;store_labels\u0026quot; to OptionsType by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/343\"\u003eexecutablebooks/markdown-it-py#343\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Move \u003ccode\u003ecode_style\u003c/code\u003e to dependency group by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/344\"\u003eexecutablebooks/markdown-it-py#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Update codecov action by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/345\"\u003eexecutablebooks/markdown-it-py#345\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Update pre-commit and upload-artifact by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/359\"\u003eexecutablebooks/markdown-it-py#359\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Improve spec update script by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/361\"\u003eexecutablebooks/markdown-it-py#361\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 simplify logic in scanDelims by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/365\"\u003eexecutablebooks/markdown-it-py#365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Add CI testing for Python 3.12 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/303\"\u003eexecutablebooks/markdown-it-py#303\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Fix codecov by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/332\"\u003eexecutablebooks/markdown-it-py#332\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📚 Fix typo by \u003ca href=\"https://github.com/bwagner\"\u003e\u003ccode\u003e@​bwagner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/315\"\u003eexecutablebooks/markdown-it-py#315\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix RTD build by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/322\"\u003eexecutablebooks/markdown-it-py#322\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Fix a few old URLs by \u003ca href=\"https://github.com/elijahgreenstein\"\u003e\u003ccode\u003e@​elijahgreenstein\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/358\"\u003eexecutablebooks/markdown-it-py#358\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Improve README by \u003ca href=\"https://github.com/mrmurilo75\"\u003e\u003ccode\u003e@​mrmurilo75\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/340\"\u003eexecutablebooks/markdown-it-py#340\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix CI badge link by \u003ca href=\"https://github.com/tsutsu3\"\u003e\u003ccode\u003e@​tsutsu3\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/291\"\u003eexecutablebooks/markdown-it-py#291\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Update docs by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/292\"\u003eexecutablebooks/markdown-it-py#292\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Add icon to readme by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/293\"\u003eexecutablebooks/markdown-it-py#293\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Update icon by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/294\"\u003eexecutablebooks/markdown-it-py#294\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Clarify docs regarding security configuration by \u003ca href=\"https://github.com/djramones\"\u003e\u003ccode\u003e@​djramones\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/296\"\u003eexecutablebooks/markdown-it-py#296\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix the RTD build by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/311\"\u003eexecutablebooks/markdown-it-py#311\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Fix typos by \u003ca href=\"https://github.com/elijahgreenstein\"\u003e\u003ccode\u003e@​elijahgreenstein\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/366\"\u003eexecutablebooks/markdown-it-py#366\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/executablebooks/markdown-it-py/blob/master/CHANGELOG.md\"\u003emarkdown-it-py's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.0 - 2024-08-10\u003c/h2\u003e\n\u003cp\u003eThis primarily drops support for Python 3.9, adds support for Python 3.13,\nand updates the parser to comply with Commonmark 0.31.2 and Markdown-It v14.1.0.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Drop support for Python 3.9 in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/360\"\u003e#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Comply with Commonmark 0.31.2 in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/362\"\u003e#362\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve performance of \u0026quot;text\u0026quot; inline rule in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/347\"\u003e#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Use \u003ccode\u003estr.removesuffix\u003c/code\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/348\"\u003e#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 limit the number of autocompleted cells in a table in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/364\"\u003e#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 fix quadratic complexity in reference parser in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/367\"\u003e#367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 Fix emphasis inside raw links bugs in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/320\"\u003e#320\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.0\"\u003ehttps://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.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/executablebooks/markdown-it-py/commit/c62983f1554124391b47170180e6c62df4d476ca\"\u003e\u003ccode\u003ec62983f\u003c/code\u003e\u003c/a\u003e 🚀 RELEASE v4.0.0 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/368\"\u003e#368\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/9e93bd554147ffb8582581e14620c7611103d2ff\"\u003e\u003ccode\u003e9e93bd5\u003c/code\u003e\u003c/a\u003e 👌 fix quadratic complexity in reference parser (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/367\"\u003e#367\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/da45c8764b2077425c091fa1811bbb1c5f211bd1\"\u003e\u003ccode\u003eda45c87\u003c/code\u003e\u003c/a\u003e 📚 DOCS: Fix typos (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/366\"\u003e#366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/87b16e272bf8207182084e07a63253b98fc437d7\"\u003e\u003ccode\u003e87b16e2\u003c/code\u003e\u003c/a\u003e 🔧 simplify logic in scanDelims (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/365\"\u003e#365\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/e4009641db528444b85d384af815e9cad997a016\"\u003e\u003ccode\u003ee400964\u003c/code\u003e\u003c/a\u003e 👌 limit the number of autocompleted cells in a table (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/364\"\u003e#364\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/4535d77edcb5f51450a266135687eeae8bcc5033\"\u003e\u003ccode\u003e4535d77\u003c/code\u003e\u003c/a\u003e ⬆️ Comply with Commonmark 0.31.2 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/8eb20ac1cb63e09dcd78e84a0c71dab8446bb73c\"\u003e\u003ccode\u003e8eb20ac\u003c/code\u003e\u003c/a\u003e 🔧 Improve spec update script (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/361\"\u003e#361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/fb9d3ab646e4f752dc8fd52e1dd7613c350ff190\"\u003e\u003ccode\u003efb9d3ab\u003c/code\u003e\u003c/a\u003e ⬆️ Drop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/360\"\u003e#360\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/9ffe841832d33264201aaff120349f001a02953a\"\u003e\u003ccode\u003e9ffe841\u003c/code\u003e\u003c/a\u003e 📚 DOCS: Fix a few old URLs (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/358\"\u003e#358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/154fe43feb17947e2c933d0bb3e26618129909a8\"\u003e\u003ccode\u003e154fe43\u003c/code\u003e\u003c/a\u003e 🔧 Update pre-commit and upload-artifact (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `numpy` from 2.2.5 to 2.4.1\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.1 (Jan 10, 2026)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.4.1 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.4.1 is a patch release that fixes bugs discoved after the\n2.4.0 release. In particular, the typo \u003ccode\u003eSeedlessSequence\u003c/code\u003e is preserved to\nenable wheels using the random Cython API and built against NumPy \u0026lt; 2.4.0\nto run without errors.\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 9 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\u003eAlexander Shadchin\u003c/li\u003e\n\u003cli\u003eBill Tompkins +\u003c/li\u003e\n\u003cli\u003eCharles Harris\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eMarten van Kerkwijk\u003c/li\u003e\n\u003cli\u003eNathan Goldbaum\u003c/li\u003e\n\u003cli\u003eRaghuveer Devulapalli\u003c/li\u003e\n\u003cli\u003eRalf Gommers\u003c/li\u003e\n\u003cli\u003eSebastian Berg\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ePull requests merged\u003c/h2\u003e\n\u003cp\u003eA total of 15 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/30490\"\u003e#30490\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/30503\"\u003e#30503\u003c/a\u003e: DOC: \u003ccode\u003enumpy.select\u003c/code\u003e: fix \u003ccode\u003edefault\u003c/code\u003e parameter docstring...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30504\"\u003e#30504\u003c/a\u003e: REV: Revert part of \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30164\"\u003e#30164\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30500\"\u003e#30500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30506\"\u003e#30506\u003c/a\u003e: TYP: \u003ccode\u003enumpy.select\u003c/code\u003e: allow passing array-like \u003ccode\u003edefault\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30507\"\u003e#30507\u003c/a\u003e: MNT: use if constexpr for compile-time branch selection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30513\"\u003e#30513\u003c/a\u003e: BUG: Fix leak in flat assignment iterator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30516\"\u003e#30516\u003c/a\u003e: BUG: fix heap overflow in fixed-width string multiply (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30511\"\u003e#30511\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30523\"\u003e#30523\u003c/a\u003e: BUG: Ensure summed weights returned by np.average always are...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30527\"\u003e#30527\u003c/a\u003e: TYP: Fix return type of histogram2d\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30594\"\u003e#30594\u003c/a\u003e: MAINT: avoid passing ints to random functions that take double...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30595\"\u003e#30595\u003c/a\u003e: BLD: Avoiding conflict with pygit2 for static build\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30596\"\u003e#30596\u003c/a\u003e: MAINT: Fix msvccompiler missing error on FreeBSD\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30608\"\u003e#30608\u003c/a\u003e: BLD: update vendored Meson to 1.9.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30620\"\u003e#30620\u003c/a\u003e: ENH: use more fine-grained critical sections in array coercion...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30623\"\u003e#30623\u003c/a\u003e: BUG: Undo result type change of quantile/percentile but keep...\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.4.0 (Dec 20, 2025)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.4.0 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.4.0 release continues the work to improve free threaded Python\nsupport, user dtypes implementation, and annotations. There are many expired\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/numpy/numpy/blob/main/doc/RELEASE_WALKTHROUGH.rst\"\u003enumpy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003eThis is a walkthrough of the NumPy 2.4.0 release on Linux, which will be the\nfirst feature release using the \u003ccode\u003enumpy/numpy-release \u0026lt;https://github.com/numpy/numpy-release\u0026gt;\u003c/code\u003e__ repository.\u003c/p\u003e\n\u003cp\u003eThe comm...\n\n_Description has been truncated_","html_url":"https://github.com/reichlab/cladetime/pull/188","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/reichlab%2Fcladetime/issues/188","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/188/packages"}},{"old_version":"3.2.0b1","new_version":"4.1.1","update_type":"major","path":null,"pr_created_at":"2026-01-08T15:46:54.000Z","version_change":"3.2.0b1 → 4.1.1","issue":{"uuid":"3793414951","node_id":"PR_kwDOEGPjt868JgB7","number":276,"state":"closed","title":"Bump the client-python group across 1 directory with 6 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-02-10T16:43:57.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-08T15:46:54.000Z","updated_at":"2026-02-10T16:43:59.000Z","time_to_close":2854623,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"client-python","update_count":6,"packages":[{"name":"sphinx","old_version":"7.1.2","new_version":"7.4.7","repository_url":"https://github.com/sphinx-doc/sphinx"},{"name":"sphinx-toolbox","old_version":"3.2.0b1","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"},{"name":"sphinx-markdown-builder","old_version":"0.5.5","new_version":"0.6.9","repository_url":"https://github.com/liran-funaro/sphinx-markdown-builder"},{"name":"pytest","old_version":"7.3.1","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"coverage","old_version":"6.5.0","new_version":"7.10.7","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"pytest-asyncio","old_version":"0.21.1","new_version":"1.2.0","repository_url":"https://github.com/pytest-dev/pytest-asyncio"}],"path":null,"ecosystem":"pip"},"body":"Bumps the client-python group with 6 updates in the /client/python directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [sphinx](https://github.com/sphinx-doc/sphinx) | `7.1.2` | `7.4.7` |\n| [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) | `3.2.0b1` | `4.1.1` |\n| [sphinx-markdown-builder](https://github.com/liran-funaro/sphinx-markdown-builder) | `0.5.5` | `0.6.9` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.3.1` | `8.4.2` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `6.5.0` | `7.10.7` |\n| [pytest-asyncio](https://github.com/pytest-dev/pytest-asyncio) | `0.21.1` | `1.2.0` |\n\n\nUpdates `sphinx` from 7.1.2 to 7.4.7\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-doc/sphinx/releases\"\u003esphinx's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eSphinx 7.4.7\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.4.6\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.4.5\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.4.4\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.4.3\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.4.2\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.4.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.4.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.3.7\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.3.6\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.3.5\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.3.4\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.3.3\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.3.2\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.3.1\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.3.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eSphinx 7.2.6\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-doc/sphinx/blob/v7.4.7/CHANGES.rst\"\u003esphinx's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease 7.4.7 (released Jul 20, 2024)\u003c/h1\u003e\n\u003ch2\u003eBugs fixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12096\"\u003e#12096\u003c/a\u003e: Warn when files are overwritten in the build directory.\nPatch by Adam Turner and Bénédikt Tran.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12620\"\u003e#12620\u003c/a\u003e: Ensure that old-style object description options are respected.\nPatch by Adam Turner.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12601\"\u003e#12601\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12625\"\u003e#12625\u003c/a\u003e: Support callable objects in :py:class:\u003ccode\u003e~typing.Annotated\u003c/code\u003e type\nmetadata in the Python domain.\nPatch by Adam Turner.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12601\"\u003e#12601\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12622\"\u003e#12622\u003c/a\u003e: Resolve :py:class:\u003ccode\u003e~typing.Annotated\u003c/code\u003e warnings with\n\u003ccode\u003esphinx.ext.autodoc\u003c/code\u003e,\nespecially when using :mod:\u003ccode\u003edataclasses\u003c/code\u003e as type metadata.\nPatch by Adam Turner.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12589\"\u003e#12589\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12626\"\u003e#12626\u003c/a\u003e: autosummary: Fix warnings with :rst:role:\u003ccode\u003e!autolink\u003c/code\u003e.\nPatch by Adam Turner.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease 7.4.6 (released Jul 18, 2024)\u003c/h1\u003e\n\u003ch2\u003eBugs fixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12589\"\u003e#12589\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/9743\"\u003e#9743\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12609\"\u003e#12609\u003c/a\u003e: autosummary: Do not add the package prefix when\ngenerating autosummary directives for modules within a package.\nPatch by Adam Turner.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12613\"\u003e#12613\u003c/a\u003e: Reduce log severity for ambiguity detection during inventory loading.\nPatch by James Addison.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease 7.4.5 (released Jul 16, 2024)\u003c/h1\u003e\n\u003ch2\u003eBugs fixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12593\"\u003e#12593\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12600\"\u003e#12600\u003c/a\u003e: Revert coercing the type of selected :confval:\u003ccode\u003ehtml_sidebars\u003c/code\u003e\nvalues to a list.\nLog an error message when string values are detected.\nPatch by Adam Turner.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12594\"\u003e#12594\u003c/a\u003e: LaTeX: since 7.4.0, :rst:dir:\u003ccode\u003eseealso\u003c/code\u003e and other \u0026quot;light\u0026quot; admonitions\nnow break PDF builds if they contain a :dudir:\u003ccode\u003efigure\u003c/code\u003e directive; and also\nif they are contained in a table cell (rendered by \u003ccode\u003etabulary\u003c/code\u003e).\nPatch by Jean-François B.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease 7.4.4 (released Jul 15, 2024)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/0d912c85fd3ec385432fe707f6a0678425d1e841\"\u003e\u003ccode\u003e0d912c8\u003c/code\u003e\u003c/a\u003e Bump to 7.4.7 final\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/bbc97e035720d96f617921dbd25022e121495b98\"\u003e\u003ccode\u003ebbc97e0\u003c/code\u003e\u003c/a\u003e autosummary: Filter invalid import prefixes in \u003ccode\u003eautolink\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12626\"\u003e#12626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/6c486a575c858b8b82d2580b76c410121663505f\"\u003e\u003ccode\u003e6c486a5\u003c/code\u003e\u003c/a\u003e Fix detecting file changes for the overwritten file warning (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12627\"\u003e#12627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/2bd973e7191c5bc382c1a92b37ab1f20268f42d6\"\u003e\u003ccode\u003e2bd973e\u003c/code\u003e\u003c/a\u003e autodoc: Fix warnings with dataclasses in \u003ccode\u003eAnnotated\u003c/code\u003e metadata (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12622\"\u003e#12622\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/dd77f851494d24d19aecf0328c6913d121b8b51c\"\u003e\u003ccode\u003edd77f85\u003c/code\u003e\u003c/a\u003e Support callables in \u003ccode\u003eAnnotated\u003c/code\u003e types (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12625\"\u003e#12625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/1ed4ca7e038364b3b10e3d36abb84ee034d4d94c\"\u003e\u003ccode\u003e1ed4ca7\u003c/code\u003e\u003c/a\u003e Mark \u003ccode\u003etest_build_manpage\u003c/code\u003e as XFAIL following changes in Docutils master\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/cd8ce07d31cfab61b6996cec1334681600dd3259\"\u003e\u003ccode\u003ecd8ce07\u003c/code\u003e\u003c/a\u003e Update message catalogues following reverted commits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/c6cd25f50dcc2a0bc369da80e75f105a4821d43b\"\u003e\u003ccode\u003ec6cd25f\u003c/code\u003e\u003c/a\u003e Partially revert \u0026quot;Update message catalogues (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/11626\"\u003e#11626\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/fa2ba7d5aeaff36aeb1a6c2f49846432fc932c7a\"\u003e\u003ccode\u003efa2ba7d\u003c/code\u003e\u003c/a\u003e Partially Revert \u0026quot;[bot]: Update message catalogues (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12563\"\u003e#12563\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/e439c6f33f8d8e7bc06b4f6f25dadfda74869ee0\"\u003e\u003ccode\u003ee439c6f\u003c/code\u003e\u003c/a\u003e Ensure that old-style object description options are respected (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12620\"\u003e#12620\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-doc/sphinx/compare/v7.1.2...v7.4.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-toolbox` from 3.2.0b1 to 4.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.1\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.1\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 4.0.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.0.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e📝 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e:octocat: repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🙋 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🏪 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 3.10.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/3.10.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e📝 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e:octocat: repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🙋 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🏪 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eVersion 3.9.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/3.9.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e📝 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e:octocat: repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🙋 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🏪 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003ch2\u003e4.0.0\u003c/h2\u003e\n\u003cp\u003eThe :mod:\u003ccode\u003esphinx_toolbox.source\u003c/code\u003e module no longer enables the :mod:\u003ccode\u003esphinx_toolbox.github\u003c/code\u003e extension automatically.\nIf you have :confval:\u003ccode\u003esource_link_target\u003c/code\u003e set to \u003ccode\u003e'GitHub'\u003c/code\u003e you may need to enable the extension manually.\u003c/p\u003e\n\u003ch2\u003e3.10.0\u003c/h2\u003e\n\u003cp\u003eAllow GitHub branch to be specified for :rst:dir:\u003ccode\u003einstallation\u003c/code\u003e directive.\u003c/p\u003e\n\u003ch2\u003e3.9.0\u003c/h2\u003e\n\u003cp\u003eImproved support for Sphinx 8.1+\u003c/p\u003e\n\u003ch2\u003e3.8.2\u003c/h2\u003e\n\u003cp\u003e(BUG) Fix GitHub issue title parsing.\u003c/p\u003e\n\u003ch2\u003e3.8.0\u003c/h2\u003e\n\u003cp\u003eImproved support for Sphinx 7.3+\u003c/p\u003e\n\u003ch2\u003e3.7.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd :class:\u003ccode\u003esphinx_toolbox.more_autodoc.variables.PropertyDocumenter\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUse sphinx's \u003ccode\u003eHTML5Translator\u003c/code\u003e over \u003ccode\u003eHTMLTranslator\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.6.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocumentation fixes in :mod:\u003ccode\u003e~.collapse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eDunder methods added in Python 3.13 are hidden by :mod:\u003ccode\u003e~.autoprotocol\u003c/code\u003e (\u003ccode\u003e__non_callable_proto_members__\u003c/code\u003e, \u003ccode\u003e__firstlineno__\u003c/code\u003e, \u003ccode\u003e__replace__\u003c/code\u003e, \u003ccode\u003e__static_attributes__\u003c/code\u003e)\u003c/li\u003e\n\u003cli\u003emod:\u003ccode\u003e~.autoprotocol\u003c/code\u003e doesn't document subclasses of protocols, unless :class:\u003ccode\u003e~.Protocol\u003c/code\u003e is one of their direct base classes.\u003c/li\u003e\n\u003cli\u003eSupport for Sphinx 7.x\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e3.5.0\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/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v3.2.0b1...v4.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-markdown-builder` from 0.5.5 to 0.6.9\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/liran-funaro/sphinx-markdown-builder/commits/0.6.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.3.1 to 8.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.2\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.2 (2025-09-03)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13478\"\u003e#13478\u003c/a\u003e: Fixed a crash when using \u003ccode\u003econsole_output_style\u003c/code\u003e{.interpreted-text role=\u0026quot;confval\u0026quot;} with \u003ccode\u003etimes\u003c/code\u003e and a module is skipped.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13530\"\u003e#13530\u003c/a\u003e: Fixed a crash when using \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and \u003ccode\u003edecimal.Decimal\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} instances with the \u003ccode\u003edecimal.FloatOperation\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} trap set.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13549\"\u003e#13549\u003c/a\u003e: No longer evaluate type annotations in Python \u003ccode\u003e3.14\u003c/code\u003e when inspecting function signatures.\u003c/p\u003e\n\u003cp\u003eThis prevents crashes during module collection when modules do not explicitly use \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e and import types for annotations within a \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13559\"\u003e#13559\u003c/a\u003e: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in \u003ccode\u003epytest.Parser.addini\u003c/code\u003e{.interpreted-text role=\u0026quot;meth\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13563\"\u003e#13563\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now only imports \u003ccode\u003enumpy\u003c/code\u003e if NumPy is already in \u003ccode\u003esys.modules\u003c/code\u003e. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13577\"\u003e#13577\u003c/a\u003e: Clarify that \u003ccode\u003epytest_generate_tests\u003c/code\u003e is discovered in test modules/classes; other hooks must be in \u003ccode\u003econftest.py\u003c/code\u003e or plugins.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13480\"\u003e#13480\u003c/a\u003e: Self-testing: fixed a few test failures when run with \u003ccode\u003e-Wdefault\u003c/code\u003e or a similar override.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13547\"\u003e#13547\u003c/a\u003e: Self-testing: corrected expected message for \u003ccode\u003etest_doctest_unexpected_exception\u003c/code\u003e in Python \u003ccode\u003e3.14\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13684\"\u003e#13684\u003c/a\u003e: Make pytest's own testsuite insensitive to the presence of the \u003ccode\u003eCI\u003c/code\u003e environment variable -- by \u003ccode\u003eogrisel\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.1 (2025-06-17)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13461\"\u003e#13461\u003c/a\u003e: Corrected \u003ccode\u003e_pytest.terminal.TerminalReporter.isatty\u003c/code\u003e to support\nbeing called as a method. Before it was just a boolean which could\nbreak correct code when using \u003ccode\u003e-o log_cli=true\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13477\"\u003e#13477\u003c/a\u003e: Reintroduced \u003ccode\u003epytest.PytestReturnNotNoneWarning\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which was removed by accident in pytest [8.4]{.title-ref}.\u003c/p\u003e\n\u003cp\u003eThis warning is raised when a test functions returns a value other than \u003ccode\u003eNone\u003c/code\u003e, which is often a mistake made by beginners.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ereturn-not-none\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13497\"\u003e#13497\u003c/a\u003e: Fixed compatibility with \u003ccode\u003eTwisted 25+\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e: Fixed outdated warning about \u003ccode\u003efaulthandler\u003c/code\u003e not working on Windows.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.0 (2025-06-02)\u003c/h1\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bfae4224fd554d3d7f2c277a4cc092b6ec6af3ae\"\u003e\u003ccode\u003ebfae422\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/89905381a163be30ae87d62e5f750e902d750c5f\"\u003e\u003ccode\u003e8990538\u003c/code\u003e\u003c/a\u003e Fix passenv CI in tox ini and make tests insensitive to the presence of the C...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ca676bfe005aebcb12f4146d1b0f1d2772e2cd5d\"\u003e\u003ccode\u003eca676bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13687\"\u003e#13687\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/e63f6e51c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/975a60a63ce385a44655596e254c1899feaa53e4\"\u003e\u003ccode\u003e975a60a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13686\"\u003e#13686\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/12bde8af6...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7723ce84b87ab08f86ddafcb342acc28ba5ec99d\"\u003e\u003ccode\u003e7723ce8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13683\"\u003e#13683\u003c/a\u003e from even-even/fix_Exeption_to_Exception_in_errorMe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7f05680d1301e0969b30bcb3c4b27433c9ee2b7\"\u003e\u003ccode\u003eb7f0568\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13685\"\u003e#13685\u003c/a\u003e from CoretexShadow/fix/docs-pytest-generate-tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2c94c4a6948ba53440818389298157fa5d5f94cd\"\u003e\u003ccode\u003e2c94c4a\u003c/code\u003e\u003c/a\u003e add missing colon (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13640\"\u003e#13640\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13641\"\u003e#13641\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c3d7684bc01c8c48d05145a30c5211ca8656c68c\"\u003e\u003ccode\u003ec3d7684\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13606\"\u003e#13606\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/5f9938563...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/dc6e3be2ddc75a149b6d102d9b7c82ee47a00cfa\"\u003e\u003ccode\u003edc6e3be\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13605\"\u003e#13605\u003c/a\u003e from The-Compiler/training-update-2025-07\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f87289c36c8dbe7740e3020f5546b6f8b0861ff0\"\u003e\u003ccode\u003ef87289c\u003c/code\u003e\u003c/a\u003e Fix crash with \u003ccode\u003etimes\u003c/code\u003e output style and skipped module (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13573\"\u003e#13573\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13579\"\u003e#13579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.3.1...8.4.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `coverage` from 6.5.0 to 7.10.7\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.10.7 — 2025-09-21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance: with branch coverage in large files, generating HTML, JSON, or\nLCOV reports could take far too long due to some quadratic behavior when\ncreating the function and class index pages.  This is now fixed, closing\n\u003ccode\u003eissue 2048\u003c/code\u003e_.  Thanks to Daniel Diniz for help diagnosing the problem.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eMost warnings and a few errors now have links to a page in the docs\nexplaining the specific message.  Closes \u003ccode\u003eissue 1921\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1921: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/1921\"\u003ecoveragepy/coveragepy#1921\u003c/a\u003e\n.. _issue 2048: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2048\"\u003ecoveragepy/coveragepy#2048\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-6:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.6 — 2025-08-29\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003esource\u003c/code\u003e directories were not properly communicated to subprocesses\nthat ran in different directories, as reported in \u003ccode\u003eissue 1499\u003c/code\u003e_.  This is now\nfixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance: \u003ccode\u003eAlex Gaynor continues fine-tuning \u0026lt;pull 2038_\u0026gt;\u003c/code\u003e_ the speed of\ncombination, especially with many contexts.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1499: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/1499\"\u003ecoveragepy/coveragepy#1499\u003c/a\u003e\n.. _pull 2038: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/pull/2038\"\u003ecoveragepy/coveragepy#2038\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-5:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.5 — 2025-08-23\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBig speed improvements for \u003ccode\u003ecoverage combine\u003c/code\u003e: it's now about twice as\nfast! Huge thanks to Alex Gaynor for pull requests \u003ccode\u003e2032 \u0026lt;pull 2032_\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e2033 \u0026lt;pull 2033_\u0026gt;\u003c/code\u003e\u003c/em\u003e, and \u003ccode\u003e2034 \u0026lt;pull 2034_\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _pull 2032: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/pull/2032\"\u003ecoveragepy/coveragepy#2032\u003c/a\u003e\n.. _pull 2033: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/pull/2033\"\u003ecoveragepy/coveragepy#2033\u003c/a\u003e\n.. _pull 2034: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/pull/2034\"\u003ecoveragepy/coveragepy#2034\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-4:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.4 — 2025-08-16\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/92a2af54e6bc948a9c536bd9b12bab70fb055904\"\u003e\u003ccode\u003e92a2af5\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.10.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/952afdaca658d5e1acdd533c727448a0b218caf0\"\u003e\u003ccode\u003e952afda\u003c/code\u003e\u003c/a\u003e docs: prep for 7.10.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/a301761e69da97b27662f395974d26f78fa8b2b5\"\u003e\u003ccode\u003ea301761\u003c/code\u003e\u003c/a\u003e build: riscv64 wheels (\u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2055\"\u003e#2055\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/5daff8d38786aa540ff9bec622eb3389f117f911\"\u003e\u003ccode\u003e5daff8d\u003c/code\u003e\u003c/a\u003e docs: now source is formatted with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/04bbc3acfd914fdd99ffec9873bc03bdc7329357\"\u003e\u003ccode\u003e04bbc3a\u003c/code\u003e\u003c/a\u003e docs: discuss cog in the contributing docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/c181b9315f59a81667da47cf3d760d0253872238\"\u003e\u003ccode\u003ec181b93\u003c/code\u003e\u003c/a\u003e build: use cog --check-fail-msg to instruct devs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/33c4ba196f49e0ee86ab0ff473c0876c0bacd5fa\"\u003e\u003ccode\u003e33c4ba1\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/0744b73b6b503ccf2cb75aba095c023672b921a8\"\u003e\u003ccode\u003e0744b73\u003c/code\u003e\u003c/a\u003e chore: bump the action-dependencies group across 1 directory with 2 updates (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/0d5a112fc54c1d5a07f3f2ec451779808902c9af\"\u003e\u003ccode\u003e0d5a112\u003c/code\u003e\u003c/a\u003e perf: bulk narrowing to avoid N**2. \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2048\"\u003e#2048\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/a868ed9269ca474748130f5c6360cd2aae66ffc8\"\u003e\u003ccode\u003ea868ed9\u003c/code\u003e\u003c/a\u003e docs: mention Python Discord on the index page\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/coveragepy/coveragepy/compare/6.5.0...7.10.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-asyncio` from 0.21.1 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/releases\"\u003epytest-asyncio's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epytest-asyncio 1.2.0\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/tree/1.2.0\"\u003e1.2.0\u003c/a\u003e - 2025-09-12\u003c/h1\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e--asyncio-debug\u003c/code\u003e CLI option and \u003ccode\u003easyncio_debug\u003c/code\u003e configuration option to enable asyncio debug mode for the default event loop. (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/980\"\u003e#980\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eA \u003ccode\u003epytest.UsageError\u003c/code\u003e for invalid configuration values of \u003ccode\u003easyncio_default_fixture_loop_scope\u003c/code\u003e and \u003ccode\u003easyncio_default_test_loop_scope\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1189\"\u003e#1189\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCompatibility with the Pyright type checker (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/731\"\u003e#731\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eRuntimeError: There is no current event loop in thread 'MainThread'\u003c/code\u003e when any test unsets the event loop (such as when using \u003ccode\u003easyncio.run\u003c/code\u003e and \u003ccode\u003easyncio.Runner\u003c/code\u003e). (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1177\"\u003e#1177\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDeprecation warning when decorating an asynchronous fixture with \u003ccode\u003e@pytest.fixture\u003c/code\u003e in [strict]{.title-ref} mode. The warning message now refers to the correct package. (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1198\"\u003e#1198\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNotes for Downstream Packagers\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump the minimum required version of tox to v4.28. This change is only relevant if you use the \u003ccode\u003etox.ini\u003c/code\u003e file provided by pytest-asyncio to run tests.\u003c/li\u003e\n\u003cli\u003eExtend dependency on typing-extensions\u0026gt;=4.12 from Python\u0026lt;3.10 to Python\u0026lt;3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epytest-asyncio 1.1.1\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/tree/v1.1.1\"\u003ev1.1.1\u003c/a\u003e - 2025-09-12\u003c/h1\u003e\n\u003ch2\u003eNotes for Downstream Packagers\u003c/h2\u003e\n\u003cp\u003e- Addresses a build problem with setuptoos-scm \u0026gt;= 9 caused by invalid setuptools-scm configuration in pytest-asyncio. (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/1192\"\u003e#1192\u003c/a\u003e)\u003c/p\u003e\n\u003ch2\u003epytest-asyncio 1.1.0\u003c/h2\u003e\n\u003ch1\u003eAdded\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ePropagation of ContextVars from async fixtures to other fixtures and tests on Python 3.10 and older (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCancellation of tasks when the \u003ccode\u003eloop_scope\u003c/code\u003e ends (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/200\"\u003e#200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eWarning when the current event loop is closed by a test\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eFixed\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eError about missing loop when calling functions requiring a loop in the \u003ccode\u003efinally\u003c/code\u003e clause of a task (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/878\"\u003e#878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAn error that could cause duplicate warnings to be issued\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eNotes for Downstream Packagers\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded runtime dependency on \u003ca href=\"https://pypi.org/project/backports.asyncio.runner/\"\u003ebackports.asyncio.runner\u003c/a\u003e for use with Python 3.10 and older\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epytest-asyncio 1.1.0a1\u003c/h2\u003e\n\u003ch1\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/tree/1.1.0a1\"\u003e1.1.0a1\u003c/a\u003e - 2025-06-30\u003c/h1\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePropagation of ContextVars from async fixtures to other fixtures and tests on Python 3.10 and older  (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCancellation of tasks when the \u003cem\u003eloop_scope\u003c/em\u003e ends   (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-asyncio/issues/200\"\u003e#200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eWarning when the current event loop is closed by a test\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\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-asyncio/commit/0d3988f5adc16e8b364266c9ecda42a36d5892ff\"\u003e\u003ccode\u003e0d3988f\u003c/code\u003e\u003c/a\u003e ci: Create GitHub release before publishing to PyPI.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/07c5a0b3e0bb99c7592ab87ed17a4bb2966fdf6a\"\u003e\u003ccode\u003e07c5a0b\u003c/code\u003e\u003c/a\u003e docs: Include orphaned news fragment in changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/be24582b86375b761534639be6c2941d0b3f116c\"\u003e\u003ccode\u003ebe24582\u003c/code\u003e\u003c/a\u003e chore: Prepare release of v1.2.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/7aeb296b9f95e57c371734dcb1d3ece3f7c81727\"\u003e\u003ccode\u003e7aeb296\u003c/code\u003e\u003c/a\u003e docs: Streamline news fragments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/7b8311cf1d2f67931f4fd9bbbe6d9f3b09572ebb\"\u003e\u003ccode\u003e7b8311c\u003c/code\u003e\u003c/a\u003e ci: Fixes a bug that prevented SSH signature from being stripped from release...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/9d4c2bd8770d4073e015213373975f217d3ac8f5\"\u003e\u003ccode\u003e9d4c2bd\u003c/code\u003e\u003c/a\u003e docs: Add changelog entry for Pyright compatibility.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/94f6106ea0c7ee716d7cf85377c653baa9cb7cd9\"\u003e\u003ccode\u003e94f6106\u003c/code\u003e\u003c/a\u003e test: Added tests which assert that the event loop is reinstated if unset by ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/df61991f1805f45ab31ae2d2fb73a54ff25ccd0c\"\u003e\u003ccode\u003edf61991\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/f1f7941691ff506ab553dfd6d00b09e8213eeff7\"\u003e\u003ccode\u003ef1f7941\u003c/code\u003e\u003c/a\u003e Build(deps): Bump pytest from 8.4.1 to 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/commit/c77d3d38f7adb41f5f6ea7b002da4e0f480c5c24\"\u003e\u003ccode\u003ec77d3d3\u003c/code\u003e\u003c/a\u003e Build(deps): Bump twine from 6.1.0 to 6.2.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-asyncio/compare/v0.21.1...v1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/justinas-marozas/armada/pull/276","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/justinas-marozas%2Farmada/issues/276","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/276/packages"}},{"old_version":"4.1.0","new_version":"4.1.1","update_type":"patch","path":null,"pr_created_at":"2026-01-06T07:10:22.000Z","version_change":"4.1.0 → 4.1.1","issue":{"uuid":"3784031341","node_id":"PR_kwDOJjWlhM67qe4Q","number":865,"state":"closed","title":"MAINT: Bump the docs-deps group across 1 directory with 3 updates","user":"dependabot[bot]","labels":["dependencies","maintenance"],"assignees":["pyansys-ci-bot"],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-08T07:09:57.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-06T07:10:22.000Z","updated_at":"2026-01-08T07:09:59.000Z","time_to_close":172775,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"MAINT: Bump","group_name":"docs-deps","update_count":3,"packages":[{"name":"sphinx","old_version":"8.2.3","new_version":"9.1.0","repository_url":"https://github.com/sphinx-doc/sphinx"},{"name":"sphinx-autodoc-typehints","old_version":"3.1.0","new_version":"3.6.2","repository_url":"https://github.com/tox-dev/sphinx-autodoc-typehints"},{"name":"sphinx-toolbox","old_version":"4.1.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps the docs-deps group with 3 updates in the / directory: [sphinx](https://github.com/sphinx-doc/sphinx), [sphinx-autodoc-typehints](https://github.com/tox-dev/sphinx-autodoc-typehints) and [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox).\n\nUpdates `sphinx` from 8.2.3 to 9.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-doc/sphinx/releases\"\u003esphinx's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eSphinx 9.1.0\u003c/h2\u003e\n\u003cp\u003eChangelog: \u003ca href=\"https://www.sphinx-doc.org/en/master/changes.html\"\u003ehttps://www.sphinx-doc.org/en/master/changes.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eDependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14153\"\u003e#14153\u003c/a\u003e: Drop Python 3.11 support.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12555\"\u003e#12555\u003c/a\u003e: Drop Docutils 0.20 support.\nPatch by Adam Turner\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures added\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eadd_static_dir()\u003c/code\u003e for copying static\nassets from extensions to the build output.\nPatch by Jared Dillard\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugs fixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14189\"\u003e#14189\u003c/a\u003e: autodoc: Fix duplicate \u003ccode\u003e:no-index-entry:\u003c/code\u003e for modules.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/13713\"\u003e#13713\u003c/a\u003e: Fix compatibility with MyST-Parser.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003eFix tests for Python 3.15.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14089\"\u003e#14089\u003c/a\u003e: autodoc: Fix default option parsing.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003eRemove incorrect static typing assertions.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14050\"\u003e#14050\u003c/a\u003e: LaTeXTranslator fails to build documents using the \u0026quot;acronym\u0026quot;\nstandard role.\nPatch by Günter Milde\u003c/li\u003e\n\u003cli\u003eLaTeX: Fix rendering for grid filled merged vertical cell.\nPatch by Tim Nordell\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14228\"\u003e#14228\u003c/a\u003e: LaTeX: Fix overrun footer for cases of merged vertical table cells.\nPatch by Tim Nordell\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14207\"\u003e#14207\u003c/a\u003e: Fix creating \u003ccode\u003eHTMLThemeFactory\u003c/code\u003e objects in third-party extensions.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/3099\"\u003e#3099\u003c/a\u003e: LaTeX: PDF build crashes if a code-block contains more than\ncirca 1350 codelines (about 27 a4-sized pages at default pointsize).\nPatch by Jean-François B.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14064\"\u003e#14064\u003c/a\u003e: LaTeX: TABs ending up in sphinxVerbatim fail to obey tab stops.\nPatch by Jean-François B.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14089\"\u003e#14089\u003c/a\u003e: autodoc: Improve support for non-weakreferencable objects.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003eLaTeX: Fix accidental removal at \u003ccode\u003e3.5.0\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/8854\"\u003e#8854\u003c/a\u003e) of the documentation of\n\u003ccode\u003eliteralblockcappos\u003c/code\u003e key of  sphinxsetup.\nPatch by Jean-François B.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- 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/sphinx-doc/sphinx/blob/master/CHANGES.rst\"\u003esphinx's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease 9.1.0 (released Dec 31, 2025)\u003c/h1\u003e\n\u003ch2\u003eDependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14153\"\u003e#14153\u003c/a\u003e: Drop Python 3.11 support.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/12555\"\u003e#12555\u003c/a\u003e: Drop Docutils 0.20 support.\nPatch by Adam Turner\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures added\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd :meth:\u003ccode\u003e~sphinx.application.Sphinx.add_static_dir\u003c/code\u003e for copying static\nassets from extensions to the build output.\nPatch by Jared Dillard\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugs fixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14189\"\u003e#14189\u003c/a\u003e: autodoc: Fix duplicate \u003ccode\u003e:no-index-entry:\u003c/code\u003e for modules.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/13713\"\u003e#13713\u003c/a\u003e: Fix compatibility with MyST-Parser.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003eFix tests for Python 3.15.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14089\"\u003e#14089\u003c/a\u003e: autodoc: Fix default option parsing.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003eRemove incorrect static typing assertions.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14050\"\u003e#14050\u003c/a\u003e: LaTeXTranslator fails to build documents using the \u0026quot;acronym\u0026quot;\nstandard role.\nPatch by Günter Milde\u003c/li\u003e\n\u003cli\u003eLaTeX: Fix rendering for grid filled merged vertical cell.\nPatch by Tim Nordell\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14228\"\u003e#14228\u003c/a\u003e: LaTeX: Fix overrun footer for cases of merged vertical table cells.\nPatch by Tim Nordell\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14207\"\u003e#14207\u003c/a\u003e: Fix creating \u003ccode\u003eHTMLThemeFactory\u003c/code\u003e objects in third-party extensions.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/3099\"\u003e#3099\u003c/a\u003e: LaTeX: PDF build crashes if a code-block contains more than\ncirca 1350 codelines (about 27 a4-sized pages at default pointsize).\nPatch by Jean-François B.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14064\"\u003e#14064\u003c/a\u003e: LaTeX: TABs ending up in sphinxVerbatim fail to obey tab stops.\nPatch by Jean-François B.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14089\"\u003e#14089\u003c/a\u003e: autodoc: Improve support for non-weakreferencable objects.\nPatch by Adam Turner\u003c/li\u003e\n\u003cli\u003eLaTeX: Fix accidental removal at \u003ccode\u003e3.5.0\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/8854\"\u003e#8854\u003c/a\u003e) of the documentation of\n\u003ccode\u003eliteralblockcappos\u003c/code\u003e key of  :ref:\u003ccode\u003e'sphinxsetup' \u0026lt;latexsphinxsetup\u0026gt;\u003c/code\u003e.\nPatch by Jean-François B.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/cc7c6f435ad37bb12264f8118c8461b230e6830c\"\u003e\u003ccode\u003ecc7c6f4\u003c/code\u003e\u003c/a\u003e Bump to 9.1.0 final\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/b127b9478aa4654a82eeadf1a1e89715d3927608\"\u003e\u003ccode\u003eb127b94\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003eapp.add_static_dir()\u003c/code\u003e for copying extension static files (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14219\"\u003e#14219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/20f1c46790d370b50fa7396cca3e1cc658ce9f89\"\u003e\u003ccode\u003e20f1c46\u003c/code\u003e\u003c/a\u003e LaTeX: Inhibit breaks for rows with merged vertical cells (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14227\"\u003e#14227\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/3c85411fd06a1c3026f7991818312e5358ef52e5\"\u003e\u003ccode\u003e3c85411\u003c/code\u003e\u003c/a\u003e Polish CHANGES.rst (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14225\"\u003e#14225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/9ee5446c6cfb997a6b92f5cfb84d045ec947417a\"\u003e\u003ccode\u003e9ee5446\u003c/code\u003e\u003c/a\u003e LaTeX: restore 1.7 documentation of literalblockcappos (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14224\"\u003e#14224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/d75d602005be7567abc7741ee777f6f8c302d827\"\u003e\u003ccode\u003ed75d602\u003c/code\u003e\u003c/a\u003e LaTeX: improve (again...) some code comments in time for 9.1.0 (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14222\"\u003e#14222\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/8dca61d69a4a05c56702980e4f6cbe6451dd9ebc\"\u003e\u003ccode\u003e8dca61d\u003c/code\u003e\u003c/a\u003e Improve some LaTeX code comments (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14220\"\u003e#14220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/8ab960098a8e12b8893bd3ceafc394759118346b\"\u003e\u003ccode\u003e8ab9600\u003c/code\u003e\u003c/a\u003e Bump to 9.1.0 candidate 2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/d59b2375945ed04414a11b0adb3e5655525f3e9e\"\u003e\u003ccode\u003ed59b237\u003c/code\u003e\u003c/a\u003e autodoc: Improve support for non-weakreferencable objects\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-doc/sphinx/commit/964424b3dbc92ed1718272fd45123878f3eec14d\"\u003e\u003ccode\u003e964424b\u003c/code\u003e\u003c/a\u003e Use the correct reference for using existing extensions (\u003ca href=\"https://redirect.github.com/sphinx-doc/sphinx/issues/14157\"\u003e#14157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-doc/sphinx/compare/v8.2.3...v9.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-autodoc-typehints` from 3.1.0 to 3.6.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/releases\"\u003esphinx-autodoc-typehints's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.6.2\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix compatibility with 9.1.0 by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/pull/595\"\u003etox-dev/sphinx-autodoc-typehints#595\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.6.1...3.6.2\"\u003ehttps://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.6.1...3.6.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.6.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eInclude metadata in type hints by \u003ca href=\"https://github.com/AllanChain\"\u003e\u003ccode\u003e@​AllanChain\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/pull/594\"\u003etox-dev/sphinx-autodoc-typehints#594\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/AllanChain\"\u003e\u003ccode\u003e@​AllanChain\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/pull/594\"\u003etox-dev/sphinx-autodoc-typehints#594\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.6.0...3.6.1\"\u003ehttps://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.6.0...3.6.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.6.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUse Sphinx 9 class interface by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/pull/589\"\u003etox-dev/sphinx-autodoc-typehints#589\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.5.2...3.6.0\"\u003ehttps://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.5.2...3.6.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.5.2\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePreserve type information from docstrings if no type annotation is present and parameter has default value. by \u003ca href=\"https://github.com/christianaguilera-foundry\"\u003e\u003ccode\u003e@​christianaguilera-foundry\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/pull/576\"\u003etox-dev/sphinx-autodoc-typehints#576\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/christianaguilera-foundry\"\u003e\u003ccode\u003e@​christianaguilera-foundry\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/pull/576\"\u003etox-dev/sphinx-autodoc-typehints#576\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.5.1...3.5.2\"\u003ehttps://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.5.1...3.5.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.5.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDeclare 3.14 support by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/pull/571\"\u003etox-dev/sphinx-autodoc-typehints#571\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.5.0...3.5.1\"\u003ehttps://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.5.0...3.5.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.5.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/c9ee0e399767a83909ac00a0f912d1031b6ab260\"\u003e\u003ccode\u003ec9ee0e3\u003c/code\u003e\u003c/a\u003e Fix compatibility with 9.1.0 (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/595\"\u003e#595\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/65ad3c43111a5eea6bbaec6803c9a1bcf78cdb6c\"\u003e\u003ccode\u003e65ad3c4\u003c/code\u003e\u003c/a\u003e Include metadata in type hints (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/594\"\u003e#594\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/3501b47ca738726f704f41e795caeaa5ff8123a9\"\u003e\u003ccode\u003e3501b47\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/593\"\u003e#593\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/136044f097480713d11083ad0a09d0c3f59b42aa\"\u003e\u003ccode\u003e136044f\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/592\"\u003e#592\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/9e7037ff0c9b26215bccd5434c46e42e7b56ed94\"\u003e\u003ccode\u003e9e7037f\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/591\"\u003e#591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/1289a796eae8e0fcf572071444f06841db352653\"\u003e\u003ccode\u003e1289a79\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/590\"\u003e#590\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/7abd95a25ac65bfabab68e1fcb71beb7b5d9f832\"\u003e\u003ccode\u003e7abd95a\u003c/code\u003e\u003c/a\u003e Use Sphinx 9 class interface (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/589\"\u003e#589\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/52114b2408a605fa53877a926b471cf317954c65\"\u003e\u003ccode\u003e52114b2\u003c/code\u003e\u003c/a\u003e Support Sphinx 9+ (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/587\"\u003e#587\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/78f49cd27cfb0954f20f275b90ade63e495bc370\"\u003e\u003ccode\u003e78f49cd\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/585\"\u003e#585\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/commit/00a035bdab3395becf1c6faf13c7a55a83243b81\"\u003e\u003ccode\u003e00a035b\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/tox-dev/sphinx-autodoc-typehints/issues/584\"\u003e#584\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tox-dev/sphinx-autodoc-typehints/compare/3.1.0...3.6.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-toolbox` from 4.1.0 to 4.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.1\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.1\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.1.0...v4.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/ansys/pyadditive/pull/865","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ansys%2Fpyadditive/issues/865","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/865/packages"}},{"old_version":"4.1.0","new_version":"4.1.1","update_type":"patch","path":null,"pr_created_at":"2026-01-02T11:18:58.000Z","version_change":"4.1.0 → 4.1.1","issue":{"uuid":"3776160708","node_id":"PR_kwDOEzpkRM67Rnvi","number":1668,"state":"closed","title":"Build(deps): Bump the minor-and-patch group across 1 directory with 3 updates","user":"dependabot[bot]","labels":["dependencies","python:uv"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-01-05T11:17:51.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-02T11:18:58.000Z","updated_at":"2026-01-05T11:17:52.000Z","time_to_close":259133,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Build(deps): Bump","group_name":"minor-and-patch","update_count":3,"packages":[{"name":"psutil","old_version":"7.1.3","new_version":"7.2.1","repository_url":"https://github.com/giampaolo/psutil"},{"name":"pillow","old_version":"12.0.0","new_version":"12.1.0","repository_url":"https://github.com/python-pillow/Pillow"},{"name":"sphinx-toolbox","old_version":"4.1.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps the minor-and-patch group with 3 updates in the / directory: [psutil](https://github.com/giampaolo/psutil), [pillow](https://github.com/python-pillow/Pillow) and [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox).\n\nUpdates `psutil` from 7.1.3 to 7.2.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/giampaolo/psutil/blob/master/HISTORY.rst\"\u003epsutil's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e7.2.1\u003c/h1\u003e\n\u003cp\u003e2025-12-29\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2699_, [FreeBSD], [NetBSD]: \u003ccode\u003eheap_info()\u003c/code\u003e_ does not detect small allocations\n(\u0026lt;= 1K). In order to fix that, we now flush internal jemalloc cache before\nfetching the metrics.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e7.2.0\u003c/h1\u003e\n\u003cp\u003e2025-12-23\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eEnhancements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e1275_: new \u003ccode\u003eheap_info()\u003c/code\u003e_ and \u003ccode\u003eheap_trim()\u003c/code\u003e_ functions, providing direct\naccess to the platform's native C heap allocator (glibc, mimalloc,\nlibmalloc). Useful to create tools to detect memory leaks.\u003c/li\u003e\n\u003cli\u003e2403_, [Linux]: publish wheels for Linux musl.\u003c/li\u003e\n\u003cli\u003e2680_: unit tests are no longer installed / part of the distribution. They\nnow live under \u003ccode\u003etests/\u003c/code\u003e instead of \u003ccode\u003epsutil/tests\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2684_, [FreeBSD], [critical]: compilation fails on FreeBSD 14 due to missing\ninclude.\u003c/li\u003e\n\u003cli\u003e2691_, [Windows]: fix memory leak in \u003ccode\u003enet_if_stats()\u003c/code\u003e_ due to missing\n\u003ccode\u003ePy_CLEAR\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eCompatibility notes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2680_: \u003ccode\u003eimport psutil.tests\u003c/code\u003e no longer works (but it was never documented to\nbegin with).\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/6130c19da2d01383befa0dfca2371a792f8881af\"\u003e\u003ccode\u003e6130c19\u003c/code\u003e\u003c/a\u003e Fix \u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2699\"\u003e#2699\u003c/a\u003e / BSD: flush internal jemalloc cache before returning metrics.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/899ee4efa9c1943de14a5818853b6dc9c019eb4f\"\u003e\u003ccode\u003e899ee4e\u003c/code\u003e\u003c/a\u003e Mention psleak\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/704e218db7da14e98a54f2aa9f93372d5900e0b4\"\u003e\u003ccode\u003e704e218\u003c/code\u003e\u003c/a\u003e Pre-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/1a946cfe738045cecf031222cd5078da21946af4\"\u003e\u003ccode\u003e1a946cf\u003c/code\u003e\u003c/a\u003e Take psleak from PYPI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/5085421cabed317d5e2f7164e6072b0be05ba4f1\"\u003e\u003ccode\u003e5085421\u003c/code\u003e\u003c/a\u003e Use external psleak module for memleak tests (\u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2698\"\u003e#2698\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/ac56e6ad0b7c08755a5542afdacb668ad164fd09\"\u003e\u003ccode\u003eac56e6a\u003c/code\u003e\u003c/a\u003e CI: don't cancel CI in progress on 1st failure\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/10fe3d5e9372a504167b0a4df440ab949c0410fe\"\u003e\u003ccode\u003e10fe3d5\u003c/code\u003e\u003c/a\u003e Merge branch 'master' of github.com:giampaolo/psutil\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/ba507bd26bbfe5d1bdc45d606c8979f9e6f632cb\"\u003e\u003ccode\u003eba507bd\u003c/code\u003e\u003c/a\u003e Fix various CI errors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/d5a1398f0860c04883ef881c4760f32d14ef4abf\"\u003e\u003ccode\u003ed5a1398\u003c/code\u003e\u003c/a\u003e Update cpu_count docs: clarify differences from os.cpu_count (\u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2696\"\u003e#2696\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/556158f55fc3b2f1271b48c66c46912323cf8bec\"\u003e\u003ccode\u003e556158f\u003c/code\u003e\u003c/a\u003e Refact memleak.py\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/giampaolo/psutil/compare/release-7.1.3...release-7.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pillow` from 12.0.0 to 12.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python-pillow/Pillow/releases\"\u003epillow's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e12.1.0\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://pillow.readthedocs.io/en/stable/releasenotes/12.1.0.html\"\u003ehttps://pillow.readthedocs.io/en/stable/releasenotes/12.1.0.html\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eDeprecations\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDeprecate getdata(), in favour of new get_flattened_data() \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9292\"\u003e#9292\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDocumentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSpecify APNG duration type when opening \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9368\"\u003e#9368\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eAdded release notes for \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9350\"\u003e#9350\u003c/a\u003e \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9366\"\u003e#9366\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdate ImageMorph documentation \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9349\"\u003e#9349\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eDocs: update major bump cadence \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9334\"\u003e#9334\u003c/a\u003e [\u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eAdd release notes for \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9070\"\u003e#9070\u003c/a\u003e \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9320\"\u003e#9320\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdated Ubuntu version \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9306\"\u003e#9306\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdate macOS tested Pillow versions \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9265\"\u003e#9265\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate harfbuzz to 12.3.0 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9355\"\u003e#9355\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdate xz to 5.8.2 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9343\"\u003e#9343\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdated libjpeg-turbo to 3.1.3 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9333\"\u003e#9333\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdated zlib-ng to 2.3.2 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9324\"\u003e#9324\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdated libpng to 1.6.53 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9325\"\u003e#9325\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdate actions/checkout action to v6 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9323\"\u003e#9323\u003c/a\u003e [@\u003ca href=\"https://github.com/apps/renovate\"\u003erenovate[bot]\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdate dependency mypy to v1.19.0 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9322\"\u003e#9322\u003c/a\u003e [@\u003ca href=\"https://github.com/apps/renovate\"\u003erenovate[bot]\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdated libpng to 1.6.51 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9305\"\u003e#9305\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdated brotli to 1.2.0 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9284\"\u003e#9284\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdate libimagequant to 4.4.1 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9301\"\u003e#9301\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdate zlib-ng to 2.3.1, except on manylinux2014 aarch64 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9312\"\u003e#9312\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdated harfbuzz to 12.2.0 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9289\"\u003e#9289\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eUpdate github-actions \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9277\"\u003e#9277\u003c/a\u003e [@\u003ca href=\"https://github.com/apps/renovate\"\u003erenovate[bot]\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTesting\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eReplace pre-commit with prek \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9360\"\u003e#9360\u003c/a\u003e [\u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eTest PyQt6 on Python 3.14 on Windows \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9353\"\u003e#9353\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eTest 32-bit Windows on Windows Server 2022 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9345\"\u003e#9345\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eCorrect variable type \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9335\"\u003e#9335\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eResourceWarning\u003c/code\u003es in \u003ccode\u003eselftest.py\u003c/code\u003e \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9332\"\u003e#9332\u003c/a\u003e [\u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eFix testing good P mode BMP images \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9319\"\u003e#9319\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eTest Python 3.15 pre-release \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9331\"\u003e#9331\u003c/a\u003e [\u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eTest ImageFont.ImageFont, in case freetype2 is not supported \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9287\"\u003e#9287\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eAdd Fedora 43 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9290\"\u003e#9290\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eRemove Fedora 41 \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9260\"\u003e#9260\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eType hints\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd ImageFile context manager \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9367\"\u003e#9367\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\u003c/code\u003e\u003c/a\u003e]\u003c/li\u003e\n\u003cli\u003eAssert fp is not None \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/8617\"\u003e#8617\u003c/a\u003e [\u003ca href=\"https://github.com/radarhere\"\u003e\u003ccode\u003e@​radarhere\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/python-pillow/Pillow/commit/46f45f674d47b5d8bc54230dda8fe9e214598b87\"\u003e\u003ccode\u003e46f45f6\u003c/code\u003e\u003c/a\u003e 12.1.0 version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/c9ac097edb5594f63c40acd9afe6802547200379\"\u003e\u003ccode\u003ec9ac097\u003c/code\u003e\u003c/a\u003e Simplify band splitting (\u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9291\"\u003e#9291\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/3baedf264804d199bc19458d11bcff02ce7598eb\"\u003e\u003ccode\u003e3baedf2\u003c/code\u003e\u003c/a\u003e Deprecate getdata(), in favour of new get_flattened_data() (\u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9292\"\u003e#9292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/b51a0366852c1d519d108dfec8fc2d738cd8080f\"\u003e\u003ccode\u003eb51a036\u003c/code\u003e\u003c/a\u003e Specify APNG duration type when opening (\u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9368\"\u003e#9368\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/8d08e31533065b623399a54bc92b39a756599ad4\"\u003e\u003ccode\u003e8d08e31\u003c/code\u003e\u003c/a\u003e Add release notes for \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9348\"\u003e#9348\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9369\"\u003e#9369\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/432707ea810ae619e2a9e4a9737c169cacaa8eda\"\u003e\u003ccode\u003e432707e\u003c/code\u003e\u003c/a\u003e Added release notes for \u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9348\"\u003e#9348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/2d589107fb3a4aba8389932a65ff771bf9b4deb1\"\u003e\u003ccode\u003e2d58910\u003c/code\u003e\u003c/a\u003e Specify APNG duration type when opening\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/8dee8dd5ba4e592409db1a7fc11a61a51ba30f04\"\u003e\u003ccode\u003e8dee8dd\u003c/code\u003e\u003c/a\u003e Add ImageFile context manager (\u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9367\"\u003e#9367\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/b2d9bc3c766a9743d23a296a503ea2712cdc6745\"\u003e\u003ccode\u003eb2d9bc3\u003c/code\u003e\u003c/a\u003e Support saving APNG float durations (\u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9365\"\u003e#9365\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-pillow/Pillow/commit/f130c10a9c07bc4a4fe793dc3dabb3fe8bd8a1bd\"\u003e\u003ccode\u003ef130c10\u003c/code\u003e\u003c/a\u003e Allow 1 mode images in MorphOp (\u003ca href=\"https://redirect.github.com/python-pillow/Pillow/issues/9348\"\u003e#9348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python-pillow/Pillow/compare/12.0.0...12.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-toolbox` from 4.1.0 to 4.1.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.1.0...v4.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/LedFx/LedFx/pull/1668","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/LedFx%2FLedFx/issues/1668","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1668/packages"}},{"old_version":"4.1.0","new_version":"4.1.1","update_type":"patch","path":null,"pr_created_at":"2026-01-01T16:17:46.000Z","version_change":"4.1.0 → 4.1.1","issue":{"uuid":"3774863325","node_id":"PR_kwDOCVCLc867NjRz","number":135,"state":"closed","title":"Bump sphinx-toolbox from 4.1.0 to 4.1.1","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-01T16:18:51.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-01T16:17:46.000Z","updated_at":"2026-01-01T16:19:02.000Z","time_to_close":65,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.1.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.1.0 to 4.1.1.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.1.0...v4.1.1\"\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=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.1.0\u0026new-version=4.1.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/Senzing/awesome/pull/135","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Senzing%2Fawesome/issues/135","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/135/packages"}},{"old_version":"4.1.0","new_version":"4.1.1","update_type":"patch","path":null,"pr_created_at":"2026-01-01T16:04:16.000Z","version_change":"4.1.0 → 4.1.1","issue":{"uuid":"3774846884","node_id":"PR_kwDOEVC2q867Nf6s","number":134,"state":"closed","title":"Bump sphinx-toolbox from 4.1.0 to 4.1.1","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-01T16:05:21.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-01T16:04:16.000Z","updated_at":"2026-01-01T16:05:33.000Z","time_to_close":65,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.1.0","new_version":"4.1.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.1.0 to 4.1.1.\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/171728fe1b7a6f33fce45bf1f4d03de9f6688a6d\"\u003e\u003ccode\u003e171728f\u003c/code\u003e\u003c/a\u003e Bump version v4.1.0 -\u0026gt; v4.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ef325995bbfcff6365ac3ca7bdbca430cfe78944\"\u003e\u003ccode\u003eef32599\u003c/code\u003e\u003c/a\u003e Cap ruamel.yaml as layer versions won't build (can't find build backend).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/56e0d127811b98933c5ed8101369b9c8f8675a19\"\u003e\u003ccode\u003e56e0d12\u003c/code\u003e\u003c/a\u003e collections.abc.Callable needs to be a :py:class:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/31ebc6e4feffc69c8c391d3205e451eaf0c570ad\"\u003e\u003ccode\u003e31ebc6e\u003c/code\u003e\u003c/a\u003e [repo-helper] Configuration Update (\u003ca href=\"https://redirect.github.com/sphinx-toolbox/sphinx-toolbox/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.1.0...v4.1.1\"\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=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.1.0\u0026new-version=4.1.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/Senzing/governor-postgresql-transaction-id/pull/134","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Senzing%2Fgovernor-postgresql-transaction-id/issues/134","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/134/packages"}},{"old_version":"4.0.0","new_version":"4.1.0","update_type":"minor","path":null,"pr_created_at":"2025-12-15T04:23:43.000Z","version_change":"4.0.0 → 4.1.0","issue":{"uuid":"3728635949","node_id":"PR_kwDOMftbFc641A6J","number":187,"state":"closed","title":"Bump the py-updates group across 1 directory with 78 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-12T04:36:49.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-15T04:23:43.000Z","updated_at":"2026-01-12T04:36:50.000Z","time_to_close":2419986,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"py-updates","update_count":78,"packages":[{"name":"awscli","old_version":"1.40.17","new_version":"1.43.15","repository_url":"https://github.com/aws/aws-cli"},{"name":"polars","old_version":"1.28.1","new_version":"1.36.1","repository_url":"https://github.com/pola-rs/polars"},{"name":"requests","old_version":"2.32.3","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"biopython","old_version":"1.85","new_version":"1.86","repository_url":"https://github.com/biopython/biopython"},{"name":"boto3","old_version":"1.38.18","new_version":"1.42.9","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.38.18","new_version":"1.42.9","repository_url":"https://github.com/boto/botocore"},{"name":"certifi","old_version":"2025.4.26","new_version":"2025.11.12","repository_url":"https://github.com/certifi/python-certifi"},{"name":"charset-normalizer","old_version":"3.4.2","new_version":"3.4.4","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"cloudpathlib","old_version":"0.21.1","new_version":"0.23.0","repository_url":"https://github.com/drivendataorg/cloudpathlib"},{"name":"docutils","old_version":"0.19","new_version":"0.22.3","repository_url":"https://github.com/rtfd/recommonmark"},{"name":"idna","old_version":"3.10","new_version":"3.11","repository_url":"https://github.com/kjd/idna"},{"name":"jellyfish","old_version":"1.2.0","new_version":"1.2.1"},{"name":"markdown-it-py","old_version":"3.0.0","new_version":"4.0.0","repository_url":"https://github.com/executablebooks/markdown-it-py"},{"name":"numpy","old_version":"2.2.5","new_version":"2.3.5","repository_url":"https://github.com/numpy/numpy"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"pyarrow","old_version":"20.0.0","new_version":"22.0.0","repository_url":"https://github.com/apache/arrow"},{"name":"pygments","old_version":"2.19.1","new_version":"2.19.2","repository_url":"https://github.com/pygments/pygments"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"rich","old_version":"14.0.0","new_version":"14.2.0","repository_url":"https://github.com/Textualize/rich"},{"name":"rsa","old_version":"4.7.2","new_version":"4.9.1","repository_url":"https://github.com/sybrenstuvel/python-rsa"},{"name":"s3transfer","old_version":"0.12.0","new_version":"0.16.0","repository_url":"https://github.com/boto/s3transfer"},{"name":"structlog","old_version":"25.3.0","new_version":"25.5.0","repository_url":"https://github.com/hynek/structlog"},{"name":"tzdata","old_version":"2025.2","new_version":"2025.3","repository_url":"https://github.com/python/tzdata"},{"name":"urllib3","old_version":"2.4.0","new_version":"2.6.2","repository_url":"https://github.com/urllib3/urllib3"},{"name":"zstandard","old_version":"0.23.0","new_version":"0.25.0","repository_url":"https://github.com/indygreg/python-zstandard"},{"name":"boto3-stubs","old_version":"1.38.18","new_version":"1.42.9","repository_url":"https://github.com/youtype/mypy_boto3_builder"},{"name":"botocore-stubs","old_version":"1.38.18","new_version":"1.42.9","repository_url":"https://github.com/youtype/botocore-stubs"},{"name":"cffi","old_version":"1.17.1","new_version":"2.0.0","repository_url":"https://github.com/python-cffi/cffi"},{"name":"coverage","old_version":"7.8.0","new_version":"7.13.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cryptography","old_version":"44.0.3","new_version":"46.0.3","repository_url":"https://github.com/pyca/cryptography"},{"name":"freezegun","old_version":"1.5.1","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"iniconfig","old_version":"2.1.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"markupsafe","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/pallets/markupsafe"},{"name":"moto","old_version":"5.1.4","new_version":"5.1.18","repository_url":"https://github.com/getmoto/moto"},{"name":"mypy","old_version":"1.15.0","new_version":"1.19.0","repository_url":"https://github.com/python/mypy"},{"name":"mypy-boto3-s3","old_version":"1.38.0","new_version":"1.42.3","repository_url":"https://github.com/youtype/mypy_boto3_builder"},{"name":"pycparser","old_version":"2.22","new_version":"2.23","repository_url":"https://github.com/eliben/pycparser"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"responses","old_version":"0.25.7","new_version":"0.25.8","repository_url":"https://github.com/getsentry/responses"},{"name":"ruff","old_version":"0.11.10","new_version":"0.14.9","repository_url":"https://github.com/astral-sh/ruff"},{"name":"types-awscrt","old_version":"0.27.2","new_version":"0.30.0","repository_url":"https://github.com/youtype/types-awscrt"},{"name":"types-requests","old_version":"2.32.0.20250515","new_version":"2.32.4.20250913","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-s3transfer","old_version":"0.12.0","new_version":"0.16.0","repository_url":"https://github.com/youtype/types-s3transfer"},{"name":"typing-extensions","old_version":"4.13.2","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"werkzeug","old_version":"3.1.3","new_version":"3.1.4","repository_url":"https://github.com/pallets/werkzeug"},{"name":"xmltodict","old_version":"0.14.2","new_version":"1.0.2","repository_url":"https://github.com/martinblech/xmltodict"},{"name":"alabaster","old_version":"0.7.16","new_version":"1.0.0","repository_url":"https://github.com/sphinx-doc/alabaster"},{"name":"anyio","old_version":"4.9.0","new_version":"4.12.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"beautifulsoup4","old_version":"4.13.4","new_version":"4.14.3"},{"name":"cachecontrol","old_version":"0.14.3","new_version":"0.14.4","repository_url":"https://github.com/psf/cachecontrol"},{"name":"click","old_version":"8.2.0","new_version":"8.3.1","repository_url":"https://github.com/pallets/click"},{"name":"contourpy","old_version":"1.3.2","new_version":"1.3.3","repository_url":"https://github.com/contourpy/contourpy"},{"name":"filelock","old_version":"3.18.0","new_version":"3.20.0","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"fonttools","old_version":"4.58.0","new_version":"4.61.1","repository_url":"https://github.com/fonttools/fonttools"},{"name":"furo","old_version":"2024.8.6","new_version":"2025.9.25","repository_url":"https://github.com/pradyunsg/furo"},{"name":"kiwisolver","old_version":"1.4.8","new_version":"1.4.9","repository_url":"https://github.com/nucleic/kiwi"},{"name":"matplotlib","old_version":"3.10.3","new_version":"3.10.8","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mdit-py-plugins","old_version":"0.4.2","new_version":"0.5.0","repository_url":"https://github.com/executablebooks/mdit-py-plugins"},{"name":"more-itertools","old_version":"10.7.0","new_version":"10.8.0","repository_url":"https://github.com/more-itertools/more-itertools"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.1.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"pillow","old_version":"11.2.1","new_version":"12.0.0","repository_url":"https://github.com/python-pillow/Pillow"},{"name":"platformdirs","old_version":"4.3.8","new_version":"4.5.1","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pyparsing","old_version":"3.2.3","new_version":"3.2.5","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"ruamel-yaml","old_version":"0.18.10","new_version":"0.18.16"},{"name":"ruamel-yaml-clib","old_version":"0.2.12","new_version":"0.2.15"},{"name":"soupsieve","old_version":"2.7","new_version":"2.8","repository_url":"https://github.com/facelessuser/soupsieve"},{"name":"sphinx","old_version":"7.3.7","new_version":"9.0.4","repository_url":"https://github.com/sphinx-doc/sphinx"},{"name":"sphinx-autobuild","old_version":"2024.10.3","new_version":"2025.8.25","repository_url":"https://github.com/sphinx-doc/sphinx-autobuild"},{"name":"sphinx-autodoc-typehints","old_version":"2.3.0","new_version":"3.6.0","repository_url":"https://github.com/tox-dev/sphinx-autodoc-typehints"},{"name":"sphinx-jinja2-compat","old_version":"0.3.0","new_version":"0.4.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-jinja2-compat"},{"name":"sphinx-prompt","old_version":"1.8.0","new_version":"1.10.2","repository_url":"https://github.com/sbrunner/sphinx-prompt"},{"name":"sphinx-tabs","old_version":"3.4.5","new_version":"3.4.7","repository_url":"https://github.com/executablebooks/sphinx-tabs"},{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.0","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"},{"name":"sphinxext-opengraph","old_version":"0.10.0","new_version":"0.13.0","repository_url":"https://github.com/sphinx-doc/sphinxext-opengraph"},{"name":"starlette","old_version":"0.46.2","new_version":"0.50.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"uvicorn","old_version":"0.34.2","new_version":"0.38.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"watchfiles","old_version":"1.0.5","new_version":"1.1.1","repository_url":"https://github.com/samuelcolvin/watchfiles"}],"path":null,"ecosystem":"pip"},"body":"Bumps the py-updates group with 78 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [awscli](https://github.com/aws/aws-cli) | `1.40.17` | `1.43.15` |\n| [polars](https://github.com/pola-rs/polars) | `1.28.1` | `1.36.1` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.32.5` |\n| [biopython](https://github.com/biopython/biopython) | `1.85` | `1.86` |\n| [boto3](https://github.com/boto/boto3) | `1.38.18` | `1.42.9` |\n| [botocore](https://github.com/boto/botocore) | `1.38.18` | `1.42.9` |\n| [certifi](https://github.com/certifi/python-certifi) | `2025.4.26` | `2025.11.12` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.2` | `3.4.4` |\n| [cloudpathlib](https://github.com/drivendataorg/cloudpathlib) | `0.21.1` | `0.23.0` |\n| [docutils](https://github.com/rtfd/recommonmark) | `0.19` | `0.22.3` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.11` |\n| [jellyfish](https://jellyfish.jpt.sh/) | `1.2.0` | `1.2.1` |\n| [markdown-it-py](https://github.com/executablebooks/markdown-it-py) | `3.0.0` | `4.0.0` |\n| [numpy](https://github.com/numpy/numpy) | `2.2.5` | `2.3.5` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [pyarrow](https://github.com/apache/arrow) | `20.0.0` | `22.0.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.19.1` | `2.19.2` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [rich](https://github.com/Textualize/rich) | `14.0.0` | `14.2.0` |\n| [rsa](https://github.com/sybrenstuvel/python-rsa) | `4.7.2` | `4.9.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.12.0` | `0.16.0` |\n| [structlog](https://github.com/hynek/structlog) | `25.3.0` | `25.5.0` |\n| [tzdata](https://github.com/python/tzdata) | `2025.2` | `2025.3` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.4.0` | `2.6.2` |\n| [zstandard](https://github.com/indygreg/python-zstandard) | `0.23.0` | `0.25.0` |\n| [boto3-stubs](https://github.com/youtype/mypy_boto3_builder) | `1.38.18` | `1.42.9` |\n| [botocore-stubs](https://github.com/youtype/botocore-stubs) | `1.38.18` | `1.42.9` |\n| [cffi](https://github.com/python-cffi/cffi) | `1.17.1` | `2.0.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.8.0` | `7.13.0` |\n| [cryptography](https://github.com/pyca/cryptography) | `44.0.3` | `46.0.3` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.1` | `1.5.5` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.1.0` | `2.3.0` |\n| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` |\n| [moto](https://github.com/getmoto/moto) | `5.1.4` | `5.1.18` |\n| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.19.0` |\n| [mypy-boto3-s3](https://github.com/youtype/mypy_boto3_builder) | `1.38.0` | `1.42.3` |\n| [pycparser](https://github.com/eliben/pycparser) | `2.22` | `2.23` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.2` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [responses](https://github.com/getsentry/responses) | `0.25.7` | `0.25.8` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.10` | `0.14.9` |\n| [types-awscrt](https://github.com/youtype/types-awscrt) | `0.27.2` | `0.30.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.32.0.20250515` | `2.32.4.20250913` |\n| [types-s3transfer](https://github.com/youtype/types-s3transfer) | `0.12.0` | `0.16.0` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.13.2` | `4.15.0` |\n| [werkzeug](https://github.com/pallets/werkzeug) | `3.1.3` | `3.1.4` |\n| [xmltodict](https://github.com/martinblech/xmltodict) | `0.14.2` | `1.0.2` |\n| [alabaster](https://github.com/sphinx-doc/alabaster) | `0.7.16` | `1.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.9.0` | `4.12.0` |\n| [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) | `4.13.4` | `4.14.3` |\n| [cachecontrol](https://github.com/psf/cachecontrol) | `0.14.3` | `0.14.4` |\n| [click](https://github.com/pallets/click) | `8.2.0` | `8.3.1` |\n| [contourpy](https://github.com/contourpy/contourpy) | `1.3.2` | `1.3.3` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.18.0` | `3.20.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.58.0` | `4.61.1` |\n| [furo](https://github.com/pradyunsg/furo) | `2024.8.6` | `2025.9.25` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.8` | `1.4.9` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.3` | `3.10.8` |\n| [mdit-py-plugins](https://github.com/executablebooks/mdit-py-plugins) | `0.4.2` | `0.5.0` |\n| [more-itertools](https://github.com/more-itertools/more-itertools) | `10.7.0` | `10.8.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.1.2` |\n| [pillow](https://github.com/python-pillow/Pillow) | `11.2.1` | `12.0.0` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.8` | `4.5.1` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.3` | `3.2.5` |\n| ruamel-yaml | `0.18.10` | `0.18.16` |\n| ruamel-yaml-clib | `0.2.12` | `0.2.15` |\n| [soupsieve](https://github.com/facelessuser/soupsieve) | `2.7` | `2.8` |\n| [sphinx](https://github.com/sphinx-doc/sphinx) | `7.3.7` | `9.0.4` |\n| [sphinx-autobuild](https://github.com/sphinx-doc/sphinx-autobuild) | `2024.10.3` | `2025.8.25` |\n| [sphinx-autodoc-typehints](https://github.com/tox-dev/sphinx-autodoc-typehints) | `2.3.0` | `3.6.0` |\n| [sphinx-jinja2-compat](https://github.com/sphinx-toolbox/sphinx-jinja2-compat) | `0.3.0` | `0.4.1` |\n| [sphinx-prompt](https://github.com/sbrunner/sphinx-prompt) | `1.8.0` | `1.10.2` |\n| [sphinx-tabs](https://github.com/executablebooks/sphinx-tabs) | `3.4.5` | `3.4.7` |\n| [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) | `4.0.0` | `4.1.0` |\n| [sphinxext-opengraph](https://github.com/sphinx-doc/sphinxext-opengraph) | `0.10.0` | `0.13.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.46.2` | `0.50.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.34.2` | `0.38.0` |\n| [watchfiles](https://github.com/samuelcolvin/watchfiles) | `1.0.5` | `1.1.1` |\n\n\nUpdates `awscli` from 1.40.17 to 1.43.15\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/7e0151487fe30379b8940f3f7438c9d36d8b0f26\"\u003e\u003ccode\u003e7e01514\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.15'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/72f90311e9cffa76ab1de14f261451127644e363\"\u003e\u003ccode\u003e72f9031\u003c/code\u003e\u003c/a\u003e Bumping version to 1.43.15\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/3edc753acee17c4907518c3b519cb50ce8de0ee7\"\u003e\u003ccode\u003e3edc753\u003c/code\u003e\u003c/a\u003e Update changelog based on model updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/70bb5d4161f5aaf56b4b4250160a49b425147484\"\u003e\u003ccode\u003e70bb5d4\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.14'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/7b40bb1b7eee75835a29888583bf10f9571a6bb1\"\u003e\u003ccode\u003e7b40bb1\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.14' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/acfdde6f0c0731f8b861788988f0a42504cbcdd9\"\u003e\u003ccode\u003eacfdde6\u003c/code\u003e\u003c/a\u003e Bumping version to 1.43.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/74dbdfdc03068804f909da20b8b9e546a3fc3bc3\"\u003e\u003ccode\u003e74dbdfd\u003c/code\u003e\u003c/a\u003e Update changelog based on model updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/f1a04b95e91bec439313be76ac1a9461b5a8de49\"\u003e\u003ccode\u003ef1a04b9\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Implement upgrade debug mode\u0026quot; (\u003ca href=\"https://redirect.github.com/aws/aws-cli/issues/9913\"\u003e#9913\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/c21885e81e3af853e68ebb5561d0fbb65eddecb9\"\u003e\u003ccode\u003ec21885e\u003c/code\u003e\u003c/a\u003e Implement upgrade debug mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/c3f45696e1bef325dec4bcacf633ad5e12e93ae1\"\u003e\u003ccode\u003ec3f4569\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.13'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-cli/compare/1.40.17...1.43.15\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `polars` from 1.28.1 to 1.36.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pola-rs/polars/releases\"\u003epolars's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePython Polars 1.36.1\u003c/h2\u003e\n\u003ch2\u003e🚀 Performance improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTune partitioned sink_parquet cloud performance (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25687\"\u003e#25687\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e✨ Enhancements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow creation of \u003ccode\u003eObject\u003c/code\u003e literal (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25690\"\u003e#25690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDon't collect schema in SQL union processing (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25675\"\u003e#25675\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐞 Bug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDon't invalidate node in cluster-with-columns (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25714\"\u003e#25714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMove \u003ccode\u003eboto3\u003c/code\u003e extra from s3fs in dev requirements (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25667\"\u003e#25667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd missing type stubs for \u003ccode\u003ebin_slice\u003c/code\u003e, \u003ccode\u003ebin_head\u003c/code\u003e, and \u003ccode\u003ebin_tail\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25697\"\u003e#25697\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBinary slice methods missing from Series and docs (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25683\"\u003e#25683\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMix-up of variable_name/value_name in unpivot (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25685\"\u003e#25685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInvalid usage of \u003ccode\u003edrop_first\u003c/code\u003e in \u003ccode\u003eto_dummies\u003c/code\u003e when nulls present (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25435\"\u003e#25435\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📖 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix typos in Excel and Pandas migration guides (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25709\"\u003e#25709\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u0026quot;right\u0026quot; to \u003ccode\u003ehow\u003c/code\u003e options in \u003ccode\u003ejoin()\u003c/code\u003e docstrings (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25678\"\u003e#25678\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠️ Other improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove Object \u003ccode\u003elit\u003c/code\u003e fix earlier in the function (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25713\"\u003e#25713\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unused decimal file (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25701\"\u003e#25701\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMove \u003ccode\u003eboto3\u003c/code\u003e extra from s3fs in dev requirements (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25667\"\u003e#25667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpgrade to latest version of \u003ccode\u003esqlparser-rs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25673\"\u003e#25673\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate slab to version without RUSTSEC (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25686\"\u003e#25686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix typo (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25684\"\u003e#25684\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThank you to all our contributors for making this release possible!\n\u003ca href=\"https://github.com/AndreaBozzo\"\u003e\u003ccode\u003e@​AndreaBozzo\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/Kevin-Patyk\"\u003e\u003ccode\u003e@​Kevin-Patyk\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/alexander-beedie\"\u003e\u003ccode\u003e@​alexander-beedie\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dsprenkels\"\u003e\u003ccode\u003e@​dsprenkels\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/jamesfricker\"\u003e\u003ccode\u003e@​jamesfricker\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mcrumiller\"\u003e\u003ccode\u003e@​mcrumiller\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/nameexhaustion\"\u003e\u003ccode\u003e@​nameexhaustion\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/orlp\"\u003e\u003ccode\u003e@​orlp\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/ritchie46\"\u003e\u003ccode\u003e@​ritchie46\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePython Polars 1.36.0\u003c/h2\u003e\n\u003cp\u003e🏆 Highlights\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd Extension types (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25322\"\u003e#25322\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e✨ Enhancements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd SQL support for the QUALIFY clause (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25652\"\u003e#25652\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd bin.slice(), bin.head(), and bin.tail() methods (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25647\"\u003e#25647\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd SQL syntax support for CROSS JOIN UNNEST(col) (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25623\"\u003e#25623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd separate env var to log tracked metrics (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25586\"\u003e#25586\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eExpose fields for generating physical plan visualization data (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25562\"\u003e#25562\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow pl.Object in pivot value (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25533\"\u003e#25533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMinor improvement for as_struct repr (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25529\"\u003e#25529\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTemporal quantile in rolling context (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25479\"\u003e#25479\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/pola-rs/polars/commit/2a151c10fa76790711c2f75e6d012dd69c627ddd\"\u003e\u003ccode\u003e2a151c1\u003c/code\u003e\u003c/a\u003e Python Polars 1.36.1 (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25715\"\u003e#25715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/b394b2d15e502e46de0b817d4033b4cb5731a765\"\u003e\u003ccode\u003eb394b2d\u003c/code\u003e\u003c/a\u003e fix: Don't invalidate node in cluster-with-columns (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25714\"\u003e#25714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/e5baff43073c8024ffa0e0fce0fc45be5f3cb635\"\u003e\u003ccode\u003ee5baff4\u003c/code\u003e\u003c/a\u003e refactor: Move Object \u003ccode\u003elit\u003c/code\u003e fix earlier in the function (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25713\"\u003e#25713\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/ee79be36ef280975c332b5c51f13d14f10349bd0\"\u003e\u003ccode\u003eee79be3\u003c/code\u003e\u003c/a\u003e docs: Fix typos in Excel and Pandas migration guides (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25709\"\u003e#25709\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/0150a1849d25c04ac35fe469228d358c9388b4c0\"\u003e\u003ccode\u003e0150a18\u003c/code\u003e\u003c/a\u003e chore: Remove unused decimal file (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25701\"\u003e#25701\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/9dd724b647a77159477318077a03c9ece10e31b3\"\u003e\u003ccode\u003e9dd724b\u003c/code\u003e\u003c/a\u003e fix(python): Remove \u003ccode\u003eboto3\u003c/code\u003e extra from s3fs (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25667\"\u003e#25667\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/d8cdf895f9b9a1110fa053400d3c16dd5b241063\"\u003e\u003ccode\u003ed8cdf89\u003c/code\u003e\u003c/a\u003e feat: Allow creation of \u003ccode\u003eObject\u003c/code\u003e literal (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25690\"\u003e#25690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/30699577be723eccedb30779f73076b7f22b6fd5\"\u003e\u003ccode\u003e3069957\u003c/code\u003e\u003c/a\u003e fix(python): Add missing type stubs for \u003ccode\u003ebin_slice\u003c/code\u003e, \u003ccode\u003ebin_head\u003c/code\u003e, and `bin_tai...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/729e5750e9d5005da953a83828366570209ba05f\"\u003e\u003ccode\u003e729e575\u003c/code\u003e\u003c/a\u003e chore: Upgrade to latest version of \u003ccode\u003esqlparser-rs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25673\"\u003e#25673\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/b83a2595b39deebafae13ba7d0b0fcc28f971e98\"\u003e\u003ccode\u003eb83a259\u003c/code\u003e\u003c/a\u003e chore: Update slab to version without RUSTSEC (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25686\"\u003e#25686\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pola-rs/polars/compare/py-1.28.1...py-1.36.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.3 to 2.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/releases\"\u003erequests's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.32.5\u003c/h2\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b25c87d7cb8d6a18a37fa12442b5f883f9e41741\"\u003e\u003ccode\u003eb25c87d\u003c/code\u003e\u003c/a\u003e v2.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/131e506079d97606e4214cc4d87b780ac478de7a\"\u003e\u003ccode\u003e131e506\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/7010\"\u003e#7010\u003c/a\u003e from psf/dependabot/github_actions/actions/checkout-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b336cb2bc616a63a93c6470c558fc1f576b77f90\"\u003e\u003ccode\u003eb336cb2\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/46e939b5525d9c72b677340985582b04b128478a\"\u003e\u003ccode\u003e46e939b\u003c/code\u003e\u003c/a\u003e Update publish workflow to use \u003ccode\u003eartifact-id\u003c/code\u003e instead of \u003ccode\u003ename\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4b9c546aa3f35fca6ca24945376fe7462bb007c4\"\u003e\u003ccode\u003e4b9c546\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6999\"\u003e#6999\u003c/a\u003e from psf/dependabot/github_actions/step-security/har...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7618dbef01d333f23ba4b9c4d97397b06dd89cb6\"\u003e\u003ccode\u003e7618dbe\u003c/code\u003e\u003c/a\u003e Bump step-security/harden-runner from 2.12.0 to 2.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2edca11103c1c27dd8b572dab544b7f48cf3b446\"\u003e\u003ccode\u003e2edca11\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 and drop support for Python 3.8 (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6993\"\u003e#6993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/fec96cd5976ad763e45bac9a033d62cca1877a00\"\u003e\u003ccode\u003efec96cd\u003c/code\u003e\u003c/a\u003e Update Makefile rules (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6996\"\u003e#6996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/d58d8aa2f45c3575268d6d5250745ef69f9cf8b7\"\u003e\u003ccode\u003ed58d8aa\u003c/code\u003e\u003c/a\u003e docs: clarify timeout parameter uses seconds in Session.request (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6994\"\u003e#6994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/91a3eabd3dcc4d7f36dd8249e4777a90ef9b4305\"\u003e\u003ccode\u003e91a3eab\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.5 to 3.29.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `biopython` from 1.85 to 1.86\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/biopython/biopython/blob/master/NEWS.rst\"\u003ebiopython's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e28 October 2025: Biopython 1.86\u003c/h1\u003e\n\u003cp\u003eThis release of Biopython supports Python 3.10, 3.11, 3.12, 3.13 and 3.14.  It\nhas also been tested on PyPy3.10 v7.3.19.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.SearchIO\u003c/code\u003e now supports parsing the tabular and plain text output of\n\u003ccode\u003eInfernal \u0026lt;http://eddylab.org/infernal/\u0026gt;\u003c/code\u003e (v1.0.0+) RNA search tool. The\nformat names are \u003ccode\u003einfernal-tab\u003c/code\u003e and \u003ccode\u003einfernal-text\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe default value of the gap score of a \u003ccode\u003ePairwiseAligner\u003c/code\u003e object was changed\nin this release.  Previously, for consistency with \u003ccode\u003eBio.pairwise2\u003c/code\u003e, the\ndefault value for gap score was 0.  However, this means that a mismatch, an\ninsertion followed by a deletion, and a deletion followed by an insertion all\nget assigned a score of 0.  The aligner then finds a large number of alignments\nthat are logically the same, but have trivial differences between them.  For\nexample, aligning AAACAAA to AAAGAAA previously yielded the following three\nalignments, all with score 6::\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e AAACAAA        AAAC-AAA        AAA-CAAA\n AAAGAAA        AAA-GAAA        AAAG-AAA\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eWith the new default parameter for the gap score, only the first alignment is\nreturned.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.PDBIO\u003c/code\u003e now ensures that b-factor values are always at most 6 characters to\nensure that we do not violate the wwPDB specification. This should not have an impact\non the majority of uses, as b-factor values are generally small (less than 100). When\n1000 \u0026lt;= b-factor \u0026lt; 10_000, the value is rounded to a single decimal place. When,\n10_000 \u0026lt;= b-factor \u0026lt; 999_999, the value is rounded to zero decimal places. Values\nabove 999_999 are now clamped. The justification for this is the rise in the b-factor\nfield being used for additional metadata, typically from computational tools.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.Align\u003c/code\u003e now provides a method \u003ccode\u003eAlignment.from_alignments_with_same_reference\u003c/code\u003e\nto construct a multiple sequence alignment from a collection of alignments\nthat share the same reference sequence.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.PDBIO\u003c/code\u003e will now raise module specific warnings:\n\u003ccode\u003eBio.PDB.PDBExceptions.PDBIOWarning\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.SCADIO\u003c/code\u003e now supports object selection by color in the OpenSCAD\noutput file.  This enables generation of separate STL files for each color for\nprinting protein structures on multi-material 3D printers.\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eiplotx\u003c/code\u003e library is mentioned in the Tutorial as an option to visualise\ntrees using complex style options.\u003c/p\u003e\n\u003cp\u003eMany thanks to the Biopython developers and community for making this release\npossible, especially the following contributors:\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\u003eSee full diff in \u003ca href=\"https://github.com/biopython/biopython/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.18 to 1.42.9\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/70183cf04d296effa96d26f65daea72f808d0b2b\"\u003e\u003ccode\u003e70183cf\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.9'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/02ef27f5aa6a77df183e48cba4814479b5b5d7bc\"\u003e\u003ccode\u003e02ef27f\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/b4821c1cb31d0eb4c6130e85dc4179789888a8e8\"\u003e\u003ccode\u003eb4821c1\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/8c12c9dc72660013e2f52510eab3b3cd62d7ddeb\"\u003e\u003ccode\u003e8c12c9d\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.8'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/39f484c1d95e4751a9953d44bad534ec7030c1a8\"\u003e\u003ccode\u003e39f484c\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.8' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/3c5c225507c6a753b1596d48c5e9f9586eb2729a\"\u003e\u003ccode\u003e3c5c225\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/d8c15ca79b64aeed2f38123a2c20783721db1bdb\"\u003e\u003ccode\u003ed8c15ca\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/e70c5a2b505631dc167de946d4717dcf7b422a67\"\u003e\u003ccode\u003ee70c5a2\u003c/code\u003e\u003c/a\u003e Use f-strings instead of string concatenation (\u003ca href=\"https://redirect.github.com/boto/boto3/issues/4675\"\u003e#4675\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/2295d41097ef3fbdef837df4118ec85c04d48f6e\"\u003e\u003ccode\u003e2295d41\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.7'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/f2bd57cd0c3e22a5ca7eefbfca358de247ec8b57\"\u003e\u003ccode\u003ef2bd57c\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.7' into develop\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.18...1.42.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `botocore` from 1.38.18 to 1.42.9\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/fefef10ea7908e50bb9a7e5ec1969cc5d745d9d5\"\u003e\u003ccode\u003efefef10\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.9'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/2bdbadbfc0bbd216359c329f0ce082ef383b5b26\"\u003e\u003ccode\u003e2bdbadb\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/fd387744345f7e56f7f06845031e73cd21b34ef9\"\u003e\u003ccode\u003efd38774\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/bd5f2d844a8ca5cad817820944df4f45184fa0ea\"\u003e\u003ccode\u003ebd5f2d8\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/517a891083b3fbf4040041ee42a82e67e67e8c0a\"\u003e\u003ccode\u003e517a891\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.8'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/02205a47fcd51a60ae453c1da4eefa8f509b824b\"\u003e\u003ccode\u003e02205a4\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.8' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/6290d04346193a26531d806bb6a8613a23d3dd35\"\u003e\u003ccode\u003e6290d04\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/e635637d039e79dadb6a78fdf78ffb995a179d65\"\u003e\u003ccode\u003ee635637\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/323d375948254b39e6fc94a68c1d7bb3a88c553a\"\u003e\u003ccode\u003e323d375\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/a9d520e8c7d365dde025c4b7a12d4e4ec4102e57\"\u003e\u003ccode\u003ea9d520e\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.7'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/botocore/compare/1.38.18...1.42.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `certifi` from 2025.4.26 to 2025.11.12\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/37ea150bee10958559f804f128de2fdd48e1ed45\"\u003e\u003ccode\u003e37ea150\u003c/code\u003e\u003c/a\u003e 2025.11.12 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/375\"\u003e#375\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/2fa50bb698145e2401e17b23f6969d3952a6f7c1\"\u003e\u003ccode\u003e2fa50bb\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 4.6.2 to 5.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/374\"\u003e#374\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/6cadb5304715523e57ea425f833aa3495a4e01e4\"\u003e\u003ccode\u003e6cadb53\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/373\"\u003e#373\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/fb14ac49a976b1695d84b1ac1307276a20b3aac9\"\u003e\u003ccode\u003efb14ac4\u003c/code\u003e\u003c/a\u003e 2025.10.05 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/371\"\u003e#371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/2c7c7ee6b76a118191b685a4cc028d4241f22eb7\"\u003e\u003ccode\u003e2c7c7ee\u003c/code\u003e\u003c/a\u003e Add Python 3.14 classifier in setup.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/1a5cb7b3771bba256755f88b3dcf3ac13f064622\"\u003e\u003ccode\u003e1a5cb7b\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5.6.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/367\"\u003e#367\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/dea59605ef2b266c2e0e67938e8c8535a04b1211\"\u003e\u003ccode\u003edea5960\u003c/code\u003e\u003c/a\u003e Bump pypa/gh-action-pypi-publish from 1.12.4 to 1.13.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/366\"\u003e#366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/83566b7c993eef772facdaff59c7bba105675329\"\u003e\u003ccode\u003e83566b7\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.2 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ca2e121bdb304fd01f802d3b1ee6a65684f569f2\"\u003e\u003ccode\u003eca2e121\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4.3.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/a97d9ad8f87c382378dddc0b0b33b9770932404e\"\u003e\u003ccode\u003ea97d9ad\u003c/code\u003e\u003c/a\u003e 2025.08.03 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/certifi/python-certifi/compare/2025.04.26...2025.11.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `charset-normalizer` from 3.4.2 to 3.4.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.3...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003e multiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/b30ffdcc2f11043c0d34e60fe66d3815cd49b32b\"\u003e\u003ccode\u003eb30ffdc\u003c/code\u003e\u003c/a\u003e :wrench: fix checksum step in cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/d3fbfcfad7dfe3c640886f1a6a6351da527f6634\"\u003e\u003ccode\u003ed3fbfcf\u003c/code\u003e\u003c/a\u003e :wrench: fix cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/dafbb95f8c00d3cc8b99158caa63006ffab98749\"\u003e\u003ccode\u003edafbb95\u003c/code\u003e\u003c/a\u003e Release 3.4.4 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/658\"\u003e#658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/1f18ffaa69d2c84fea7abedb8840197ba9c14562\"\u003e\u003ccode\u003e1f18ffa\u003c/code\u003e\u003c/a\u003e :arrow_up: raise mypy upper bound to 1.18.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/ef4ac69ad203891f24e26b2422ab3a08053044fa\"\u003e\u003ccode\u003eef4ac69\u003c/code\u003e\u003c/a\u003e Merge branch 'release-3.4.4' of github.com:jawah/charset_normalizer into rele...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/4b35dda053db5e2e60a247e80a116e4ef04f439b\"\u003e\u003ccode\u003e4b35dda\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/0ec6452f1a34cbc77a55b237c4118807b44c2a33\"\u003e\u003ccode\u003e0ec6452\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f341edec8a828dda394abfa011b1ded8b4b102e2\"\u003e\u003ccode\u003ef341ede\u003c/code\u003e\u003c/a\u003e :arrow_up: upgrade dependencies (dev, ci)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/a308841e660a4d61ea6c448e7b8bf97415ecdc4a\"\u003e\u003ccode\u003ea308841\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/9c906da611d5ca5ef076d6bf7f60e629f661d0b0\"\u003e\u003ccode\u003e9c906da\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.2...3.4.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cloudpathlib` from 0.21.1 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/drivendataorg/cloudpathlib/releases\"\u003ecloudpathlib's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14 (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/529\"\u003e#529\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/530\"\u003e#530\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eChanged \u003ccode\u003eCloudPath.copy\u003c/code\u003e to have the first parameter named \u003ccode\u003etarget\u003c/code\u003e instead of \u003ccode\u003edestination\u003c/code\u003e and added new \u003ccode\u003efollow_symlinks\u003c/code\u003e and \u003ccode\u003epreserve_metadata\u003c/code\u003e kwargs. \u003cstrong\u003eBreaking change for users that relied on the first parameter being named \u003ccode\u003edestination\u003c/code\u003e instead of \u003ccode\u003etarget\u003c/code\u003e.\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.copy_into\u003c/code\u003e to copy a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move\u003c/code\u003e to move a file or directory to another location.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move_into\u003c/code\u003e to move a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPathInfo\u003c/code\u003e and \u003ccode\u003eCloudPath.info\u003c/code\u003e to get information about a file or directory.\u003c/li\u003e\n\u003cli\u003eAdded additional no-op kwargs to \u003ccode\u003emkdir\u003c/code\u003e, \u003ccode\u003etouch\u003c/code\u003e, \u003ccode\u003eglob\u003c/code\u003e, \u003ccode\u003erglob\u003c/code\u003e, \u003ccode\u003estat\u003c/code\u003e to match pathlib.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.22.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed issue with GS credentials, using default auth enables a wider set of authentication methods in GS (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/390\"\u003e#390\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/514\"\u003e#514\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ljyanesm\"\u003e\u003ccode\u003e@​ljyanesm\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for http(s) urls with \u003ccode\u003eHttpClient\u003c/code\u003e, \u003ccode\u003eHttpPath\u003c/code\u003e, \u003ccode\u003eHttpsClient\u003c/code\u003e, and \u003ccode\u003eHttpsPath\u003c/code\u003e. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/455\"\u003e#455\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded experimental support for patching the builtins \u003ccode\u003eopen\u003c/code\u003e, \u003ccode\u003eos\u003c/code\u003e, \u003ccode\u003eos.path\u003c/code\u003e, and \u003ccode\u003eglob\u003c/code\u003e to work with \u003ccode\u003eCloudPath\u003c/code\u003e objects. It is off by default; see the new \u0026quot;Compatibility\u0026quot; section in the docs for more information. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/128\"\u003e#128\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for \u003ccode\u003eCloudPath(*parts)\u003c/code\u003e to create a \u003ccode\u003eCloudPath\u003c/code\u003e object from a list of parts (to match \u003ccode\u003epathlib.Path\u003c/code\u003e). \u003cstrong\u003eThis is a potentially breaking change for users that relied on the second arg being the \u003ccode\u003eclient\u003c/code\u003e instead of making it an explicit kwarg.\u003c/strong\u003e (PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\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/drivendataorg/cloudpathlib/blob/master/HISTORY.md\"\u003ecloudpathlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0 (2025-10-07)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14 (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/529\"\u003e#529\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/530\"\u003e#530\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eChanged \u003ccode\u003eCloudPath.copy\u003c/code\u003e to have the first parameter named \u003ccode\u003etarget\u003c/code\u003e instead of \u003ccode\u003edestination\u003c/code\u003e and added new \u003ccode\u003efollow_symlinks\u003c/code\u003e and \u003ccode\u003epreserve_metadata\u003c/code\u003e kwargs. \u003cstrong\u003eBreaking change for users that relied on the first parameter being named \u003ccode\u003edestination\u003c/code\u003e instead of \u003ccode\u003etarget\u003c/code\u003e.\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.copy_into\u003c/code\u003e to copy a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move\u003c/code\u003e to move a file or directory to another location.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move_into\u003c/code\u003e to move a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPathInfo\u003c/code\u003e and \u003ccode\u003eCloudPath.info\u003c/code\u003e to get information about a file or directory.\u003c/li\u003e\n\u003cli\u003eAdded additional no-op kwargs to \u003ccode\u003emkdir\u003c/code\u003e, \u003ccode\u003etouch\u003c/code\u003e, \u003ccode\u003eglob\u003c/code\u003e, \u003ccode\u003erglob\u003c/code\u003e, \u003ccode\u003estat\u003c/code\u003e to match pathlib.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.22.0 (2025-08-29)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed issue with GS credentials, using default auth enables a wider set of authentication methods in GS (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/390\"\u003e#390\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/514\"\u003e#514\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ljyanesm\"\u003e\u003ccode\u003e@​ljyanesm\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for http(s) urls with \u003ccode\u003eHttpClient\u003c/code\u003e, \u003ccode\u003eHttpPath\u003c/code\u003e, \u003ccode\u003eHttpsClient\u003c/code\u003e, and \u003ccode\u003eHttpsPath\u003c/code\u003e. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/455\"\u003e#455\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded experimental support for patching the builtins \u003ccode\u003eopen\u003c/code\u003e, \u003ccode\u003eos\u003c/code\u003e, \u003ccode\u003eos.path\u003c/code\u003e, and \u003ccode\u003eglob\u003c/code\u003e to work with \u003ccode\u003eCloudPath\u003c/code\u003e objects. It is off by default; see the new \u0026quot;Compatibility\u0026quot; section in the docs for more information. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/128\"\u003e#128\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for \u003ccode\u003eCloudPath(*parts)\u003c/code\u003e to create a \u003ccode\u003eCloudPath\u003c/code\u003e object from a list of parts (to match \u003ccode\u003epathlib.Path\u003c/code\u003e). \u003cstrong\u003eThis is a potentially breaking change for users that relied on the second arg being the \u003ccode\u003eclient\u003c/code\u003e instead of making it an explicit kwarg.\u003c/strong\u003e (PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\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/drivendataorg/cloudpathlib/commit/28f1d943078517262d045ae50136edf27a5298a1\"\u003e\u003ccode\u003e28f1d94\u003c/code\u003e\u003c/a\u003e WIP Support 3.14 (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/530\"\u003e#530\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/fec5918d6725e9f1f52bee003528f4f854454980\"\u003e\u003ccode\u003efec5918\u003c/code\u003e\u003c/a\u003e Bump pypa/gh-action-pypi-publish in /.github/workflows (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/531\"\u003e#531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/e7900023bf4b32b70ca5b2d798f9ce52187582f8\"\u003e\u003ccode\u003ee790002\u003c/code\u003e\u003c/a\u003e version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/bb1f1e4cb5eba0928cec2aaff30cb0f5ace1f108\"\u003e\u003ccode\u003ebb1f1e4\u003c/code\u003e\u003c/a\u003e WIP: Patch open, os and os.path builtins (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/12005505fc29ab4183968022a487416a31b1a1bd\"\u003e\u003ccode\u003e1200550\u003c/code\u003e\u003c/a\u003e Refactor GS authentication to use default credentials (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/514\"\u003e#514\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/526\"\u003e#526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/b21cac14f0090021594f7e3afae9c48f5d7dbd46\"\u003e\u003ccode\u003eb21cac1\u003c/code\u003e\u003c/a\u003e Implement HTTP(s) support (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/863e884cbf1cf141cdf7bf9c0623e0cd3d27841d\"\u003e\u003ccode\u003e863e884\u003c/code\u003e\u003c/a\u003e fix for azure typing differences (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/524\"\u003e#524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/65c5c012bd4297ce4e812cfb8bbf9827db346e03\"\u003e\u003ccode\u003e65c5c01\u003c/code\u003e\u003c/a\u003e Set pytest-cases\u0026gt;=3.9.1 (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/520\"\u003e#520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/drivendataorg/cloudpathlib/compare/v0.21.1...v0.23.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `docutils` from 0.19 to 0.22.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/rtfd/recommonmark/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `idna` from 3.10 to 3.11\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kjd/idna/blob/master/HISTORY.rst\"\u003eidna's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e3.11 (2025-10-12)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to Unicode 16.0.0, including significant changes to UTS46\nprocessing. As a result of Unicode ending support for it, transitional\nprocessing no longer has an effect and returns the same result.\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14, lowest supported version is Python 3.8.\u003c/li\u003e\n\u003cli\u003eVarious updates to packaging, including PEP 740 support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/ad949ee3052c2265c66e3df2dd8871a5832ba327\"\u003e\u003ccode\u003ead949ee\u003c/code\u003e\u003c/a\u003e Release v3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/cae4ba779e0a543823894bd4136651c187944da8\"\u003e\u003ccode\u003ecae4ba7\u003c/code\u003e\u003c/a\u003e Second release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/8adb305165c77c4a45d1568a70ead75d2197692c\"\u003e\u003ccode\u003e8adb305\u003c/code\u003e\u003c/a\u003e Add space in RST link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/74cb2b652bb06133b0c4ab52cc98221be63162cf\"\u003e\u003ccode\u003e74cb2b6\u003c/code\u003e\u003c/a\u003e Release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/05dab09fdde5bbf7d52f757c4dc62e0ba934cca8\"\u003e\u003ccode\u003e05dab09\u003c/code\u003e\u003c/a\u003e Format idna-data with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/90eac78b737d26613776b490432fc6d926b15c55\"\u003e\u003ccode\u003e90eac78\u003c/code\u003e\u003c/a\u003e Apply ruff formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a31ce7ecc0b767e40abb5ce28744ac567b73f366\"\u003e\u003ccode\u003ea31ce7e\u003c/code\u003e\u003c/a\u003e Remove errant test vectors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/81f03334211c78c1832991ce70ebafb3cbfbb79c\"\u003e\u003ccode\u003e81f0333\u003c/code\u003e\u003c/a\u003e Omit vectors known to be broken in test suite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a0f32578c0cac28c7ffbb4c860c92eb2b9b579bd\"\u003e\u003ccode\u003ea0f3257\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into unicode-16-uts46-changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/38d98860e6a1ab92fd35ab09ea4739feabf339a3\"\u003e\u003ccode\u003e38d9886\u003c/code\u003e\u003c/a\u003e Remove extra UTS46 test vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kjd/idna/compare/v3.10...v3.11\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jellyfish` from 1.2.0 to 1.2.1\n\nUpdates `markdown-it-py` from 3.0.0 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/executablebooks/markdown-it-py/releases\"\u003emarkdown-it-py's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eThis primarily drops support for Python 3.8 and 3.9, adds support for Python 3.13,\nand updates the parser to comply with Commonmark 0.31.2 and Markdown-It v14.1.0.\u003c/p\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Drop Python 3.8, test 3.13 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/342\"\u003eexecutablebooks/markdown-it-py#342\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Drop support for Python 3.9 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/360\"\u003eexecutablebooks/markdown-it-py#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Comply with Commonmark 0.31.2 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/362\"\u003eexecutablebooks/markdown-it-py#362\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Improve performance of \u0026quot;text\u0026quot; inline rule by \u003ca href=\"https://github.com/hukkin\"\u003e\u003ccode\u003e@​hukkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/347\"\u003eexecutablebooks/markdown-it-py#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Use \u003ccode\u003estr.removesuffix\u003c/code\u003e by \u003ca href=\"https://github.com/hukkin\"\u003e\u003ccode\u003e@​hukkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/348\"\u003eexecutablebooks/markdown-it-py#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 limit the number of autocompleted cells in a table by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/364\"\u003eexecutablebooks/markdown-it-py#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 fix quadratic complexity in reference parser by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/367\"\u003eexecutablebooks/markdown-it-py#367\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix emphasis inside raw links bugs by \u003ca href=\"https://github.com/tsutsu3\"\u003e\u003ccode\u003e@​tsutsu3\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/320\"\u003eexecutablebooks/markdown-it-py#320\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔧 Replace black and isort with ruff formatter by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/313\"\u003eexecutablebooks/markdown-it-py#313\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Fixed Code Style paragraph still referring to flake8 by \u003ca href=\"https://github.com/venthur\"\u003e\u003ccode\u003e@​venthur\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/309\"\u003eexecutablebooks/markdown-it-py#309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Add \u0026quot;store_labels\u0026quot; to OptionsType by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/343\"\u003eexecutablebooks/markdown-it-py#343\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Move \u003ccode\u003ecode_style\u003c/code\u003e to dependency group by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/344\"\u003eexecutablebooks/markdown-it-py#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Update codecov action by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/345\"\u003eexecutablebooks/markdown-it-py#345\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Update pre-commit and upload-artifact by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/359\"\u003eexecutablebooks/markdown-it-py#359\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Improve spec update script by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/361\"\u003eexecutablebooks/markdown-it-py#361\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 simplify logic in scanDelims by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/365\"\u003eexecutablebooks/markdown-it-py#365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Add CI testing for Python 3.12 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/303\"\u003eexecutablebooks/markdown-it-py#303\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Fix codecov by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/332\"\u003eexecutablebooks/markdown-it-py#332\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📚 Fix typo by \u003ca href=\"https://github.com/bwagner\"\u003e\u003ccode\u003e@​bwagner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/315\"\u003eexecutablebooks/markdown-it-py#315\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix RTD build by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/322\"\u003eexecutablebooks/markdown-it-py#322\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Fix a few old URLs by \u003ca href=\"https://github.com/elijahgreenstein\"\u003e\u003ccode\u003e@​elijahgreenstein\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/358\"\u003eexecutablebooks/markdown-it-py#358\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Improve README by \u003ca href=\"https://github.com/mrmurilo75\"\u003e\u003ccode\u003e@​mrmurilo75\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/340\"\u003eexecutablebooks/markdown-it-py#340\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix CI badge link by \u003ca href=\"https://github.com/tsutsu3\"\u003e\u003ccode\u003e@​tsutsu3\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/291\"\u003eexecutablebooks/markdown-it-py#291\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Update docs by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/292\"\u003eexecutablebooks/markdown-it-py#292\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Add icon to readme by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/293\"\u003eexecutablebooks/markdown-it-py#293\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Update icon by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/294\"\u003eexecutablebooks/markdown-it-py#294\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Clarify docs regarding security configuration by \u003ca href=\"https://github.com/djramones\"\u003e\u003ccode\u003e@​djramones\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/296\"\u003eexecutablebooks/markdown-it-py#296\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix the RTD build by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/311\"\u003eexecutablebooks/markdown-it-py#311\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Fix typos by \u003ca href=\"https://github.com/elijahgreenstein\"\u003e\u003ccode\u003e@​elijahgreenstein\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/366\"\u003eexecutablebooks/markdown-it-py#366\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/executablebooks/markdown-it-py/blob/master/CHANGELOG.md\"\u003emarkdown-it-py's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.0 - 2024-08-10\u003c/h2\u003e\n\u003cp\u003eThis primarily drops support for Python 3.9, adds support for Python 3.13,\nand updates the parser to comply with Commonmark 0.31.2 and Markdown-It v14.1.0.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Drop support for Python 3.9 in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/360\"\u003e#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Comply with Commonmark 0.31.2 in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/362\"\u003e#362\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve performance of \u0026quot;text\u0026quot; inline rule in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/347\"\u003e#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Use \u003ccode\u003estr.removesuffix\u003c/code\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/348\"\u003e#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 limit the number of autocompleted cells in a table in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/364\"\u003e#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 fix quadratic complexity in reference parser in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/367\"\u003e#367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 Fix emphasis inside raw links bugs in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/320\"\u003e#320\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.0\"\u003ehttps://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.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/executablebooks/markdown-it-py/commit/c62983f1554124391b47170180e6c62df4d476ca\"\u003e\u003ccode\u003ec62983f\u003c/code\u003e\u003c/a\u003e 🚀 RELEASE v4.0.0 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/368\"\u003e#368\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/9e93bd554147ffb8582581e14620c7611103d2ff\"\u003e\u003ccode\u003e9e93bd5\u003c/code\u003e\u003c/a\u003e 👌 fix quadratic complexity in reference parser (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/367\"\u003e#367\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/da45c8764b2077425c091fa1811bbb1c5f211bd1\"\u003e\u003ccode\u003eda45c87\u003c/code\u003e\u003c/a\u003e 📚 DOCS: Fix typos (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/366\"\u003e#366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/87b16e272bf8207182084e07a63253b98fc437d7\"\u003e\u003ccode\u003e87b16e2\u003c/code\u003e\u003c/a\u003e 🔧 simplify logic in scanDelims (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/365\"\u003e#365\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/e4009641db528444b85d384af815e9cad997a016\"\u003e\u003ccode\u003ee400964\u003c/code\u003e\u003c/a\u003e 👌 limit the number of autocompleted cells in a table (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/364\"\u003e#364\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/4535d77edcb5f51450a266135687eeae8bcc5033\"\u003e\u003ccode\u003e4535d77\u003c/code\u003e\u003c/a\u003e ⬆️ Comply with Commonmark 0.31.2 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/8eb20ac1cb63e09dcd78e84a0c71dab8446bb73c\"\u003e\u003ccode\u003e8eb20ac\u003c/code\u003e\u003c/a\u003e 🔧 Improve spec update script (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/361\"\u003e#361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/fb9d3ab646e4f752dc8fd52e1dd7613c350ff190\"\u003e\u003ccode\u003efb9d3ab\u003c/code\u003e\u003c/a\u003e ⬆️ Drop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/360\"\u003e#360\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/9ffe841832d33264201aaff120349f001a02953a\"\u003e\u003ccode\u003e9ffe841\u003c/code\u003e\u003c/a\u003e 📚 DOCS: Fix a few old URLs (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/358\"\u003e#358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/154fe43feb17947e2c933d0bb3e26618129909a8\"\u003e\u003ccode\u003e154fe43\u003c/code\u003e\u003c/a\u003e 🔧 Update pre-commit and upload-artifact (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `numpy` from 2.2.5 to 2.3.5\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.3.5 (Nov 16, 2025)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.3.5 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.3.5 release is a patch release split between a number of maintenance\nupdates and bug fixes. This release supports Python versions 3.11-3.14.\u003c/p\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eA total of 10 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\u003eAaron Kollasch +\u003c/li\u003e\n\u003cli\u003eCharles Harris\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eMatti Picus\u003c/li\u003e\n\u003cli\u003eNathan Goldbaum\u003c/li\u003e\n\u003cli\u003eRafael Laboissière +\u003c/li\u003e\n\u003cli\u003eSayed Awad\u003c/li\u003e\n\u003cli\u003eSebastian Berg\u003c/li\u003e\n\u003cli\u003eWarren Weckesser\u003c/li\u003e\n\u003cli\u003eYasir Ashfaq +\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ePull requests merged\u003c/h2\u003e\n\u003cp\u003eA total of 16 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/29979\"\u003e#29979\u003c/a\u003e: MAINT: Prepare 2.3.x for further development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30026\"\u003e#30026\u003c/a\u003e: SIMD, BLD: Backport FPMATH mode on x86-32 and filter successor...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30029\"\u003e#30029\u003c/a\u003e: MAINT: Backport write_release.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30041\"\u003e#30041\u003c/a\u003e: TYP: Various typing updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30059\"\u003e#30059\u003c/a\u003e: BUG: Fix np.strings.slice if stop=None or start and stop \u0026gt;= len...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30063\"\u003e#30063\u003c/a\u003e: BUG: Fix np.strings.slice if start \u0026gt; stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30076\"\u003e#30076\u003c/a\u003e: BUG: avoid negating INT_MIN in PyArray_Round implementation (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30071\"\u003e#30071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30090\"\u003e#30090\u003c/a\u003e: BUG: Fix resize when it contains references (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/29970\"\u003e#29970\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30129\"\u003e#30129\u003c/a\u003e: BLD: update scipy-openblas, use -Dpkg_config_path (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30049\"\u003e#30049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30130\"\u003e#30130\u003c/a\u003e: BUG: Avoid compilation error of wrapper file generated with SWIG...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30157\"\u003e#30157\u003c/a\u003e: BLD: use scipy-openblas 0.3.30.7 (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30132\"\u003e#30132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30158\"\u003e#30158\u003c/a\u003e: DOC: Remove nonexistent \u003ccode\u003eorder\u003c/code\u003e parameter docs of \u003ccode\u003ema.asanyarray\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30185\"\u003e#30185\u003c/a\u003e: BUG: Fix check of PyMem_Calloc return value. (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30176\"\u003e#30176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30217\"\u003e#30217\u003c/a\u003e: DOC: fix links for newly rebuilt numpy-tutorials site\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30218\"\u003e#30218\u003c/a\u003e: BUG: Fix build on s390x with clang (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30214\"\u003e#30214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30237\"\u003e#30237\u003c/a\u003e: ENH: Make FPE blas check a runtime check for all apple arm systems\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.3.4 (Oct 15,  2025)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.3.4 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.3.4 release is a patch release split between a number of maintenance\nupdates and bug fixes. This release supports Python versions 3.11-3.14. This\nrelease is based on Python 3.14.0 final.\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/numpy/numpy/commit/c3d60fc8393f3ca3306b8ce8b6453d43737e3d90\"\u003e\u003ccode\u003ec3d60fc\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30238\"\u003e#30238\u003c/a\u003e from charris/prepare-2.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/11451fa35d49d8c809cdef87106417833bdacfbe\"\u003e\u003ccode\u003e11451fa\u003c/code\u003e\u003c/a\u003e REL: Prepare for the NumPy 2.3.5 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/eab5bd47df62782edceccf4cf99112851f7a8975\"\u003e\u003ccode\u003eeab5bd4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30237\"\u003e#30237\u003c/a\u003e from charris/backport-30102\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/7cea31aa6255994bcd17b3ee2f6dbf671eaa9598\"\u003e\u003ccode\u003e7cea31a\u003c/code\u003e\u003c/a\u003e Fixup merge of multiarraymodule.c\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/b8981736060011506e497c5bca24a75c5bddee39\"\u003e\u003ccode\u003eb898173\u003c/code\u003e\u003c/a\u003e Update numpy/_core/src/common/blas_utils.h\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/f755483d4858839044f159db7dacdf1818912393\"\u003e\u003ccode\u003ef755483\u003c/code\u003e\u003c/a\u003e Report FPE ignoring in matmul in \u003ccode\u003eshow_runtime()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/c47116f3858a2814222a7cd7b15ebc5eed9df4d0\"\u003e\u003ccode\u003ec47116f\u003c/code\u003e\u003c/a\u003e Move test to Python\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/bd7b93f105ddb3b3f200ceb6fb4516e7e87f3a81\"\u003e\u003ccode\u003ebd7b93f\u003c/code\u003e\u003c/a\u003e ooops, needs to be a calloc of course.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/83a1517159a2e33d05113e3341afb1df83ba615d\"\u003e\u003ccode\u003e83a1517\u003c/code\u003e\u003c/a\u003e Guard for HAVE_CB...\n\n_Description has been truncated_","html_url":"https://github.com/reichlab/cladetime/pull/187","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/reichlab%2Fcladetime/issues/187","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/187/packages"}},{"old_version":"4.0.0","new_version":"4.1.0","update_type":"minor","path":null,"pr_created_at":"2025-12-08T19:21:17.000Z","version_change":"4.0.0 → 4.1.0","issue":{"uuid":"3707703842","node_id":"PR_kwDOPEWICs63wBFV","number":60,"state":"open","title":"Bump sphinx-toolbox from 4.0.0 to 4.1.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-12-08T19:21:17.000Z","updated_at":"2025-12-08T19:22:51.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.0","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.0.0 to 4.1.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/bbaed26084558ea5322b81bd9115b7c7603a3337\"\u003e\u003ccode\u003ebbaed26\u003c/code\u003e\u003c/a\u003e Fix warning for RequiresIOShield\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/69e5dbd249df3f79653268fbe9ee7d51188225b3\"\u003e\u003ccode\u003e69e5dbd\u003c/code\u003e\u003c/a\u003e Fix docs build and warn about | character in annotations before 3.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/79387fc9d183b492fb70b674bef40a9cfe8a6c25\"\u003e\u003ccode\u003e79387fc\u003c/code\u003e\u003c/a\u003e Deprecate and remove docs for requires.io shield as the service has shut down.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/caad11f3efb72d73795562048a5f5c582138cd95\"\u003e\u003ccode\u003ecaad11f\u003c/code\u003e\u003c/a\u003e Update tox configuration and appease mypy.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.0.0...v4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.0.0\u0026new-version=4.1.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/senzing-garage/geo-extractor/pull/60","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/senzing-garage%2Fgeo-extractor/issues/60","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/60/packages"}},{"old_version":"4.0.0","new_version":"4.1.0","update_type":"minor","path":null,"pr_created_at":"2025-12-08T15:07:32.000Z","version_change":"4.0.0 → 4.1.0","issue":{"uuid":"3706794675","node_id":"PR_kwDOJ34dpM63s66w","number":139,"state":"open","title":"Bump sphinx-toolbox from 4.0.0 to 4.1.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":["docktermj"],"locked":false,"comments_count":6,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-12-08T15:07:32.000Z","updated_at":"2025-12-25T16:00:24.577Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.0","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.0.0 to 4.1.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/bbaed26084558ea5322b81bd9115b7c7603a3337\"\u003e\u003ccode\u003ebbaed26\u003c/code\u003e\u003c/a\u003e Fix warning for RequiresIOShield\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/69e5dbd249df3f79653268fbe9ee7d51188225b3\"\u003e\u003ccode\u003e69e5dbd\u003c/code\u003e\u003c/a\u003e Fix docs build and warn about | character in annotations before 3.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/79387fc9d183b492fb70b674bef40a9cfe8a6c25\"\u003e\u003ccode\u003e79387fc\u003c/code\u003e\u003c/a\u003e Deprecate and remove docs for requires.io shield as the service has shut down.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/caad11f3efb72d73795562048a5f5c582138cd95\"\u003e\u003ccode\u003ecaad11f\u003c/code\u003e\u003c/a\u003e Update tox configuration and appease mypy.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.0.0...v4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.0.0\u0026new-version=4.1.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/senzing-garage/sz-sdk-json-type-definition/pull/139","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/senzing-garage%2Fsz-sdk-json-type-definition/issues/139","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/139/packages"}},{"old_version":"4.0.0","new_version":"4.1.0","update_type":"minor","path":null,"pr_created_at":"2025-12-08T10:48:05.000Z","version_change":"4.0.0 → 4.1.0","issue":{"uuid":"3705792585","node_id":"PR_kwDOINbBv863peeF","number":67,"state":"closed","title":"build(deps): bump the pipenv group across 1 directory with 8 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-13T10:42:15.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-08T10:48:05.000Z","updated_at":"2026-01-13T10:42:16.000Z","time_to_close":3110050,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"pipenv","update_count":8,"packages":[{"name":"sphinxcontrib-plantuml","old_version":"0.30","new_version":"0.31","repository_url":"https://github.com/sphinx-contrib/plantuml"},{"name":"mistune","old_version":"3.1.3","new_version":"3.1.4","repository_url":"https://github.com/lepture/mistune"},{"name":"pytest","old_version":"8.4.1","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"dynaconf","old_version":"3.2.11","new_version":"3.2.12","repository_url":"https://github.com/dynaconf/dynaconf"},{"name":"isort","old_version":"6.0.1","new_version":"7.0.0","repository_url":"https://github.com/PyCQA/isort"},{"name":"black","old_version":"25.1.0","new_version":"25.12.0","repository_url":"https://github.com/psf/black"},{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.0","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"},{"name":"sphinx-needs","old_version":"5.1.0","new_version":"6.2.0","repository_url":"https://github.com/useblocks/sphinx-needs"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pipenv group with 8 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [sphinxcontrib-plantuml](https://github.com/sphinx-contrib/plantuml) | `0.30` | `0.31` |\n| [mistune](https://github.com/lepture/mistune) | `3.1.3` | `3.1.4` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.4.1` | `8.4.2` |\n| [dynaconf](https://github.com/dynaconf/dynaconf) | `3.2.11` | `3.2.12` |\n| [isort](https://github.com/PyCQA/isort) | `6.0.1` | `7.0.0` |\n| [black](https://github.com/psf/black) | `25.1.0` | `25.12.0` |\n| [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) | `4.0.0` | `4.1.0` |\n| [sphinx-needs](https://github.com/useblocks/sphinx-needs) | `5.1.0` | `6.2.0` |\n\n\nUpdates `sphinxcontrib-plantuml` from 0.30 to 0.31\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/d15308432fc659319417a3f57f2190860c854b20\"\u003e\u003ccode\u003ed153084\u003c/code\u003e\u003c/a\u003e bump version to 0.31\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/123c26239e24d829c67950a4ee6b02d9a8a04179\"\u003e\u003ccode\u003e123c262\u003c/code\u003e\u003c/a\u003e search for ImageConverter capable of svg to pdf conversion after init\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/2d2adc477058594a81391cfda781f8c99be5f893\"\u003e\u003ccode\u003e2d2adc4\u003c/code\u003e\u003c/a\u003e github: bump actions, add Python 3.12 and 3.13, remove some middle/dead versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-contrib/plantuml/commit/27ece3637c0ec5fa91cacf511349e290a1440ba9\"\u003e\u003ccode\u003e27ece36\u003c/code\u003e\u003c/a\u003e tests: use inspect.getdoc() to get around breaking change in Python 3.13\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sphinx-contrib/plantuml/compare/0.30...0.31\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mistune` from 3.1.3 to 3.1.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/lepture/mistune/releases\"\u003emistune's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.1.4\u003c/h2\u003e\n\u003ch3\u003e   🐞 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd fenced directive break rule in list parser, \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/412\"\u003e#412\u003c/a\u003e  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/412\"\u003elepture/mistune#412\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/ea3ecaf\"\u003e\u003c!-- raw HTML omitted --\u003e(ea3ec)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrevent remove unicode whitespace when parsing atx heading  -  by \u003ca href=\"https://github.com/lepture\"\u003e\u003ccode\u003e@​lepture\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://github.com/lepture/mistune/commit/9e72063\"\u003e\u003c!-- raw HTML omitted --\u003e(9e720)\u003c!-- raw HTML omitted --\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch5\u003e    \u003ca href=\"https://github.com/lepture/mistune/compare/v3.1.3...v3.1.4\"\u003eView changes on GitHub\u003c/a\u003e\u003c/h5\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/lepture/mistune/blob/main/docs/changes.rst\"\u003emistune's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.1.4\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eReleased on Aug 29, 2025\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd fenced directive break rule in list parser.\u003c/li\u003e\n\u003cli\u003ePrevent removing unicode whitespace when parsing atx heading.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/b6d83e82cfa781285d77ab4f719b18b9559603b5\"\u003e\u003ccode\u003eb6d83e8\u003c/code\u003e\u003c/a\u003e chore: release 3.1.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/d7e33eb931c61b1d4e206af225678c898e0efa2d\"\u003e\u003ccode\u003ed7e33eb\u003c/code\u003e\u003c/a\u003e tests: add test case for \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/414\"\u003e#414\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/9e72063501c6b899945c1d69b785eef9ce6a36df\"\u003e\u003ccode\u003e9e72063\u003c/code\u003e\u003c/a\u003e fix: prevent remove unicode whitespace when parsing atx heading\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/cd1ad9183bc9a08366270cd442f6d26525fba8f7\"\u003e\u003ccode\u003ecd1ad91\u003c/code\u003e\u003c/a\u003e chore: update readme\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/e8d0a030ce2dd8e7a034fcf61c5f6a29ff677fdf\"\u003e\u003ccode\u003ee8d0a03\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/418\"\u003e#418\u003c/a\u003e from fernandonino/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/293fb8de1e475ed51d99e2bd6c2825b5777bc44c\"\u003e\u003ccode\u003e293fb8d\u003c/code\u003e\u003c/a\u003e Update community.rst\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/lepture/mistune/commit/ea3ecaf4a5a6667de47f061b1b9a692d2952ad93\"\u003e\u003ccode\u003eea3ecaf\u003c/code\u003e\u003c/a\u003e fix: add fenced directive break rule in list parser, \u003ca href=\"https://redirect.github.com/lepture/mistune/issues/412\"\u003e#412\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/lepture/mistune/compare/v3.1.3...v3.1.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 8.4.1 to 8.4.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.2\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.2 (2025-09-03)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13478\"\u003e#13478\u003c/a\u003e: Fixed a crash when using \u003ccode\u003econsole_output_style\u003c/code\u003e{.interpreted-text role=\u0026quot;confval\u0026quot;} with \u003ccode\u003etimes\u003c/code\u003e and a module is skipped.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13530\"\u003e#13530\u003c/a\u003e: Fixed a crash when using \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and \u003ccode\u003edecimal.Decimal\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} instances with the \u003ccode\u003edecimal.FloatOperation\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} trap set.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13549\"\u003e#13549\u003c/a\u003e: No longer evaluate type annotations in Python \u003ccode\u003e3.14\u003c/code\u003e when inspecting function signatures.\u003c/p\u003e\n\u003cp\u003eThis prevents crashes during module collection when modules do not explicitly use \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e and import types for annotations within a \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13559\"\u003e#13559\u003c/a\u003e: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in \u003ccode\u003epytest.Parser.addini\u003c/code\u003e{.interpreted-text role=\u0026quot;meth\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13563\"\u003e#13563\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now only imports \u003ccode\u003enumpy\u003c/code\u003e if NumPy is already in \u003ccode\u003esys.modules\u003c/code\u003e. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13577\"\u003e#13577\u003c/a\u003e: Clarify that \u003ccode\u003epytest_generate_tests\u003c/code\u003e is discovered in test modules/classes; other hooks must be in \u003ccode\u003econftest.py\u003c/code\u003e or plugins.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13480\"\u003e#13480\u003c/a\u003e: Self-testing: fixed a few test failures when run with \u003ccode\u003e-Wdefault\u003c/code\u003e or a similar override.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13547\"\u003e#13547\u003c/a\u003e: Self-testing: corrected expected message for \u003ccode\u003etest_doctest_unexpected_exception\u003c/code\u003e in Python \u003ccode\u003e3.14\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13684\"\u003e#13684\u003c/a\u003e: Make pytest's own testsuite insensitive to the presence of the \u003ccode\u003eCI\u003c/code\u003e environment variable -- by \u003ccode\u003eogrisel\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/bfae4224fd554d3d7f2c277a4cc092b6ec6af3ae\"\u003e\u003ccode\u003ebfae422\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/89905381a163be30ae87d62e5f750e902d750c5f\"\u003e\u003ccode\u003e8990538\u003c/code\u003e\u003c/a\u003e Fix passenv CI in tox ini and make tests insensitive to the presence of the C...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ca676bfe005aebcb12f4146d1b0f1d2772e2cd5d\"\u003e\u003ccode\u003eca676bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13687\"\u003e#13687\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/e63f6e51c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/975a60a63ce385a44655596e254c1899feaa53e4\"\u003e\u003ccode\u003e975a60a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13686\"\u003e#13686\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/12bde8af6...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7723ce84b87ab08f86ddafcb342acc28ba5ec99d\"\u003e\u003ccode\u003e7723ce8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13683\"\u003e#13683\u003c/a\u003e from even-even/fix_Exeption_to_Exception_in_errorMe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7f05680d1301e0969b30bcb3c4b27433c9ee2b7\"\u003e\u003ccode\u003eb7f0568\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13685\"\u003e#13685\u003c/a\u003e from CoretexShadow/fix/docs-pytest-generate-tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2c94c4a6948ba53440818389298157fa5d5f94cd\"\u003e\u003ccode\u003e2c94c4a\u003c/code\u003e\u003c/a\u003e add missing colon (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13640\"\u003e#13640\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13641\"\u003e#13641\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c3d7684bc01c8c48d05145a30c5211ca8656c68c\"\u003e\u003ccode\u003ec3d7684\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13606\"\u003e#13606\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/5f9938563...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/dc6e3be2ddc75a149b6d102d9b7c82ee47a00cfa\"\u003e\u003ccode\u003edc6e3be\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13605\"\u003e#13605\u003c/a\u003e from The-Compiler/training-update-2025-07\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f87289c36c8dbe7740e3020f5546b6f8b0861ff0\"\u003e\u003ccode\u003ef87289c\u003c/code\u003e\u003c/a\u003e Fix crash with \u003ccode\u003etimes\u003c/code\u003e output style and skipped module (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13573\"\u003e#13573\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13579\"\u003e#13579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.4.1...8.4.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dynaconf` from 3.2.11 to 3.2.12\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dynaconf/dynaconf/releases\"\u003edynaconf's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.12\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIncremental improvment to access performance by \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1304\"\u003edynaconf/dynaconf#1304\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: get method to return Any type. by \u003ca href=\"https://github.com/rochacbruno\"\u003e\u003ccode\u003e@​rochacbruno\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1314\"\u003edynaconf/dynaconf#1314\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: add lru caching to \u003ccode\u003efind_the_correct_casing\u003c/code\u003e function by \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1326\"\u003edynaconf/dynaconf#1326\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\"\u003ehttps://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dynaconf/dynaconf/blob/3.2.12/CHANGELOG.md\"\u003edynaconf's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/pedro-psb/dynaconf/releases/tag/3.2.12\"\u003e3.2.12\u003c/a\u003e - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eget method to return Any type.. \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eremove unnecessary recursive evaluation call on Settings.get. \u003cem\u003eBy Pedro Brochado\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eimprove performance of settings access in a loop (part 1). \u003cem\u003eBy Pedro Brochado\u003c/em\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/7606f351ac460b15c56e7a538300de4a501c56e7\"\u003e\u003ccode\u003e7606f35\u003c/code\u003e\u003c/a\u003e Release version 3.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/da44e5182940299dd90ca3e2a0e0e3c23cb9ebf7\"\u003e\u003ccode\u003eda44e51\u003c/code\u003e\u003c/a\u003e perf: add lru caching to \u003ccode\u003efind_the_correct_casing\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1326\"\u003e#1326\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/b75eda0da141bdc29f707f2cb0c29e06b03a72bb\"\u003e\u003ccode\u003eb75eda0\u003c/code\u003e\u003c/a\u003e fix: get method to return Any type.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/4f3df1a47bcb71feddf7565f603e7994c65ede65\"\u003e\u003ccode\u003e4f3df1a\u003c/code\u003e\u003c/a\u003e misc: add some profile/perf scripts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/420acebf64e77ba475df94dfd7d409207e5e239d\"\u003e\u003ccode\u003e420aceb\u003c/code\u003e\u003c/a\u003e refactor: merge \u003cem\u003esafe\u003c/em\u003e{get,copy} into .get and .copy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/18c0c8422dc9651d57c76d1b098ad6fb3f75c09d\"\u003e\u003ccode\u003e18c0c84\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary recursive evaluation call on Settings.get\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/0fde96f2e0b71309e63800ddac8eceda062155a9\"\u003e\u003ccode\u003e0fde96f\u003c/code\u003e\u003c/a\u003e refactor: rewrite decorator as explicit call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/52efd9ed78d2187550e03a2ae5008661d5e28df9\"\u003e\u003ccode\u003e52efd9e\u003c/code\u003e\u003c/a\u003e Bump to version 3.2.12-dev0\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isort` from 6.0.1 to 7.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/releases\"\u003eisort's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e7.0.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003ch2\u003e:boom: Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:rocket: Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eShow absolute paths in skipped file messages (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2416\"\u003e#2416\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSome fixes for Python 3.14 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on \u003ccode\u003e3.14\u003c/code\u003e and fix any bugs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2425\"\u003e#2425\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate CHANGELOG.md + Fix Formatting and Grammar (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2419\"\u003e#2419\u003c/a\u003e) \u003ca href=\"https://github.com/lukbrew25\"\u003e\u003ccode\u003e@​lukbrew25\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix output of hanging indent for long lines with noqa (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2407\"\u003e#2407\u003c/a\u003e) \u003ca href=\"https://github.com/matan1008\"\u003e\u003ccode\u003e@​matan1008\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFormat with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTarget 3.10 for \u003ccode\u003eruff\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate development dependencies to latest version (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2426\"\u003e#2426\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update pre-commit examples to version 6.1.0 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2413\"\u003e#2413\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSmall cleanup for developer environment (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2418\"\u003e#2418\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/setup-python from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2411\"\u003e#2411\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.1.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs discussions channel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2410\"\u003e#2410\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse working isort version in pre-commit example (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2402\"\u003e#2402\u003c/a\u003e) \u003ca href=\"https://github.com/iainelder\"\u003e\u003ccode\u003e@​iainelder\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix typo in _get_files_from_dir_cached test (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2392\"\u003e#2392\u003c/a\u003e) \u003ca href=\"https://github.com/tiltingpenguin\"\u003e\u003ccode\u003e@​tiltingpenguin\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eResolve bandit warnings (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2379\"\u003e#2379\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd tox for cross-platform, parallel test suite execution (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2378\"\u003e#2378\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Project URLs to PyPI Side Panel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2387\"\u003e#2387\u003c/a\u003e) \u003ca href=\"https://github.com/guillermodotn\"\u003e\u003ccode\u003e@​guillermodotn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typos (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2376\"\u003e#2376\u003c/a\u003e) \u003ca href=\"https://github.com/co63oc\"\u003e\u003ccode\u003e@​co63oc\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd make bash scripts portable (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2377\"\u003e#2377\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 4 to 5 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2406\"\u003e#2406\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/blob/main/CHANGELOG.md\"\u003eisort's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003eNOTE: isort follows the \u003ca href=\"https://semver.org/\"\u003esemver\u003c/a\u003e versioning standard.\nFind out more about isort's release policy \u003ca href=\"https://pycqa.github.io/isort/docs/major_releases/release_policy\"\u003ehere\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eUnreleased\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved \u003ccode\u003e--old-finders\u003c/code\u003e and \u003ccode\u003e--magic-placement\u003c/code\u003e flags and \u003ccode\u003eold_finders\u003c/code\u003e configuration option. The legacy finder logic that relied on environment introspection has been removed (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2445\"\u003e#2445\u003c/a\u003e) \u003ca href=\"https://github.com/joao-faria-dev\"\u003e\u003ccode\u003e@​joao-faria-dev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e6.1.0 October 1 2025\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0a09c783808cfe77bb3269250f663ff733d23302\"\u003e\u003ccode\u003e0a09c78\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e from DanielNoord/python-314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0fee794a05b5d0c471ac80bc8943f9843ca29644\"\u003e\u003ccode\u003e0fee794\u003c/code\u003e\u003c/a\u003e Add 3.14 to \u003ccode\u003estdlibds\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/332a1ad0b68bf3a3acac055b0ec3666408b3b425\"\u003e\u003ccode\u003e332a1ad\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003ezstandard\u003c/code\u003e for 3.14 compat\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/f756e5653afcf6d79ec4d0240b1868cbebd8fafd\"\u003e\u003ccode\u003ef756e56\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/52f5134889d345ff35afdcb86501c8221b804c70\"\u003e\u003ccode\u003e52f5134\u003c/code\u003e\u003c/a\u003e Format with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/012aa69fcadb3c89ff92a3d96aa449be7ae6746f\"\u003e\u003ccode\u003e012aa69\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/89773dbb371192541092657972a74e9ce0bbbc74\"\u003e\u003ccode\u003e89773db\u003c/code\u003e\u003c/a\u003e Target 3.10 with \u003ccode\u003eruff\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/933e382f98a0c77b4c6e33c4e3ef12bd57192884\"\u003e\u003ccode\u003e933e382\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e from DanielNoord/drop-39\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/8b6e00cbe643a216da57fed4baa282d0a4a1b829\"\u003e\u003ccode\u003e8b6e00c\u003c/code\u003e\u003c/a\u003e Remove support for Python 3.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/b5f9f296ad873734e8caa3a731f27360648d9b37\"\u003e\u003ccode\u003eb5f9f29\u003c/code\u003e\u003c/a\u003e Bump profile plugin to 3.10+ and re-lock\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/isort/compare/6.0.1...7.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `black` from 25.1.0 to 25.12.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e25.12.0\u003c/h2\u003e\n\u003cp\u003ePlease test out the draft 2026 style in version 26.1a1! This style will be finalized in\nthe January release (26.1.0). Most of the changes in \u003ccode\u003e--preview\u003c/code\u003e will be in the 2026\nstable style, but not all.\n\u003ca href=\"https://redirect.github.com/psf/black/issues/4042\"\u003ePlease share your feedback!\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eThis release (25.12.0) will still produce the 2025 style.\u003c/p\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBlack no longer supports running with Python 3.9 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4842\"\u003e#4842\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bug where comments preceding \u003ccode\u003e# fmt: off\u003c/code\u003e/\u003ccode\u003e# fmt: on\u003c/code\u003e blocks were incorrectly\nremoved, particularly affecting Jupytext's \u003ccode\u003e# %% [markdown]\u003c/code\u003e comments (\u003ca href=\"https://redirect.github.com/psf/black/issues/4845\"\u003e#4845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash when multiple \u003ccode\u003e# fmt: skip\u003c/code\u003e comments are used in a multi-part if-clause, on\nstring literals, or on dictionary entries with long lines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4872\"\u003e#4872\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix possible crash when \u003ccode\u003efmt: \u003c/code\u003e directives aren't on the top level (\u003ca href=\"https://redirect.github.com/psf/black/issues/4856\"\u003e#4856\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePreview style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003efmt: skip\u003c/code\u003e skipping the line after instead of the line it's on (\u003ca href=\"https://redirect.github.com/psf/black/issues/4855\"\u003e#4855\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary parentheses from the left-hand side of assignments while preserving\nmagic trailing commas and intentional multiline formatting (\u003ca href=\"https://redirect.github.com/psf/black/issues/4865\"\u003e#4865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e crashing on \u003ccode\u003ewith\u003c/code\u003e statements (\u003ca href=\"https://redirect.github.com/psf/black/issues/4853\"\u003e#4853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e crashing on annotated parameters (\u003ca href=\"https://redirect.github.com/psf/black/issues/4854\"\u003e#4854\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix new lines being added after imports with \u003ccode\u003e# fmt: skip\u003c/code\u003e on them (\u003ca href=\"https://redirect.github.com/psf/black/issues/4894\"\u003e#4894\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReleases now include arm64 Windows binaries and wheels (\u003ca href=\"https://redirect.github.com/psf/black/issues/4814\"\u003e#4814\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eIntegrations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eoutput-file\u003c/code\u003e input to GitHub Action \u003ccode\u003epsf/black\u003c/code\u003e to write formatter output to a\nfile for artifact capture and log cleanliness (\u003ca href=\"https://redirect.github.com/psf/black/issues/4824\"\u003e#4824\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e25.11.0\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnable base 3.14 support (\u003ca href=\"https://redirect.github.com/psf/black/issues/4804\"\u003e#4804\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for the new Python 3.14 t-string syntax introduced by PEP 750 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4805\"\u003e#4805\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bug where comments between \u003ccode\u003e# fmt: off\u003c/code\u003e and \u003ccode\u003e# fmt: on\u003c/code\u003e were reformatted (\u003ca href=\"https://redirect.github.com/psf/black/issues/4811\"\u003e#4811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eComments containing fmt directives now preserve their exact formatting instead of\nbeing normalized (\u003ca href=\"https://redirect.github.com/psf/black/issues/4811\"\u003e#4811\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e25.12.0\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBlack no longer supports running with Python 3.9 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4842\"\u003e#4842\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bug where comments preceding \u003ccode\u003e# fmt: off\u003c/code\u003e/\u003ccode\u003e# fmt: on\u003c/code\u003e blocks were incorrectly\nremoved, particularly affecting Jupytext's \u003ccode\u003e# %% [markdown]\u003c/code\u003e comments (\u003ca href=\"https://redirect.github.com/psf/black/issues/4845\"\u003e#4845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash when multiple \u003ccode\u003e# fmt: skip\u003c/code\u003e comments are used in a multi-part if-clause, on\nstring literals, or on dictionary entries with long lines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4872\"\u003e#4872\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix possible crash when \u003ccode\u003efmt: \u003c/code\u003e directives aren't on the top level (\u003ca href=\"https://redirect.github.com/psf/black/issues/4856\"\u003e#4856\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePreview style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003efmt: skip\u003c/code\u003e skipping the line after instead of the line it's on (\u003ca href=\"https://redirect.github.com/psf/black/issues/4855\"\u003e#4855\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove unnecessary parentheses from the left-hand side of assignments while preserving\nmagic trailing commas and intentional multiline formatting (\u003ca href=\"https://redirect.github.com/psf/black/issues/4865\"\u003e#4865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e crashing on \u003ccode\u003ewith\u003c/code\u003e statements (\u003ca href=\"https://redirect.github.com/psf/black/issues/4853\"\u003e#4853\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003efix_fmt_skip_in_one_liners\u003c/code\u003e crashing on annotated parameters (\u003ca href=\"https://redirect.github.com/psf/black/issues/4854\"\u003e#4854\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix new lines being added after imports with \u003ccode\u003e# fmt: skip\u003c/code\u003e on them (\u003ca href=\"https://redirect.github.com/psf/black/issues/4894\"\u003e#4894\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eReleases now include arm64 Windows binaries and wheels (\u003ca href=\"https://redirect.github.com/psf/black/issues/4814\"\u003e#4814\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eIntegrations\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eoutput-file\u003c/code\u003e input to GitHub Action \u003ccode\u003epsf/black\u003c/code\u003e to write formatter output to a\nfile for artifact capture and log cleanliness (\u003ca href=\"https://redirect.github.com/psf/black/issues/4824\"\u003e#4824\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e25.11.0\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnable base 3.14 support (\u003ca href=\"https://redirect.github.com/psf/black/issues/4804\"\u003e#4804\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for the new Python 3.14 t-string syntax introduced by PEP 750 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4805\"\u003e#4805\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bug where comments between \u003ccode\u003e# fmt: off\u003c/code\u003e and \u003ccode\u003e# fmt: on\u003c/code\u003e were reformatted (\u003ca href=\"https://redirect.github.com/psf/black/issues/4811\"\u003e#4811\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eComments containing fmt directives now preserve their exact formatting instead of\nbeing normalized (\u003ca href=\"https://redirect.github.com/psf/black/issues/4811\"\u003e#4811\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePreview style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove \u003ccode\u003emultiline_string_handling\u003c/code\u003e from \u003ccode\u003e--unstable\u003c/code\u003e to \u003ccode\u003e--preview\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4760\"\u003e#4760\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug where module docstrings would be treated as normal strings if preceded by\ncomments (\u003ca href=\"https://redirect.github.com/psf/black/issues/4764\"\u003e#4764\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/psf/black/commit/782e5605c86aab56be6f905da10dcd3e463fd9c2\"\u003e\u003ccode\u003e782e560\u003c/code\u003e\u003c/a\u003e Pin actions/checkout@v5.0.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4895\"\u003e#4895\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/f0f40945c1b0ebaa9ca733aca517610574c451d6\"\u003e\u003ccode\u003ef0f4094\u003c/code\u003e\u003c/a\u003e Fix new lines being added after imports with \u003ccode\u003e# fmt: skip\u003c/code\u003e on them (\u003ca href=\"https://redirect.github.com/psf/black/issues/4894\"\u003e#4894\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/70fc194172184861aafb418c124824cae0fbe3b0\"\u003e\u003ccode\u003e70fc194\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Fix \u003ccode\u003e# fmt: skip\u003c/code\u003e ignored in deeply nested expressions\u0026quot; (\u003ca href=\"https://redirect.github.com/psf/black/issues/4893\"\u003e#4893\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7044b145f4826e0d6e07178d89666856a8e37aff\"\u003e\u003ccode\u003e7044b14\u003c/code\u003e\u003c/a\u003e Prepare 25.12.0 release (\u003ca href=\"https://redirect.github.com/psf/black/issues/4891\"\u003e#4891\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/5b470f0e577f3c39e0f7d668934d587c0733a652\"\u003e\u003ccode\u003e5b470f0\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003e# fmt: skip\u003c/code\u003e ignored in deeply nested expressions (\u003ca href=\"https://redirect.github.com/psf/black/issues/4883\"\u003e#4883\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/1b342ef5b0433fc1ed61a7e05a65744bef706fc9\"\u003e\u003ccode\u003e1b342ef\u003c/code\u003e\u003c/a\u003e Fix crash when multiple \u003ccode\u003e# fmt: skip\u003c/code\u003e comments are used in multi-part if-clau...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7b265f16634155dafcca65f6122ef7ed8d14a67f\"\u003e\u003ccode\u003e7b265f1\u003c/code\u003e\u003c/a\u003e Pin Hatch to hopefully fix Docker builds (\u003ca href=\"https://redirect.github.com/psf/black/issues/4878\"\u003e#4878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/c9523f463fdc9d9f9f0e61ca92d9b37acdf0d8fc\"\u003e\u003ccode\u003ec9523f4\u003c/code\u003e\u003c/a\u003e Attempt to fix Docker build failures (\u003ca href=\"https://redirect.github.com/psf/black/issues/4876\"\u003e#4876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/0f376e0c35bcb29f87ce18eace30333a3e105841\"\u003e\u003ccode\u003e0f376e0\u003c/code\u003e\u003c/a\u003e Fix crashes when fmt directives are indented (\u003ca href=\"https://redirect.github.com/psf/black/issues/4856\"\u003e#4856\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/a8bfcc1040fdfce2e02cdd85dc8bf4e7abe0462f\"\u003e\u003ccode\u003ea8bfcc1\u003c/code\u003e\u003c/a\u003e Fix \u003ccode\u003efmt: skip\u003c/code\u003e skipping the line after instead of the line it's on (\u003ca href=\"https://redirect.github.com/psf/black/issues/4855\"\u003e#4855\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/25.1.0...25.12.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-toolbox` from 4.0.0 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/bbaed26084558ea5322b81bd9115b7c7603a3337\"\u003e\u003ccode\u003ebbaed26\u003c/code\u003e\u003c/a\u003e Fix warning for RequiresIOShield\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/69e5dbd249df3f79653268fbe9ee7d51188225b3\"\u003e\u003ccode\u003e69e5dbd\u003c/code\u003e\u003c/a\u003e Fix docs build and warn about | character in annotations before 3.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/79387fc9d183b492fb70b674bef40a9cfe8a6c25\"\u003e\u003ccode\u003e79387fc\u003c/code\u003e\u003c/a\u003e Deprecate and remove docs for requires.io shield as the service has shut down.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/caad11f3efb72d73795562048a5f5c582138cd95\"\u003e\u003ccode\u003ecaad11f\u003c/code\u003e\u003c/a\u003e Update tox configuration and appease mypy.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.0.0...v4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sphinx-needs` from 5.1.0 to 6.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/useblocks/sphinx-needs/releases\"\u003esphinx-needs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.2.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🧪 Fix schema benchmark tests by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1577\"\u003euseblocks/sphinx-needs#1577\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Improve schema process benchmarking by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1579\"\u003euseblocks/sphinx-needs#1579\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Reduce nested functions in \u003ccode\u003eget_ontology_warnings\u003c/code\u003e by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1578\"\u003euseblocks/sphinx-needs#1578\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema validation performance (pre-compute validators) by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1581\"\u003euseblocks/sphinx-needs#1581\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema validation performance (use jsonschema-rs) by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1582\"\u003euseblocks/sphinx-needs#1582\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema validation performance (improve reduce_needs) by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1583\"\u003euseblocks/sphinx-needs#1583\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema validation performance (cache recursive validators) by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1584\"\u003euseblocks/sphinx-needs#1584\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1421\"\u003euseblocks/sphinx-needs#1421\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🚀 Release v6.2.0 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1585\"\u003euseblocks/sphinx-needs#1585\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/useblocks/sphinx-needs/compare/6.1.1...6.2.0\"\u003ehttps://github.com/useblocks/sphinx-needs/compare/6.1.1...6.2.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev6.1.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Allow . in schema regex by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1568\"\u003euseblocks/sphinx-needs#1568\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 Fix schema network type injection by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1570\"\u003euseblocks/sphinx-needs#1570\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 needs.json for nullable fields by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1571\"\u003euseblocks/sphinx-needs#1571\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Remove mutable global variables by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1575\"\u003euseblocks/sphinx-needs#1575\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eneeds_schema_validation_enabled\u003c/code\u003e configuration by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1574\"\u003euseblocks/sphinx-needs#1574\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e✨ Add \u003ccode\u003eallow_type_coercion\u003c/code\u003e configuration for external/import \u003ccode\u003eneeds.json\u003c/code\u003e reads by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1573\"\u003euseblocks/sphinx-needs#1573\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/useblocks/sphinx-needs/compare/6.1.0...6.1.1\"\u003ehttps://github.com/useblocks/sphinx-needs/compare/6.1.0...6.1.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev6.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix schema rule severity by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1535\"\u003euseblocks/sphinx-needs#1535\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Co-locate dynamic and variant function docs by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1544\"\u003euseblocks/sphinx-needs#1544\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Add snapshot test for field schema by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1545\"\u003euseblocks/sphinx-needs#1545\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Derive core \u003ccode\u003eFieldSchema\u003c/code\u003e from \u003ccode\u003eNeedsCoreFields\u003c/code\u003e by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1546\"\u003euseblocks/sphinx-needs#1546\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Make \u003ccode\u003eincoming\u003c/code\u003e/\u003ccode\u003eoutgoing\u003c/code\u003e keys optional in \u003ccode\u003eneeds_extra_links\u003c/code\u003e by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1548\"\u003euseblocks/sphinx-needs#1548\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Removed unused code by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1550\"\u003euseblocks/sphinx-needs#1550\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Enable link to full schema example by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1538\"\u003euseblocks/sphinx-needs#1538\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Variable typo by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1555\"\u003euseblocks/sphinx-needs#1555\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Improve schema docs by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1554\"\u003euseblocks/sphinx-needs#1554\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix linkchecks by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1556\"\u003euseblocks/sphinx-needs#1556\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Run new ubc action on docs by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1541\"\u003euseblocks/sphinx-needs#1541\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve schema severity handling by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1561\"\u003euseblocks/sphinx-needs#1561\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e♻️ Early resolution of schema_debug_path by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1563\"\u003euseblocks/sphinx-needs#1563\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🚀 Release v6.1.0 by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1565\"\u003euseblocks/sphinx-needs#1565\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/useblocks/sphinx-needs/compare/6.0.1...6.1.0\"\u003ehttps://github.com/useblocks/sphinx-needs/compare/6.0.1...6.1.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev6.0.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e📚 Add release labels to changelog by \u003ca href=\"https://github.com/ubmarco\"\u003e\u003ccode\u003e@​ubmarco\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/pull/1523\"\u003euseblocks/sphinx-needs#1523\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/useblocks/sphinx-needs/blob/master/docs/changelog.rst\"\u003esphinx-needs's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.2.0\u003c/h2\u003e\n\u003cp\u003e:Released: 28.11.2025\n:Full Changelog: \u003ccode\u003ev6.1.1...v6.2.0 \u0026lt;https://github.com/useblocks/sphinx-needs/compare/6.1.1...92462bbc0a9559e01e1fa6b874a1031472dec1bf\u0026gt;\u003c/code\u003e__\u003c/p\u003e\n\u003cp\u003eThis release introduces performance improvements for schema validation, to make it ~3 times faster (:pr:\u003ccode\u003e1581\u003c/code\u003e, :pr:\u003ccode\u003e1582\u003c/code\u003e, :pr:\u003ccode\u003e1583\u003c/code\u003e, :pr:\u003ccode\u003e1584\u003c/code\u003e).\u003c/p\u003e\n\u003cp\u003eThis includes a change in dependencies, from \u003ccode\u003ejsonschema\u003c/code\u003e to \u003ccode\u003ejsonschema-rs\u003c/code\u003e for the core validation engine.\u003c/p\u003e\n\u003cp\u003e.. _\u003ccode\u003erelease:6.1.1\u003c/code\u003e:\u003c/p\u003e\n\u003ch2\u003e6.1.1\u003c/h2\u003e\n\u003cp\u003e:Released: 25.11.2025\n:Full Changelog: \u003ccode\u003ev6.1.0...v6.1.1 \u0026lt;https://github.com/useblocks/sphinx-needs/compare/6.1.0...6.1.1\u0026gt;\u003c/code\u003e__\u003c/p\u003e\n\u003cp\u003eThis release focuses on schema validation improvements and bug fixes.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e✨ Add \u003ccode\u003eneeds_schema_validation_enabled\u003c/code\u003e configuration (:pr:\u003ccode\u003e1574\u003c/code\u003e)\u003c/p\u003e\n\u003cp\u003eNew configuration option to disable schema validation entirely.\nThis is set to \u003ccode\u003eTrue\u003c/code\u003e by default, for backward compatibility,\nand provides an opt-out mechanism when schema validation is not needed.\u003c/p\u003e\n\u003cp\u003eSee :ref:\u003ccode\u003eneeds_schema_validation_enabled\u003c/code\u003e for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e✨ Add \u003ccode\u003eallow_type_coercion\u003c/code\u003e configuration for external/import \u003ccode\u003eneeds.json\u003c/code\u003e reads (:pr:\u003ccode\u003e1573\u003c/code\u003e)\u003c/p\u003e\n\u003cp\u003eNew configuration option for \u003ccode\u003eneeds_external_needs\u003c/code\u003e and the \u003ccode\u003eneedimport\u003c/code\u003e directive\nthat controls whether field values should be automatically coerced to expected types.\nFor example, enables/disables parsing comma-separated strings like \u003ccode\u003e\u0026quot;a,b,c\u0026quot;\u003c/code\u003e into\nlist types like \u003ccode\u003e[\u0026quot;a\u0026quot;, \u0026quot;b\u0026quot;, \u0026quot;c\u0026quot;]\u003c/code\u003e.\nSet to \u003ccode\u003eTrue\u003c/code\u003e by default for backward compatibility.\nSetting to \u003ccode\u003eFalse\u003c/code\u003e may improve performance by skipping additional parsing.\u003c/p\u003e\n\u003cp\u003eSee :ref:\u003ccode\u003eneeds_external_needs\u003c/code\u003e and :ref:\u003ccode\u003eneedimport\u003c/code\u003e for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e👌 Allow \u003ccode\u003e\\.\u003c/code\u003e in schema regex patterns (:pr:\u003ccode\u003e1568\u003c/code\u003e)\u003c/p\u003e\n\u003cp\u003eThe regex pattern \u003ccode\u003e\\.\u003c/code\u003e is now allowed in schema validations.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e🐛 Fix schema network type injection (:pr:\u003ccode\u003e1570\u003c/code\u003e)\u003c/p\u003e\n\u003cp\u003eFixed type injection mechanism that was failing for link types called \u003ccode\u003econtains\u003c/code\u003e or \u003ccode\u003eitems\u003c/code\u003e.\nConstrained the injection to specific schema path structure locations.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e🐛 Fix \u003ccode\u003eneeds.json\u003c/code\u003e schema for nullable fields (:pr:\u003ccode\u003e1571\u003c/code\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/cd2024fe2f4eb3e1c28616a47493e3e8728ea8a9\"\u003e\u003ccode\u003ecd2024f\u003c/code\u003e\u003c/a\u003e 🚀 Release v6.2.0 (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1585\"\u003e#1585\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/92462bbc0a9559e01e1fa6b874a1031472dec1bf\"\u003e\u003ccode\u003e92462bb\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1421\"\u003e#1421\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/6793c963429a12c6e603d6973dc5e4cc5d405b40\"\u003e\u003ccode\u003e6793c96\u003c/code\u003e\u003c/a\u003e 👌 Improve schema validation performance (cache recursive validators) (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1584\"\u003e#1584\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/c6d4eb9ad6e788522613eb6be7ebbb48eb5efe32\"\u003e\u003ccode\u003ec6d4eb9\u003c/code\u003e\u003c/a\u003e 👌 Improve schema validation performance (improve reduce_needs) (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1583\"\u003e#1583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/43ee1e60806eb44e47b8b92422ac9256825c39dd\"\u003e\u003ccode\u003e43ee1e6\u003c/code\u003e\u003c/a\u003e 👌 Improve schema validation performance (use jsonschema-rs) (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1582\"\u003e#1582\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/c4abff00fec914800d17eabd443e81c1a8e87195\"\u003e\u003ccode\u003ec4abff0\u003c/code\u003e\u003c/a\u003e 👌 Improve schema validation performance (pre-compute validators) (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1581\"\u003e#1581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/1eb8cf0a279d7547f4b9b174753f61ef04400549\"\u003e\u003ccode\u003e1eb8cf0\u003c/code\u003e\u003c/a\u003e 🔧 Reduce nested functions in \u003ccode\u003eget_ontology_warnings\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1578\"\u003e#1578\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/8817754d9be6a75cf09e74d5a2da5e2938c87ec9\"\u003e\u003ccode\u003e8817754\u003c/code\u003e\u003c/a\u003e 🧪 Improve schema process benchmarking (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1579\"\u003e#1579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/60b15806a071df8c8f20245cf8ce23c9fc22de66\"\u003e\u003ccode\u003e60b1580\u003c/code\u003e\u003c/a\u003e 🧪 Fix schema benchmark tests (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1577\"\u003e#1577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/useblocks/sphinx-needs/commit/f66bd94c54ef64e69a7794b09ab201172251e720\"\u003e\u003ccode\u003ef66bd94\u003c/code\u003e\u003c/a\u003e 🚀 Release v6.1.1 (\u003ca href=\"https://redirect.github.com/useblocks/sphinx-needs/issues/1576\"\u003e#1576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/useblocks/sphinx-needs/compare/5.1.0...6.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/kairoaraujo/repository-service-tuf/pull/67","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/kairoaraujo%2Frepository-service-tuf/issues/67","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/67/packages"}},{"old_version":"~=4.0.0","new_version":"~=4.1.0","update_type":"minor","path":null,"pr_created_at":"2025-12-08T08:25:44.000Z","version_change":"~=4.0.0 → ~=4.1.0","issue":{"uuid":"3705220955","node_id":"PR_kwDOPVoTmc63nhus","number":29,"state":"closed","title":"Update sphinx-toolbox requirement from ~=4.0.0 to ~=4.1.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-02T08:17:27.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-08T08:25:44.000Z","updated_at":"2026-01-02T08:17:29.000Z","time_to_close":2159503,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Update","packages":[{"name":"sphinx-toolbox","old_version":"~=4.0.0","new_version":"~=4.1.0","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) 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/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003ch2\u003e4.0.0\u003c/h2\u003e\n\u003cp\u003eThe :mod:\u003ccode\u003esphinx_toolbox.source\u003c/code\u003e module no longer enables the :mod:\u003ccode\u003esphinx_toolbox.github\u003c/code\u003e extension automatically.\nIf you have :confval:\u003ccode\u003esource_link_target\u003c/code\u003e set to \u003ccode\u003e'GitHub'\u003c/code\u003e you may need to enable the extension manually.\u003c/p\u003e\n\u003ch2\u003e3.10.0\u003c/h2\u003e\n\u003cp\u003eAllow GitHub branch to be specified for :rst:dir:\u003ccode\u003einstallation\u003c/code\u003e directive.\u003c/p\u003e\n\u003ch2\u003e3.9.0\u003c/h2\u003e\n\u003cp\u003eImproved support for Sphinx 8.1+\u003c/p\u003e\n\u003ch2\u003e3.8.2\u003c/h2\u003e\n\u003cp\u003e(BUG) Fix GitHub issue title parsing.\u003c/p\u003e\n\u003ch2\u003e3.8.0\u003c/h2\u003e\n\u003cp\u003eImproved support for Sphinx 7.3+\u003c/p\u003e\n\u003ch2\u003e3.7.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd :class:\u003ccode\u003esphinx_toolbox.more_autodoc.variables.PropertyDocumenter\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUse sphinx's \u003ccode\u003eHTML5Translator\u003c/code\u003e over \u003ccode\u003eHTMLTranslator\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.6.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDocumentation fixes in :mod:\u003ccode\u003e~.collapse\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eDunder methods added in Python 3.13 are hidden by :mod:\u003ccode\u003e~.autoprotocol\u003c/code\u003e (\u003ccode\u003e__non_callable_proto_members__\u003c/code\u003e, \u003ccode\u003e__firstlineno__\u003c/code\u003e, \u003ccode\u003e__replace__\u003c/code\u003e, \u003ccode\u003e__static_attributes__\u003c/code\u003e)\u003c/li\u003e\n\u003cli\u003emod:\u003ccode\u003e~.autoprotocol\u003c/code\u003e doesn't document subclasses of protocols, unless :class:\u003ccode\u003e~.Protocol\u003c/code\u003e is one of their direct base classes.\u003c/li\u003e\n\u003cli\u003eSupport for Sphinx 7.x\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e3.5.0\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/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/bbaed26084558ea5322b81bd9115b7c7603a3337\"\u003e\u003ccode\u003ebbaed26\u003c/code\u003e\u003c/a\u003e Fix warning for RequiresIOShield\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/69e5dbd249df3f79653268fbe9ee7d51188225b3\"\u003e\u003ccode\u003e69e5dbd\u003c/code\u003e\u003c/a\u003e Fix docs build and warn about | character in annotations before 3.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/79387fc9d183b492fb70b674bef40a9cfe8a6c25\"\u003e\u003ccode\u003e79387fc\u003c/code\u003e\u003c/a\u003e Deprecate and remove docs for requires.io shield as the service has shut down.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/caad11f3efb72d73795562048a5f5c582138cd95\"\u003e\u003ccode\u003ecaad11f\u003c/code\u003e\u003c/a\u003e Update tox configuration and appease mypy.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.0.0...v4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore 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/aholmes/aaronholmes.net/pull/29","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/aholmes%2Faaronholmes.net/issues/29","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/29/packages"}},{"old_version":"4.0.0","new_version":"4.1.0","update_type":"minor","path":null,"pr_created_at":"2025-12-08T06:25:24.000Z","version_change":"4.0.0 → 4.1.0","issue":{"uuid":"3704847239","node_id":"PR_kwDOKc-xss63mQ9Z","number":81,"state":"open","title":"Bump sphinx-toolbox from 4.0.0 to 4.1.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-12-08T06:25:24.000Z","updated_at":"2025-12-08T06:26:23.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.0","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"}],"path":null,"ecosystem":"pip"},"body":"Bumps [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) from 4.0.0 to 4.1.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/releases\"\u003esphinx-toolbox's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 4.1.0\u003c/h2\u003e\n\u003cp\u003eAutomatically copied from \u003ca href=\"https://pypi.org/project/sphinx-toolbox/4.1.0\"\u003ePyPI\u003c/a\u003e.\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003ePowered by OctoCheese\u003cbr /\u003e\n\u003ca href=\"https://octocheese.readthedocs.io\"\u003e🎄 docs\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese\"\u003e☃ repo\u003c/a\u003e | \u003ca href=\"https://github.com/domdfcoding/octocheese/issues\"\u003e🎅 issues\u003c/a\u003e | \u003ca href=\"https://github.com/marketplace/octocheese\"\u003e🎁 marketplace\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\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/sphinx-toolbox/sphinx-toolbox/blob/master/doc-source/changelog.rst\"\u003esphinx-toolbox's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e===============\nChangelog\u003c/h1\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/c0c95104fb6165363472e950008303c275d1a16c\"\u003e\u003ccode\u003ec0c9510\u003c/code\u003e\u003c/a\u003e Bump version v4.0.0 -\u0026gt; v4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/64260df2b81d668589cff88d08a3c29405217400\"\u003e\u003ccode\u003e64260df\u003c/code\u003e\u003c/a\u003e Don't error on pkg-resources deprecation and cap setuptools for tests.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/5f37c33a4f1acff9669de756f28219716bb3e418\"\u003e\u003ccode\u003e5f37c33\u003c/code\u003e\u003c/a\u003e Add roman to requirements.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/ac2e1f5f1d18bfe0f8fe48cb6f2be7e1e27a648c\"\u003e\u003ccode\u003eac2e1f5\u003c/code\u003e\u003c/a\u003e Lint\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/cd9afedcc1ad07c19f1eaf5223031afad451a018\"\u003e\u003ccode\u003ecd9afed\u003c/code\u003e\u003c/a\u003e Fix GitHub issue title parser (again)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/d74c966146f29f5d72353f7527030032ba6bc2be\"\u003e\u003ccode\u003ed74c966\u003c/code\u003e\u003c/a\u003e typing.Union is now :py:class: not :py:data:\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/bbaed26084558ea5322b81bd9115b7c7603a3337\"\u003e\u003ccode\u003ebbaed26\u003c/code\u003e\u003c/a\u003e Fix warning for RequiresIOShield\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/69e5dbd249df3f79653268fbe9ee7d51188225b3\"\u003e\u003ccode\u003e69e5dbd\u003c/code\u003e\u003c/a\u003e Fix docs build and warn about | character in annotations before 3.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/79387fc9d183b492fb70b674bef40a9cfe8a6c25\"\u003e\u003ccode\u003e79387fc\u003c/code\u003e\u003c/a\u003e Deprecate and remove docs for requires.io shield as the service has shut down.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/commit/caad11f3efb72d73795562048a5f5c582138cd95\"\u003e\u003ccode\u003ecaad11f\u003c/code\u003e\u003c/a\u003e Update tox configuration and appease mypy.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sphinx-toolbox/sphinx-toolbox/compare/v4.0.0...v4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=sphinx-toolbox\u0026package-manager=pip\u0026previous-version=4.0.0\u0026new-version=4.1.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/Senzing/mapper-safegraph/pull/81","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Senzing%2Fmapper-safegraph/issues/81","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/81/packages"}},{"old_version":"4.0.0","new_version":"4.1.0","update_type":"minor","path":null,"pr_created_at":"2025-12-08T04:28:42.000Z","version_change":"4.0.0 → 4.1.0","issue":{"uuid":"3704597719","node_id":"PR_kwDOMftbFc63lcFZ","number":186,"state":"closed","title":"Bump the py-updates group across 1 directory with 77 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-12-15T04:19:04.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-08T04:28:42.000Z","updated_at":"2025-12-15T04:19:06.000Z","time_to_close":604222,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"py-updates","update_count":77,"packages":[{"name":"awscli","old_version":"1.40.17","new_version":"1.43.10","repository_url":"https://github.com/aws/aws-cli"},{"name":"polars","old_version":"1.28.1","new_version":"1.35.2","repository_url":"https://github.com/pola-rs/polars"},{"name":"requests","old_version":"2.32.3","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"biopython","old_version":"1.85","new_version":"1.86","repository_url":"https://github.com/biopython/biopython"},{"name":"boto3","old_version":"1.38.18","new_version":"1.42.4","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.38.18","new_version":"1.42.4","repository_url":"https://github.com/boto/botocore"},{"name":"certifi","old_version":"2025.4.26","new_version":"2025.11.12","repository_url":"https://github.com/certifi/python-certifi"},{"name":"charset-normalizer","old_version":"3.4.2","new_version":"3.4.4","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"cloudpathlib","old_version":"0.21.1","new_version":"0.23.0","repository_url":"https://github.com/drivendataorg/cloudpathlib"},{"name":"docutils","old_version":"0.19","new_version":"0.22.3","repository_url":"https://github.com/rtfd/recommonmark"},{"name":"idna","old_version":"3.10","new_version":"3.11","repository_url":"https://github.com/kjd/idna"},{"name":"jellyfish","old_version":"1.2.0","new_version":"1.2.1"},{"name":"markdown-it-py","old_version":"3.0.0","new_version":"4.0.0","repository_url":"https://github.com/executablebooks/markdown-it-py"},{"name":"numpy","old_version":"2.2.5","new_version":"2.3.5","repository_url":"https://github.com/numpy/numpy"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"pyarrow","old_version":"20.0.0","new_version":"22.0.0","repository_url":"https://github.com/apache/arrow"},{"name":"pygments","old_version":"2.19.1","new_version":"2.19.2","repository_url":"https://github.com/pygments/pygments"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"rich","old_version":"14.0.0","new_version":"14.2.0","repository_url":"https://github.com/Textualize/rich"},{"name":"rsa","old_version":"4.7.2","new_version":"4.9.1","repository_url":"https://github.com/sybrenstuvel/python-rsa"},{"name":"s3transfer","old_version":"0.12.0","new_version":"0.16.0","repository_url":"https://github.com/boto/s3transfer"},{"name":"structlog","old_version":"25.3.0","new_version":"25.5.0","repository_url":"https://github.com/hynek/structlog"},{"name":"urllib3","old_version":"2.4.0","new_version":"2.6.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"zstandard","old_version":"0.23.0","new_version":"0.25.0","repository_url":"https://github.com/indygreg/python-zstandard"},{"name":"boto3-stubs","old_version":"1.38.18","new_version":"1.42.4","repository_url":"https://github.com/youtype/mypy_boto3_builder"},{"name":"botocore-stubs","old_version":"1.38.18","new_version":"1.42.4","repository_url":"https://github.com/youtype/botocore-stubs"},{"name":"cffi","old_version":"1.17.1","new_version":"2.0.0","repository_url":"https://github.com/python-cffi/cffi"},{"name":"coverage","old_version":"7.8.0","new_version":"7.12.0","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cryptography","old_version":"44.0.3","new_version":"46.0.3","repository_url":"https://github.com/pyca/cryptography"},{"name":"freezegun","old_version":"1.5.1","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"iniconfig","old_version":"2.1.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"markupsafe","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/pallets/markupsafe"},{"name":"moto","old_version":"5.1.4","new_version":"5.1.18","repository_url":"https://github.com/getmoto/moto"},{"name":"mypy","old_version":"1.15.0","new_version":"1.19.0","repository_url":"https://github.com/python/mypy"},{"name":"mypy-boto3-s3","old_version":"1.38.0","new_version":"1.42.3","repository_url":"https://github.com/youtype/mypy_boto3_builder"},{"name":"pycparser","old_version":"2.22","new_version":"2.23","repository_url":"https://github.com/eliben/pycparser"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"responses","old_version":"0.25.7","new_version":"0.25.8","repository_url":"https://github.com/getsentry/responses"},{"name":"ruff","old_version":"0.11.10","new_version":"0.14.8","repository_url":"https://github.com/astral-sh/ruff"},{"name":"types-awscrt","old_version":"0.27.2","new_version":"0.29.2","repository_url":"https://github.com/youtype/types-awscrt"},{"name":"types-requests","old_version":"2.32.0.20250515","new_version":"2.32.4.20250913","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-s3transfer","old_version":"0.12.0","new_version":"0.15.0","repository_url":"https://github.com/youtype/types-s3transfer"},{"name":"typing-extensions","old_version":"4.13.2","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"werkzeug","old_version":"3.1.3","new_version":"3.1.4","repository_url":"https://github.com/pallets/werkzeug"},{"name":"xmltodict","old_version":"0.14.2","new_version":"1.0.2","repository_url":"https://github.com/martinblech/xmltodict"},{"name":"alabaster","old_version":"0.7.16","new_version":"1.0.0","repository_url":"https://github.com/sphinx-doc/alabaster"},{"name":"anyio","old_version":"4.9.0","new_version":"4.12.0","repository_url":"https://github.com/agronholm/anyio"},{"name":"beautifulsoup4","old_version":"4.13.4","new_version":"4.14.3"},{"name":"cachecontrol","old_version":"0.14.3","new_version":"0.14.4","repository_url":"https://github.com/psf/cachecontrol"},{"name":"click","old_version":"8.2.0","new_version":"8.3.1","repository_url":"https://github.com/pallets/click"},{"name":"contourpy","old_version":"1.3.2","new_version":"1.3.3","repository_url":"https://github.com/contourpy/contourpy"},{"name":"filelock","old_version":"3.18.0","new_version":"3.20.0","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"fonttools","old_version":"4.58.0","new_version":"4.61.0","repository_url":"https://github.com/fonttools/fonttools"},{"name":"furo","old_version":"2024.8.6","new_version":"2025.9.25","repository_url":"https://github.com/pradyunsg/furo"},{"name":"kiwisolver","old_version":"1.4.8","new_version":"1.4.9","repository_url":"https://github.com/nucleic/kiwi"},{"name":"matplotlib","old_version":"3.10.3","new_version":"3.10.7","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"mdit-py-plugins","old_version":"0.4.2","new_version":"0.5.0","repository_url":"https://github.com/executablebooks/mdit-py-plugins"},{"name":"more-itertools","old_version":"10.7.0","new_version":"10.8.0","repository_url":"https://github.com/more-itertools/more-itertools"},{"name":"msgpack","old_version":"1.1.0","new_version":"1.1.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"pillow","old_version":"11.2.1","new_version":"12.0.0","repository_url":"https://github.com/python-pillow/Pillow"},{"name":"platformdirs","old_version":"4.3.8","new_version":"4.5.1","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pyparsing","old_version":"3.2.3","new_version":"3.2.5","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"ruamel-yaml","old_version":"0.18.10","new_version":"0.18.16"},{"name":"ruamel-yaml-clib","old_version":"0.2.12","new_version":"0.2.15"},{"name":"soupsieve","old_version":"2.7","new_version":"2.8","repository_url":"https://github.com/facelessuser/soupsieve"},{"name":"sphinx","old_version":"7.3.7","new_version":"9.0.4","repository_url":"https://github.com/sphinx-doc/sphinx"},{"name":"sphinx-autobuild","old_version":"2024.10.3","new_version":"2025.8.25","repository_url":"https://github.com/sphinx-doc/sphinx-autobuild"},{"name":"sphinx-autodoc-typehints","old_version":"2.3.0","new_version":"3.5.2","repository_url":"https://github.com/tox-dev/sphinx-autodoc-typehints"},{"name":"sphinx-jinja2-compat","old_version":"0.3.0","new_version":"0.4.1","repository_url":"https://github.com/sphinx-toolbox/sphinx-jinja2-compat"},{"name":"sphinx-prompt","old_version":"1.8.0","new_version":"1.10.2","repository_url":"https://github.com/sbrunner/sphinx-prompt"},{"name":"sphinx-tabs","old_version":"3.4.5","new_version":"3.4.7","repository_url":"https://github.com/executablebooks/sphinx-tabs"},{"name":"sphinx-toolbox","old_version":"4.0.0","new_version":"4.1.0","repository_url":"https://github.com/sphinx-toolbox/sphinx-toolbox"},{"name":"sphinxext-opengraph","old_version":"0.10.0","new_version":"0.13.0","repository_url":"https://github.com/sphinx-doc/sphinxext-opengraph"},{"name":"starlette","old_version":"0.46.2","new_version":"0.50.0","repository_url":"https://github.com/Kludex/starlette"},{"name":"uvicorn","old_version":"0.34.2","new_version":"0.38.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"watchfiles","old_version":"1.0.5","new_version":"1.1.1","repository_url":"https://github.com/samuelcolvin/watchfiles"}],"path":null,"ecosystem":"pip"},"body":"Bumps the py-updates group with 77 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [awscli](https://github.com/aws/aws-cli) | `1.40.17` | `1.43.10` |\n| [polars](https://github.com/pola-rs/polars) | `1.28.1` | `1.35.2` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.32.5` |\n| [biopython](https://github.com/biopython/biopython) | `1.85` | `1.86` |\n| [boto3](https://github.com/boto/boto3) | `1.38.18` | `1.42.4` |\n| [botocore](https://github.com/boto/botocore) | `1.38.18` | `1.42.4` |\n| [certifi](https://github.com/certifi/python-certifi) | `2025.4.26` | `2025.11.12` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.2` | `3.4.4` |\n| [cloudpathlib](https://github.com/drivendataorg/cloudpathlib) | `0.21.1` | `0.23.0` |\n| [docutils](https://github.com/rtfd/recommonmark) | `0.19` | `0.22.3` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.11` |\n| [jellyfish](https://jellyfish.jpt.sh/) | `1.2.0` | `1.2.1` |\n| [markdown-it-py](https://github.com/executablebooks/markdown-it-py) | `3.0.0` | `4.0.0` |\n| [numpy](https://github.com/numpy/numpy) | `2.2.5` | `2.3.5` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [pyarrow](https://github.com/apache/arrow) | `20.0.0` | `22.0.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.19.1` | `2.19.2` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [rich](https://github.com/Textualize/rich) | `14.0.0` | `14.2.0` |\n| [rsa](https://github.com/sybrenstuvel/python-rsa) | `4.7.2` | `4.9.1` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.12.0` | `0.16.0` |\n| [structlog](https://github.com/hynek/structlog) | `25.3.0` | `25.5.0` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.4.0` | `2.6.0` |\n| [zstandard](https://github.com/indygreg/python-zstandard) | `0.23.0` | `0.25.0` |\n| [boto3-stubs](https://github.com/youtype/mypy_boto3_builder) | `1.38.18` | `1.42.4` |\n| [botocore-stubs](https://github.com/youtype/botocore-stubs) | `1.38.18` | `1.42.4` |\n| [cffi](https://github.com/python-cffi/cffi) | `1.17.1` | `2.0.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.8.0` | `7.12.0` |\n| [cryptography](https://github.com/pyca/cryptography) | `44.0.3` | `46.0.3` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.1` | `1.5.5` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.1.0` | `2.3.0` |\n| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` |\n| [moto](https://github.com/getmoto/moto) | `5.1.4` | `5.1.18` |\n| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.19.0` |\n| [mypy-boto3-s3](https://github.com/youtype/mypy_boto3_builder) | `1.38.0` | `1.42.3` |\n| [pycparser](https://github.com/eliben/pycparser) | `2.22` | `2.23` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.2` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [responses](https://github.com/getsentry/responses) | `0.25.7` | `0.25.8` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.11.10` | `0.14.8` |\n| [types-awscrt](https://github.com/youtype/types-awscrt) | `0.27.2` | `0.29.2` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.32.0.20250515` | `2.32.4.20250913` |\n| [types-s3transfer](https://github.com/youtype/types-s3transfer) | `0.12.0` | `0.15.0` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.13.2` | `4.15.0` |\n| [werkzeug](https://github.com/pallets/werkzeug) | `3.1.3` | `3.1.4` |\n| [xmltodict](https://github.com/martinblech/xmltodict) | `0.14.2` | `1.0.2` |\n| [alabaster](https://github.com/sphinx-doc/alabaster) | `0.7.16` | `1.0.0` |\n| [anyio](https://github.com/agronholm/anyio) | `4.9.0` | `4.12.0` |\n| [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) | `4.13.4` | `4.14.3` |\n| [cachecontrol](https://github.com/psf/cachecontrol) | `0.14.3` | `0.14.4` |\n| [click](https://github.com/pallets/click) | `8.2.0` | `8.3.1` |\n| [contourpy](https://github.com/contourpy/contourpy) | `1.3.2` | `1.3.3` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.18.0` | `3.20.0` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.58.0` | `4.61.0` |\n| [furo](https://github.com/pradyunsg/furo) | `2024.8.6` | `2025.9.25` |\n| [kiwisolver](https://github.com/nucleic/kiwi) | `1.4.8` | `1.4.9` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.10.3` | `3.10.7` |\n| [mdit-py-plugins](https://github.com/executablebooks/mdit-py-plugins) | `0.4.2` | `0.5.0` |\n| [more-itertools](https://github.com/more-itertools/more-itertools) | `10.7.0` | `10.8.0` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.0` | `1.1.2` |\n| [pillow](https://github.com/python-pillow/Pillow) | `11.2.1` | `12.0.0` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.8` | `4.5.1` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.2.3` | `3.2.5` |\n| ruamel-yaml | `0.18.10` | `0.18.16` |\n| ruamel-yaml-clib | `0.2.12` | `0.2.15` |\n| [soupsieve](https://github.com/facelessuser/soupsieve) | `2.7` | `2.8` |\n| [sphinx](https://github.com/sphinx-doc/sphinx) | `7.3.7` | `9.0.4` |\n| [sphinx-autobuild](https://github.com/sphinx-doc/sphinx-autobuild) | `2024.10.3` | `2025.8.25` |\n| [sphinx-autodoc-typehints](https://github.com/tox-dev/sphinx-autodoc-typehints) | `2.3.0` | `3.5.2` |\n| [sphinx-jinja2-compat](https://github.com/sphinx-toolbox/sphinx-jinja2-compat) | `0.3.0` | `0.4.1` |\n| [sphinx-prompt](https://github.com/sbrunner/sphinx-prompt) | `1.8.0` | `1.10.2` |\n| [sphinx-tabs](https://github.com/executablebooks/sphinx-tabs) | `3.4.5` | `3.4.7` |\n| [sphinx-toolbox](https://github.com/sphinx-toolbox/sphinx-toolbox) | `4.0.0` | `4.1.0` |\n| [sphinxext-opengraph](https://github.com/sphinx-doc/sphinxext-opengraph) | `0.10.0` | `0.13.0` |\n| [starlette](https://github.com/Kludex/starlette) | `0.46.2` | `0.50.0` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.34.2` | `0.38.0` |\n| [watchfiles](https://github.com/samuelcolvin/watchfiles) | `1.0.5` | `1.1.1` |\n\n\nUpdates `awscli` from 1.40.17 to 1.43.10\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/3499274cba0231d38086cb4389f4fda3ca3cbf2c\"\u003e\u003ccode\u003e3499274\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.10'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/0641f4e15bcd81c6321cf8289e2ef988143b4f31\"\u003e\u003ccode\u003e0641f4e\u003c/code\u003e\u003c/a\u003e Bumping version to 1.43.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/0621f58add8d91f0069e813b173624f738991093\"\u003e\u003ccode\u003e0621f58\u003c/code\u003e\u003c/a\u003e Update changelog based on model updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/f2ee76ccc9c8bff9e079118923be05df483e0d01\"\u003e\u003ccode\u003ef2ee76c\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.9'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/69cf052063a23eb4172bc1ecb338922227336437\"\u003e\u003ccode\u003e69cf052\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.9' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/794d13709a2f6fd64231ae739177d8dc18e7bfb3\"\u003e\u003ccode\u003e794d137\u003c/code\u003e\u003c/a\u003e Bumping version to 1.43.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/90a22b9417f34b8399a3086798a1c3f55f0ae3b2\"\u003e\u003ccode\u003e90a22b9\u003c/code\u003e\u003c/a\u003e Update changelog based on model updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/ece1daabc883acbc7156caaeb5faf883e5a87166\"\u003e\u003ccode\u003eece1daa\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.8'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/f4787fad94308cadbe8a41b78b509069d81dbeda\"\u003e\u003ccode\u003ef4787fa\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.43.8' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aws/aws-cli/commit/06b7bfebc5b604772f8bef8e7f958bb78916be18\"\u003e\u003ccode\u003e06b7bfe\u003c/code\u003e\u003c/a\u003e Bumping version to 1.43.8\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aws/aws-cli/compare/1.40.17...1.43.10\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `polars` from 1.28.1 to 1.35.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pola-rs/polars/releases\"\u003epolars's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePython Polars 1.35.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect \u003ccode\u003edrop_nans()\u003c/code\u003e result when used in \u003ccode\u003egroup_by()\u003c/code\u003e / \u003ccode\u003eover()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/pull/25146\"\u003epola-rs/polars#25146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix handling \u003ccode\u003eNull\u003c/code\u003e dtype in \u003ccode\u003eApplyExpr\u003c/code\u003e on \u003ccode\u003egroup_by\u003c/code\u003e(\u003ca href=\"https://redirect.github.com/pola-rs/polars/pull/25077\"\u003epola-rs/polars#25077\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix assertion panic on \u003ccode\u003egroup_by\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/pull/25179\"\u003epola-rs/polars#25179\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix Wide-table join performance regression (\u003ca href=\"https://redirect.github.com/pola-rs/polars/pull/25222\"\u003epola-rs/polars#25222\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThank you to all our contributors for making this release possible!\n\u003ca href=\"https://github.com/coastalwhite\"\u003e\u003ccode\u003e@​coastalwhite\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/kdn36\"\u003e\u003ccode\u003e@​kdn36\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/nameexhaustion\"\u003e\u003ccode\u003e@​nameexhaustion\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/ritchie46\"\u003e\u003ccode\u003e@​ritchie46\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ePython Polars 1.35.1\u003c/h2\u003e\n\u003ch2\u003e🚀 Performance improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDon't recompute full rolling moment window when NaNs/nulls leave the window (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25078\"\u003e#25078\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSkip filtering scan IR if no paths were filtered (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25037\"\u003e#25037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOptimize ipc stream read performance (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/24671\"\u003e#24671\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e✨ Enhancements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport BYTE_ARRAY backed Decimals in Parquet (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25076\"\u003e#25076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003eglimpse\u003c/code\u003e to return a \u003ccode\u003eDataFrame\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/24803\"\u003e#24803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eallow_empty\u003c/code\u003e flag to \u003ccode\u003eitem\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25048\"\u003e#25048\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐞 Bug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003eSQL\u003c/code\u003e interface should use logical, not bitwise, behaviour for unary \u0026quot;NOT\u0026quot; operator (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25091\"\u003e#25091\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix panic if scan predicate produces 0 length mask (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25089\"\u003e#25089\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnsure SQL table alias resolution checks against CTE aliases on fallback (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25071\"\u003e#25071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePanic in \u003ccode\u003egroup_by_dynamic\u003c/code\u003e with \u003ccode\u003egroup_by\u003c/code\u003e and multiple chunks (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25075\"\u003e#25075\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMinor improvement to internal \u003ccode\u003eis_pycapsule\u003c/code\u003e utility function (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25073\"\u003e#25073\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix panic when using struct field as join key (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25059\"\u003e#25059\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow broadcast in \u003ccode\u003egroup_by\u003c/code\u003e for \u003ccode\u003eApplyExpr\u003c/code\u003e and \u003ccode\u003eBinaryExpr\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25053\"\u003e#25053\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix field metadata for nested categorical PyCapsule export (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25052\"\u003e#25052\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBlock predicate pushdown when \u003ccode\u003egroup_by\u003c/code\u003e key values are changed (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25032\"\u003e#25032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eGroup-By aggregation problems caused by \u003ccode\u003eAmortSeries\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25043\"\u003e#25043\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDon't push down predicates passed inserted cache nodes (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25042\"\u003e#25042\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow for negative time in \u003ccode\u003egroup_by_dynamic\u003c/code\u003e iterator (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25041\"\u003e#25041\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📖 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix typo in public dataset URL (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25044\"\u003e#25044\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🛠️ Other improvements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDisable recursive CSPE for now (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25085\"\u003e#25085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChange group length mismatch error to \u003ccode\u003eShapeError\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25004\"\u003e#25004\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate toolchain (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25007\"\u003e#25007\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThank you to all our contributors for making this release possible!\n\u003ca href=\"https://github.com/Kevin-Patyk\"\u003e\u003ccode\u003e@​Kevin-Patyk\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/Liyixin95\"\u003e\u003ccode\u003e@​Liyixin95\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/alexander-beedie\"\u003e\u003ccode\u003e@​alexander-beedie\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/coastalwhite\"\u003e\u003ccode\u003e@​coastalwhite\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/kdn36\"\u003e\u003ccode\u003e@​kdn36\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/nameexhaustion\"\u003e\u003ccode\u003e@​nameexhaustion\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/orlp\"\u003e\u003ccode\u003e@​orlp\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/r-brink\"\u003e\u003ccode\u003e@​r-brink\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/ritchie46\"\u003e\u003ccode\u003e@​ritchie46\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/stijnherfst\"\u003e\u003ccode\u003e@​stijnherfst\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/c5f0f25b2ed6498dd47d3ec619ef3a1a90c0788b\"\u003e\u003ccode\u003ec5f0f25\u003c/code\u003e\u003c/a\u003e bump version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/29dc1db9cc3d9c2209021dc423bcbff72958bb18\"\u003e\u003ccode\u003e29dc1db\u003c/code\u003e\u003c/a\u003e fix: Wide-table join performance regression (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25222\"\u003e#25222\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/fbd57cdf2b82d5575205ef8aa14c0d96f29c002a\"\u003e\u003ccode\u003efbd57cd\u003c/code\u003e\u003c/a\u003e fix: Fix assertion panic on \u003ccode\u003egroup_by\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25179\"\u003e#25179\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/8abe6ef5f4938f6bb2f010a24f7d361138c82895\"\u003e\u003ccode\u003e8abe6ef\u003c/code\u003e\u003c/a\u003e fix: Fix handling \u003ccode\u003eNull\u003c/code\u003e dtype in \u003ccode\u003eApplyExpr\u003c/code\u003e on \u003ccode\u003egroup_by\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25077\"\u003e#25077\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/c19e4c07fc66776f1826a0251f118a2ad4bb3047\"\u003e\u003ccode\u003ec19e4c0\u003c/code\u003e\u003c/a\u003e fix: Invert \u003ccode\u003edrop_nans\u003c/code\u003e filtering in group-by context (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25146\"\u003e#25146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/a99ad3495d0b4bb71a956eb3ab5e23595df756db\"\u003e\u003ccode\u003ea99ad34\u003c/code\u003e\u003c/a\u003e fix: The \u003ccode\u003eSQL\u003c/code\u003e interface should use logical, not bitwise, behaviour for unary...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/84a0feea2790c6d2ed5be2661409230c1ba9eb00\"\u003e\u003ccode\u003e84a0fee\u003c/code\u003e\u003c/a\u003e Python Polars 1.35.1 (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25090\"\u003e#25090\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/b9e313641cd7546d4f29ed93dde0cd3b74e799c2\"\u003e\u003ccode\u003eb9e3136\u003c/code\u003e\u003c/a\u003e refactor(rust): Remove old join projection pushdown logic (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25088\"\u003e#25088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/7b423b6d6d8074826ef950c33a6931f78bc4d952\"\u003e\u003ccode\u003e7b423b6\u003c/code\u003e\u003c/a\u003e fix: Fix panic if scan predicate produces 0 length mask (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25089\"\u003e#25089\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pola-rs/polars/commit/ce396f450cc261c7b34bd7f00408fc9152eb6d35\"\u003e\u003ccode\u003ece396f4\u003c/code\u003e\u003c/a\u003e refactor: Disable recursive CSPE for now (\u003ca href=\"https://redirect.github.com/pola-rs/polars/issues/25085\"\u003e#25085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pola-rs/polars/compare/py-1.28.1...py-1.35.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.32.3 to 2.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/releases\"\u003erequests's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.32.5\u003c/h2\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b25c87d7cb8d6a18a37fa12442b5f883f9e41741\"\u003e\u003ccode\u003eb25c87d\u003c/code\u003e\u003c/a\u003e v2.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/131e506079d97606e4214cc4d87b780ac478de7a\"\u003e\u003ccode\u003e131e506\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/7010\"\u003e#7010\u003c/a\u003e from psf/dependabot/github_actions/actions/checkout-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b336cb2bc616a63a93c6470c558fc1f576b77f90\"\u003e\u003ccode\u003eb336cb2\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/46e939b5525d9c72b677340985582b04b128478a\"\u003e\u003ccode\u003e46e939b\u003c/code\u003e\u003c/a\u003e Update publish workflow to use \u003ccode\u003eartifact-id\u003c/code\u003e instead of \u003ccode\u003ename\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4b9c546aa3f35fca6ca24945376fe7462bb007c4\"\u003e\u003ccode\u003e4b9c546\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6999\"\u003e#6999\u003c/a\u003e from psf/dependabot/github_actions/step-security/har...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7618dbef01d333f23ba4b9c4d97397b06dd89cb6\"\u003e\u003ccode\u003e7618dbe\u003c/code\u003e\u003c/a\u003e Bump step-security/harden-runner from 2.12.0 to 2.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2edca11103c1c27dd8b572dab544b7f48cf3b446\"\u003e\u003ccode\u003e2edca11\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 and drop support for Python 3.8 (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6993\"\u003e#6993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/fec96cd5976ad763e45bac9a033d62cca1877a00\"\u003e\u003ccode\u003efec96cd\u003c/code\u003e\u003c/a\u003e Update Makefile rules (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6996\"\u003e#6996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/d58d8aa2f45c3575268d6d5250745ef69f9cf8b7\"\u003e\u003ccode\u003ed58d8aa\u003c/code\u003e\u003c/a\u003e docs: clarify timeout parameter uses seconds in Session.request (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6994\"\u003e#6994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/91a3eabd3dcc4d7f36dd8249e4777a90ef9b4305\"\u003e\u003ccode\u003e91a3eab\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.5 to 3.29.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.3...v2.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `biopython` from 1.85 to 1.86\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/biopython/biopython/blob/master/NEWS.rst\"\u003ebiopython's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e28 October 2025: Biopython 1.86\u003c/h1\u003e\n\u003cp\u003eThis release of Biopython supports Python 3.10, 3.11, 3.12, 3.13 and 3.14.  It\nhas also been tested on PyPy3.10 v7.3.19.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.SearchIO\u003c/code\u003e now supports parsing the tabular and plain text output of\n\u003ccode\u003eInfernal \u0026lt;http://eddylab.org/infernal/\u0026gt;\u003c/code\u003e (v1.0.0+) RNA search tool. The\nformat names are \u003ccode\u003einfernal-tab\u003c/code\u003e and \u003ccode\u003einfernal-text\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe default value of the gap score of a \u003ccode\u003ePairwiseAligner\u003c/code\u003e object was changed\nin this release.  Previously, for consistency with \u003ccode\u003eBio.pairwise2\u003c/code\u003e, the\ndefault value for gap score was 0.  However, this means that a mismatch, an\ninsertion followed by a deletion, and a deletion followed by an insertion all\nget assigned a score of 0.  The aligner then finds a large number of alignments\nthat are logically the same, but have trivial differences between them.  For\nexample, aligning AAACAAA to AAAGAAA previously yielded the following three\nalignments, all with score 6::\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e AAACAAA        AAAC-AAA        AAA-CAAA\n AAAGAAA        AAA-GAAA        AAAG-AAA\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eWith the new default parameter for the gap score, only the first alignment is\nreturned.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.PDBIO\u003c/code\u003e now ensures that b-factor values are always at most 6 characters to\nensure that we do not violate the wwPDB specification. This should not have an impact\non the majority of uses, as b-factor values are generally small (less than 100). When\n1000 \u0026lt;= b-factor \u0026lt; 10_000, the value is rounded to a single decimal place. When,\n10_000 \u0026lt;= b-factor \u0026lt; 999_999, the value is rounded to zero decimal places. Values\nabove 999_999 are now clamped. The justification for this is the rise in the b-factor\nfield being used for additional metadata, typically from computational tools.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.Align\u003c/code\u003e now provides a method \u003ccode\u003eAlignment.from_alignments_with_same_reference\u003c/code\u003e\nto construct a multiple sequence alignment from a collection of alignments\nthat share the same reference sequence.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.PDBIO\u003c/code\u003e will now raise module specific warnings:\n\u003ccode\u003eBio.PDB.PDBExceptions.PDBIOWarning\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eBio.PDB.SCADIO\u003c/code\u003e now supports object selection by color in the OpenSCAD\noutput file.  This enables generation of separate STL files for each color for\nprinting protein structures on multi-material 3D printers.\u003c/p\u003e\n\u003cp\u003eThe \u003ccode\u003eiplotx\u003c/code\u003e library is mentioned in the Tutorial as an option to visualise\ntrees using complex style options.\u003c/p\u003e\n\u003cp\u003eMany thanks to the Biopython developers and community for making this release\npossible, especially the following contributors:\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\u003eSee full diff in \u003ca href=\"https://github.com/biopython/biopython/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.18 to 1.42.4\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/87d85be3865d8f8de7df2188032fb5ebad5883a9\"\u003e\u003ccode\u003e87d85be\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.4'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/2ed62e3c85f8331f532918f54828ed4e03813788\"\u003e\u003ccode\u003e2ed62e3\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/7df80a3d6ae16b2c311732b8a67ad6c7ca9b0cd1\"\u003e\u003ccode\u003e7df80a3\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/347117552e90ab6fc8a3e6a459f0a00ec0ca0a48\"\u003e\u003ccode\u003e3471175\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.3'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/dfb22ff6eccbd6a07ef68304cc36198e39260618\"\u003e\u003ccode\u003edfb22ff\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.3' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/2e3d1258ad9cb30f38d3c54b1b5e847b83a2d13b\"\u003e\u003ccode\u003e2e3d125\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/04ebd3cbea961c39ea1fea5edfd24442d299eb1d\"\u003e\u003ccode\u003e04ebd3c\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/cc95ab6caa73634e01a03c82f310d002a5f3e71d\"\u003e\u003ccode\u003ecc95ab6\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.2'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/743b8e411a11015a0a0ee584cd0f3b947687a666\"\u003e\u003ccode\u003e743b8e4\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.2' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/8f7ba800ea3e2c252b2d9ed4abd4f00309a79511\"\u003e\u003ccode\u003e8f7ba80\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.2\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.18...1.42.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `botocore` from 1.38.18 to 1.42.4\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/05bdcecb8de077dc0c3551c700243f46f7672848\"\u003e\u003ccode\u003e05bdcec\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.4'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/b04193bd48846f03294d06143304576139509982\"\u003e\u003ccode\u003eb04193b\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/6d8692f79e641d6529458277bb20c504c17c3eca\"\u003e\u003ccode\u003e6d8692f\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/4e2bde0cb6044935ec0c0bcf022cd32b9c68289e\"\u003e\u003ccode\u003e4e2bde0\u003c/code\u003e\u003c/a\u003e Upgrade awscrt to 0.29.2 (\u003ca href=\"https://redirect.github.com/boto/botocore/issues/3608\"\u003e#3608\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/c57744ce74370df9ae48d68ce96c213dce94563f\"\u003e\u003ccode\u003ec57744c\u003c/code\u003e\u003c/a\u003e Add retries to handle IAM eventual consistency issues (\u003ca href=\"https://redirect.github.com/boto/botocore/issues/3600\"\u003e#3600\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/b71ae76eee8dd1b084d038b5113bd29b8720f708\"\u003e\u003ccode\u003eb71ae76\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.3'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/220c0b020df8c80078b44fe1227c3bc7b7f24004\"\u003e\u003ccode\u003e220c0b0\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.3' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/ac07545e42460b00e7b624161b422b8b7ce4eeda\"\u003e\u003ccode\u003eac07545\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/68fc097d76eec12c4e64c0478e99f76bdee90226\"\u003e\u003ccode\u003e68fc097\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/b2877967b7e851d639e7bfa56ad2c6d9ea35b4ad\"\u003e\u003ccode\u003eb287796\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.2'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/botocore/compare/1.38.18...1.42.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `certifi` from 2025.4.26 to 2025.11.12\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/37ea150bee10958559f804f128de2fdd48e1ed45\"\u003e\u003ccode\u003e37ea150\u003c/code\u003e\u003c/a\u003e 2025.11.12 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/375\"\u003e#375\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/2fa50bb698145e2401e17b23f6969d3952a6f7c1\"\u003e\u003ccode\u003e2fa50bb\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 4.6.2 to 5.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/374\"\u003e#374\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/6cadb5304715523e57ea425f833aa3495a4e01e4\"\u003e\u003ccode\u003e6cadb53\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 5.0.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/373\"\u003e#373\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/fb14ac49a976b1695d84b1ac1307276a20b3aac9\"\u003e\u003ccode\u003efb14ac4\u003c/code\u003e\u003c/a\u003e 2025.10.05 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/371\"\u003e#371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/2c7c7ee6b76a118191b685a4cc028d4241f22eb7\"\u003e\u003ccode\u003e2c7c7ee\u003c/code\u003e\u003c/a\u003e Add Python 3.14 classifier in setup.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/1a5cb7b3771bba256755f88b3dcf3ac13f064622\"\u003e\u003ccode\u003e1a5cb7b\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5.6.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/367\"\u003e#367\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/dea59605ef2b266c2e0e67938e8c8535a04b1211\"\u003e\u003ccode\u003edea5960\u003c/code\u003e\u003c/a\u003e Bump pypa/gh-action-pypi-publish from 1.12.4 to 1.13.0 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/366\"\u003e#366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/83566b7c993eef772facdaff59c7bba105675329\"\u003e\u003ccode\u003e83566b7\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.2 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ca2e121bdb304fd01f802d3b1ee6a65684f569f2\"\u003e\u003ccode\u003eca2e121\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4.3.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/a97d9ad8f87c382378dddc0b0b33b9770932404e\"\u003e\u003ccode\u003ea97d9ad\u003c/code\u003e\u003c/a\u003e 2025.08.03 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/certifi/python-certifi/compare/2025.04.26...2025.11.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `charset-normalizer` from 3.4.2 to 3.4.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.3...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003e multiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/b30ffdcc2f11043c0d34e60fe66d3815cd49b32b\"\u003e\u003ccode\u003eb30ffdc\u003c/code\u003e\u003c/a\u003e :wrench: fix checksum step in cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/d3fbfcfad7dfe3c640886f1a6a6351da527f6634\"\u003e\u003ccode\u003ed3fbfcf\u003c/code\u003e\u003c/a\u003e :wrench: fix cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/dafbb95f8c00d3cc8b99158caa63006ffab98749\"\u003e\u003ccode\u003edafbb95\u003c/code\u003e\u003c/a\u003e Release 3.4.4 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/658\"\u003e#658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/1f18ffaa69d2c84fea7abedb8840197ba9c14562\"\u003e\u003ccode\u003e1f18ffa\u003c/code\u003e\u003c/a\u003e :arrow_up: raise mypy upper bound to 1.18.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/ef4ac69ad203891f24e26b2422ab3a08053044fa\"\u003e\u003ccode\u003eef4ac69\u003c/code\u003e\u003c/a\u003e Merge branch 'release-3.4.4' of github.com:jawah/charset_normalizer into rele...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/4b35dda053db5e2e60a247e80a116e4ef04f439b\"\u003e\u003ccode\u003e4b35dda\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/0ec6452f1a34cbc77a55b237c4118807b44c2a33\"\u003e\u003ccode\u003e0ec6452\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f341edec8a828dda394abfa011b1ded8b4b102e2\"\u003e\u003ccode\u003ef341ede\u003c/code\u003e\u003c/a\u003e :arrow_up: upgrade dependencies (dev, ci)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/a308841e660a4d61ea6c448e7b8bf97415ecdc4a\"\u003e\u003ccode\u003ea308841\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/9c906da611d5ca5ef076d6bf7f60e629f661d0b0\"\u003e\u003ccode\u003e9c906da\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.2...3.4.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cloudpathlib` from 0.21.1 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/drivendataorg/cloudpathlib/releases\"\u003ecloudpathlib's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14 (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/529\"\u003e#529\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/530\"\u003e#530\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eChanged \u003ccode\u003eCloudPath.copy\u003c/code\u003e to have the first parameter named \u003ccode\u003etarget\u003c/code\u003e instead of \u003ccode\u003edestination\u003c/code\u003e and added new \u003ccode\u003efollow_symlinks\u003c/code\u003e and \u003ccode\u003epreserve_metadata\u003c/code\u003e kwargs. \u003cstrong\u003eBreaking change for users that relied on the first parameter being named \u003ccode\u003edestination\u003c/code\u003e instead of \u003ccode\u003etarget\u003c/code\u003e.\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.copy_into\u003c/code\u003e to copy a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move\u003c/code\u003e to move a file or directory to another location.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move_into\u003c/code\u003e to move a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPathInfo\u003c/code\u003e and \u003ccode\u003eCloudPath.info\u003c/code\u003e to get information about a file or directory.\u003c/li\u003e\n\u003cli\u003eAdded additional no-op kwargs to \u003ccode\u003emkdir\u003c/code\u003e, \u003ccode\u003etouch\u003c/code\u003e, \u003ccode\u003eglob\u003c/code\u003e, \u003ccode\u003erglob\u003c/code\u003e, \u003ccode\u003estat\u003c/code\u003e to match pathlib.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.22.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed issue with GS credentials, using default auth enables a wider set of authentication methods in GS (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/390\"\u003e#390\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/514\"\u003e#514\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ljyanesm\"\u003e\u003ccode\u003e@​ljyanesm\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for http(s) urls with \u003ccode\u003eHttpClient\u003c/code\u003e, \u003ccode\u003eHttpPath\u003c/code\u003e, \u003ccode\u003eHttpsClient\u003c/code\u003e, and \u003ccode\u003eHttpsPath\u003c/code\u003e. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/455\"\u003e#455\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded experimental support for patching the builtins \u003ccode\u003eopen\u003c/code\u003e, \u003ccode\u003eos\u003c/code\u003e, \u003ccode\u003eos.path\u003c/code\u003e, and \u003ccode\u003eglob\u003c/code\u003e to work with \u003ccode\u003eCloudPath\u003c/code\u003e objects. It is off by default; see the new \u0026quot;Compatibility\u0026quot; section in the docs for more information. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/128\"\u003e#128\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for \u003ccode\u003eCloudPath(*parts)\u003c/code\u003e to create a \u003ccode\u003eCloudPath\u003c/code\u003e object from a list of parts (to match \u003ccode\u003epathlib.Path\u003c/code\u003e). \u003cstrong\u003eThis is a potentially breaking change for users that relied on the second arg being the \u003ccode\u003eclient\u003c/code\u003e instead of making it an explicit kwarg.\u003c/strong\u003e (PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\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/drivendataorg/cloudpathlib/blob/master/HISTORY.md\"\u003ecloudpathlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.23.0 (2025-10-07)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14 (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/529\"\u003e#529\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/530\"\u003e#530\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eChanged \u003ccode\u003eCloudPath.copy\u003c/code\u003e to have the first parameter named \u003ccode\u003etarget\u003c/code\u003e instead of \u003ccode\u003edestination\u003c/code\u003e and added new \u003ccode\u003efollow_symlinks\u003c/code\u003e and \u003ccode\u003epreserve_metadata\u003c/code\u003e kwargs. \u003cstrong\u003eBreaking change for users that relied on the first parameter being named \u003ccode\u003edestination\u003c/code\u003e instead of \u003ccode\u003etarget\u003c/code\u003e.\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.copy_into\u003c/code\u003e to copy a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move\u003c/code\u003e to move a file or directory to another location.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPath.move_into\u003c/code\u003e to move a file or directory into another file or directory.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eCloudPathInfo\u003c/code\u003e and \u003ccode\u003eCloudPath.info\u003c/code\u003e to get information about a file or directory.\u003c/li\u003e\n\u003cli\u003eAdded additional no-op kwargs to \u003ccode\u003emkdir\u003c/code\u003e, \u003ccode\u003etouch\u003c/code\u003e, \u003ccode\u003eglob\u003c/code\u003e, \u003ccode\u003erglob\u003c/code\u003e, \u003ccode\u003estat\u003c/code\u003e to match pathlib.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.22.0 (2025-08-29)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed issue with GS credentials, using default auth enables a wider set of authentication methods in GS (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/390\"\u003e#390\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/514\"\u003e#514\u003c/a\u003e, thanks \u003ca href=\"https://github.com/ljyanesm\"\u003e\u003ccode\u003e@​ljyanesm\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for http(s) urls with \u003ccode\u003eHttpClient\u003c/code\u003e, \u003ccode\u003eHttpPath\u003c/code\u003e, \u003ccode\u003eHttpsClient\u003c/code\u003e, and \u003ccode\u003eHttpsPath\u003c/code\u003e. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/455\"\u003e#455\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded experimental support for patching the builtins \u003ccode\u003eopen\u003c/code\u003e, \u003ccode\u003eos\u003c/code\u003e, \u003ccode\u003eos.path\u003c/code\u003e, and \u003ccode\u003eglob\u003c/code\u003e to work with \u003ccode\u003eCloudPath\u003c/code\u003e objects. It is off by default; see the new \u0026quot;Compatibility\u0026quot; section in the docs for more information. (Issue \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/128\"\u003e#128\u003c/a\u003e, PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for \u003ccode\u003eCloudPath(*parts)\u003c/code\u003e to create a \u003ccode\u003eCloudPath\u003c/code\u003e object from a list of parts (to match \u003ccode\u003epathlib.Path\u003c/code\u003e). \u003cstrong\u003eThis is a potentially breaking change for users that relied on the second arg being the \u003ccode\u003eclient\u003c/code\u003e instead of making it an explicit kwarg.\u003c/strong\u003e (PR \u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/pull/322\"\u003e#322\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/drivendataorg/cloudpathlib/commit/28f1d943078517262d045ae50136edf27a5298a1\"\u003e\u003ccode\u003e28f1d94\u003c/code\u003e\u003c/a\u003e WIP Support 3.14 (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/530\"\u003e#530\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/fec5918d6725e9f1f52bee003528f4f854454980\"\u003e\u003ccode\u003efec5918\u003c/code\u003e\u003c/a\u003e Bump pypa/gh-action-pypi-publish in /.github/workflows (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/531\"\u003e#531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/e7900023bf4b32b70ca5b2d798f9ce52187582f8\"\u003e\u003ccode\u003ee790002\u003c/code\u003e\u003c/a\u003e version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/bb1f1e4cb5eba0928cec2aaff30cb0f5ace1f108\"\u003e\u003ccode\u003ebb1f1e4\u003c/code\u003e\u003c/a\u003e WIP: Patch open, os and os.path builtins (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/322\"\u003e#322\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/12005505fc29ab4183968022a487416a31b1a1bd\"\u003e\u003ccode\u003e1200550\u003c/code\u003e\u003c/a\u003e Refactor GS authentication to use default credentials (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/514\"\u003e#514\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/526\"\u003e#526\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/b21cac14f0090021594f7e3afae9c48f5d7dbd46\"\u003e\u003ccode\u003eb21cac1\u003c/code\u003e\u003c/a\u003e Implement HTTP(s) support (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/468\"\u003e#468\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/863e884cbf1cf141cdf7bf9c0623e0cd3d27841d\"\u003e\u003ccode\u003e863e884\u003c/code\u003e\u003c/a\u003e fix for azure typing differences (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/524\"\u003e#524\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/drivendataorg/cloudpathlib/commit/65c5c012bd4297ce4e812cfb8bbf9827db346e03\"\u003e\u003ccode\u003e65c5c01\u003c/code\u003e\u003c/a\u003e Set pytest-cases\u0026gt;=3.9.1 (\u003ca href=\"https://redirect.github.com/drivendataorg/cloudpathlib/issues/520\"\u003e#520\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/drivendataorg/cloudpathlib/compare/v0.21.1...v0.23.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `docutils` from 0.19 to 0.22.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/rtfd/recommonmark/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `idna` from 3.10 to 3.11\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kjd/idna/blob/master/HISTORY.rst\"\u003eidna's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e3.11 (2025-10-12)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to Unicode 16.0.0, including significant changes to UTS46\nprocessing. As a result of Unicode ending support for it, transitional\nprocessing no longer has an effect and returns the same result.\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14, lowest supported version is Python 3.8.\u003c/li\u003e\n\u003cli\u003eVarious updates to packaging, including PEP 740 support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/ad949ee3052c2265c66e3df2dd8871a5832ba327\"\u003e\u003ccode\u003ead949ee\u003c/code\u003e\u003c/a\u003e Release v3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/cae4ba779e0a543823894bd4136651c187944da8\"\u003e\u003ccode\u003ecae4ba7\u003c/code\u003e\u003c/a\u003e Second release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/8adb305165c77c4a45d1568a70ead75d2197692c\"\u003e\u003ccode\u003e8adb305\u003c/code\u003e\u003c/a\u003e Add space in RST link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/74cb2b652bb06133b0c4ab52cc98221be63162cf\"\u003e\u003ccode\u003e74cb2b6\u003c/code\u003e\u003c/a\u003e Release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/05dab09fdde5bbf7d52f757c4dc62e0ba934cca8\"\u003e\u003ccode\u003e05dab09\u003c/code\u003e\u003c/a\u003e Format idna-data with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/90eac78b737d26613776b490432fc6d926b15c55\"\u003e\u003ccode\u003e90eac78\u003c/code\u003e\u003c/a\u003e Apply ruff formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a31ce7ecc0b767e40abb5ce28744ac567b73f366\"\u003e\u003ccode\u003ea31ce7e\u003c/code\u003e\u003c/a\u003e Remove errant test vectors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/81f03334211c78c1832991ce70ebafb3cbfbb79c\"\u003e\u003ccode\u003e81f0333\u003c/code\u003e\u003c/a\u003e Omit vectors known to be broken in test suite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a0f32578c0cac28c7ffbb4c860c92eb2b9b579bd\"\u003e\u003ccode\u003ea0f3257\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into unicode-16-uts46-changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/38d98860e6a1ab92fd35ab09ea4739feabf339a3\"\u003e\u003ccode\u003e38d9886\u003c/code\u003e\u003c/a\u003e Remove extra UTS46 test vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kjd/idna/compare/v3.10...v3.11\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `jellyfish` from 1.2.0 to 1.2.1\n\nUpdates `markdown-it-py` from 3.0.0 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/executablebooks/markdown-it-py/releases\"\u003emarkdown-it-py's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eThis primarily drops support for Python 3.8 and 3.9, adds support for Python 3.13,\nand updates the parser to comply with Commonmark 0.31.2 and Markdown-It v14.1.0.\u003c/p\u003e\n\u003ch3\u003eUpgrades\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Drop Python 3.8, test 3.13 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/342\"\u003eexecutablebooks/markdown-it-py#342\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Drop support for Python 3.9 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/360\"\u003eexecutablebooks/markdown-it-py#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Comply with Commonmark 0.31.2 by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/362\"\u003eexecutablebooks/markdown-it-py#362\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eImprovements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e👌 Improve performance of \u0026quot;text\u0026quot; inline rule by \u003ca href=\"https://github.com/hukkin\"\u003e\u003ccode\u003e@​hukkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/347\"\u003eexecutablebooks/markdown-it-py#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Use \u003ccode\u003estr.removesuffix\u003c/code\u003e by \u003ca href=\"https://github.com/hukkin\"\u003e\u003ccode\u003e@​hukkin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/348\"\u003eexecutablebooks/markdown-it-py#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 limit the number of autocompleted cells in a table by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/364\"\u003eexecutablebooks/markdown-it-py#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 fix quadratic complexity in reference parser by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/367\"\u003eexecutablebooks/markdown-it-py#367\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 Fix emphasis inside raw links bugs by \u003ca href=\"https://github.com/tsutsu3\"\u003e\u003ccode\u003e@​tsutsu3\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/320\"\u003eexecutablebooks/markdown-it-py#320\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e🔧 Replace black and isort with ruff formatter by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/313\"\u003eexecutablebooks/markdown-it-py#313\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Fixed Code Style paragraph still referring to flake8 by \u003ca href=\"https://github.com/venthur\"\u003e\u003ccode\u003e@​venthur\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/309\"\u003eexecutablebooks/markdown-it-py#309\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Add \u0026quot;store_labels\u0026quot; to OptionsType by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/343\"\u003eexecutablebooks/markdown-it-py#343\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Move \u003ccode\u003ecode_style\u003c/code\u003e to dependency group by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/344\"\u003eexecutablebooks/markdown-it-py#344\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Update codecov action by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/345\"\u003eexecutablebooks/markdown-it-py#345\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Update pre-commit and upload-artifact by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/359\"\u003eexecutablebooks/markdown-it-py#359\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 Improve spec update script by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/361\"\u003eexecutablebooks/markdown-it-py#361\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🔧 simplify logic in scanDelims by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/365\"\u003eexecutablebooks/markdown-it-py#365\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Add CI testing for Python 3.12 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/303\"\u003eexecutablebooks/markdown-it-py#303\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🧪 Fix codecov by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/332\"\u003eexecutablebooks/markdown-it-py#332\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e📚 Fix typo by \u003ca href=\"https://github.com/bwagner\"\u003e\u003ccode\u003e@​bwagner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/315\"\u003eexecutablebooks/markdown-it-py#315\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix RTD build by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/322\"\u003eexecutablebooks/markdown-it-py#322\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Fix a few old URLs by \u003ca href=\"https://github.com/elijahgreenstein\"\u003e\u003ccode\u003e@​elijahgreenstein\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/358\"\u003eexecutablebooks/markdown-it-py#358\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Improve README by \u003ca href=\"https://github.com/mrmurilo75\"\u003e\u003ccode\u003e@​mrmurilo75\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/340\"\u003eexecutablebooks/markdown-it-py#340\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix CI badge link by \u003ca href=\"https://github.com/tsutsu3\"\u003e\u003ccode\u003e@​tsutsu3\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/291\"\u003eexecutablebooks/markdown-it-py#291\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Update docs by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/292\"\u003eexecutablebooks/markdown-it-py#292\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Add icon to readme by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/293\"\u003eexecutablebooks/markdown-it-py#293\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Update icon by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/294\"\u003eexecutablebooks/markdown-it-py#294\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Clarify docs regarding security configuration by \u003ca href=\"https://github.com/djramones\"\u003e\u003ccode\u003e@​djramones\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/296\"\u003eexecutablebooks/markdown-it-py#296\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 Fix the RTD build by \u003ca href=\"https://github.com/chrisjsewell\"\u003e\u003ccode\u003e@​chrisjsewell\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/311\"\u003eexecutablebooks/markdown-it-py#311\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📚 DOCS: Fix typos by \u003ca href=\"https://github.com/elijahgreenstein\"\u003e\u003ccode\u003e@​elijahgreenstein\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/366\"\u003eexecutablebooks/markdown-it-py#366\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/executablebooks/markdown-it-py/blob/master/CHANGELOG.md\"\u003emarkdown-it-py's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.0 - 2024-08-10\u003c/h2\u003e\n\u003cp\u003eThis primarily drops support for Python 3.9, adds support for Python 3.13,\nand updates the parser to comply with Commonmark 0.31.2 and Markdown-It v14.1.0.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e⬆️ Drop support for Python 3.9 in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/360\"\u003e#360\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e⬆️ Comply with Commonmark 0.31.2 in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/362\"\u003e#362\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Improve performance of \u0026quot;text\u0026quot; inline rule in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/347\"\u003e#347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 Use \u003ccode\u003estr.removesuffix\u003c/code\u003e in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/348\"\u003e#348\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 limit the number of autocompleted cells in a table in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/364\"\u003e#364\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e👌 fix quadratic complexity in reference parser in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/367\"\u003e#367\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 Fix emphasis inside raw links bugs in \u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/pull/320\"\u003e#320\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.0\"\u003ehttps://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.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/executablebooks/markdown-it-py/commit/c62983f1554124391b47170180e6c62df4d476ca\"\u003e\u003ccode\u003ec62983f\u003c/code\u003e\u003c/a\u003e 🚀 RELEASE v4.0.0 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/368\"\u003e#368\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/9e93bd554147ffb8582581e14620c7611103d2ff\"\u003e\u003ccode\u003e9e93bd5\u003c/code\u003e\u003c/a\u003e 👌 fix quadratic complexity in reference parser (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/367\"\u003e#367\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/da45c8764b2077425c091fa1811bbb1c5f211bd1\"\u003e\u003ccode\u003eda45c87\u003c/code\u003e\u003c/a\u003e 📚 DOCS: Fix typos (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/366\"\u003e#366\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/87b16e272bf8207182084e07a63253b98fc437d7\"\u003e\u003ccode\u003e87b16e2\u003c/code\u003e\u003c/a\u003e 🔧 simplify logic in scanDelims (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/365\"\u003e#365\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/e4009641db528444b85d384af815e9cad997a016\"\u003e\u003ccode\u003ee400964\u003c/code\u003e\u003c/a\u003e 👌 limit the number of autocompleted cells in a table (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/364\"\u003e#364\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/4535d77edcb5f51450a266135687eeae8bcc5033\"\u003e\u003ccode\u003e4535d77\u003c/code\u003e\u003c/a\u003e ⬆️ Comply with Commonmark 0.31.2 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/8eb20ac1cb63e09dcd78e84a0c71dab8446bb73c\"\u003e\u003ccode\u003e8eb20ac\u003c/code\u003e\u003c/a\u003e 🔧 Improve spec update script (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/361\"\u003e#361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/fb9d3ab646e4f752dc8fd52e1dd7613c350ff190\"\u003e\u003ccode\u003efb9d3ab\u003c/code\u003e\u003c/a\u003e ⬆️ Drop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/360\"\u003e#360\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/9ffe841832d33264201aaff120349f001a02953a\"\u003e\u003ccode\u003e9ffe841\u003c/code\u003e\u003c/a\u003e 📚 DOCS: Fix a few old URLs (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/358\"\u003e#358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/executablebooks/markdown-it-py/commit/154fe43feb17947e2c933d0bb3e26618129909a8\"\u003e\u003ccode\u003e154fe43\u003c/code\u003e\u003c/a\u003e 🔧 Update pre-commit and upload-artifact (\u003ca href=\"https://redirect.github.com/executablebooks/markdown-it-py/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/executablebooks/markdown-it-py/compare/v3.0.0...v4.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `numpy` from 2.2.5 to 2.3.5\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.3.5 (Nov 16, 2025)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.3.5 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.3.5 release is a patch release split between a number of maintenance\nupdates and bug fixes. This release supports Python versions 3.11-3.14.\u003c/p\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cp\u003eA total of 10 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\u003eAaron Kollasch +\u003c/li\u003e\n\u003cli\u003eCharles Harris\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eMatti Picus\u003c/li\u003e\n\u003cli\u003eNathan Goldbaum\u003c/li\u003e\n\u003cli\u003eRafael Laboissière +\u003c/li\u003e\n\u003cli\u003eSayed Awad\u003c/li\u003e\n\u003cli\u003eSebastian Berg\u003c/li\u003e\n\u003cli\u003eWarren Weckesser\u003c/li\u003e\n\u003cli\u003eYasir Ashfaq +\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ePull requests merged\u003c/h2\u003e\n\u003cp\u003eA total of 16 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/29979\"\u003e#29979\u003c/a\u003e: MAINT: Prepare 2.3.x for further development\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30026\"\u003e#30026\u003c/a\u003e: SIMD, BLD: Backport FPMATH mode on x86-32 and filter successor...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30029\"\u003e#30029\u003c/a\u003e: MAINT: Backport write_release.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30041\"\u003e#30041\u003c/a\u003e: TYP: Various typing updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30059\"\u003e#30059\u003c/a\u003e: BUG: Fix np.strings.slice if stop=None or start and stop \u0026gt;= len...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30063\"\u003e#30063\u003c/a\u003e: BUG: Fix np.strings.slice if start \u0026gt; stop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30076\"\u003e#30076\u003c/a\u003e: BUG: avoid negating INT_MIN in PyArray_Round implementation (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30071\"\u003e#30071\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30090\"\u003e#30090\u003c/a\u003e: BUG: Fix resize when it contains references (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/29970\"\u003e#29970\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30129\"\u003e#30129\u003c/a\u003e: BLD: update scipy-openblas, use -Dpkg_config_path (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30049\"\u003e#30049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30130\"\u003e#30130\u003c/a\u003e: BUG: Avoid compilation error of wrapper file generated with SWIG...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30157\"\u003e#30157\u003c/a\u003e: BLD: use scipy-openblas 0.3.30.7 (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30132\"\u003e#30132\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30158\"\u003e#30158\u003c/a\u003e: DOC: Remove nonexistent \u003ccode\u003eorder\u003c/code\u003e parameter docs of \u003ccode\u003ema.asanyarray\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30185\"\u003e#30185\u003c/a\u003e: BUG: Fix check of PyMem_Calloc return value. (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30176\"\u003e#30176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30217\"\u003e#30217\u003c/a\u003e: DOC: fix links for newly rebuilt numpy-tutorials site\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30218\"\u003e#30218\u003c/a\u003e: BUG: Fix build on s390x with clang (\u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30214\"\u003e#30214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/numpy/numpy/pull/30237\"\u003e#30237\u003c/a\u003e: ENH: Make FPE blas check a runtime check for all apple arm systems\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.3.4 (Oct 15,  2025)\u003c/h2\u003e\n\u003ch1\u003eNumPy 2.3.4 Release Notes\u003c/h1\u003e\n\u003cp\u003eThe NumPy 2.3.4 release is a patch release split between a number of maintenance\nupdates and bug fixes. This release supports Python versions 3.11-3.14. This\nrelease is based on Python 3.14.0 final.\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/numpy/numpy/commit/c3d60fc8393f3ca3306b8ce8b6453d43737e3d90\"\u003e\u003ccode\u003ec3d60fc\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30238\"\u003e#30238\u003c/a\u003e from charris/prepare-2.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/11451fa35d49d8c809cdef87106417833bdacfbe\"\u003e\u003ccode\u003e11451fa\u003c/code\u003e\u003c/a\u003e REL: Prepare for the NumPy 2.3.5 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/eab5bd47df62782edceccf4cf99112851f7a8975\"\u003e\u003ccode\u003eeab5bd4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/numpy/numpy/issues/30237\"\u003e#30237\u003c/a\u003e from charris/backport-30102\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/7cea31aa6255994bcd17b3ee2f6dbf671eaa9598\"\u003e\u003ccode\u003e7cea31a\u003c/code\u003e\u003c/a\u003e Fixup merge of multiarraymodule.c\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/commit/b8981736060011506e497c5bca24a75c5bddee39\"\u003e\u003ccode\u003eb898173\u003c/code\u003e\u003c/a\u003e Update numpy/_core/src/common/blas_utils.h\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/numpy/numpy/comm...\n\n_Description has been truncated_","html_url":"https://github.com/reichlab/cladetime/pull/186","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/reichlab%2Fcladetime/issues/186","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/186/packages"}}]}