From 40cc09e810e044b89470663eaf0f5c2904a3bcbc Mon Sep 17 00:00:00 2001 From: Sam Bull Date: Thu, 10 Jul 2025 15:18:21 +0100 Subject: [PATCH 01/30] Bump version to .dev0 (#11300) --- aiohttp/__init__.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aiohttp/__init__.py b/aiohttp/__init__.py index a3ab781e984..afb0bf2d812 100644 --- a/aiohttp/__init__.py +++ b/aiohttp/__init__.py @@ -1,4 +1,4 @@ -__version__ = "3.12.14" +__version__ = "3.12.15.dev0" from typing import TYPE_CHECKING, Tuple From 8d7b3283a9beb6d405b39443cddc53535a8a02c8 Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Fri, 11 Jul 2025 19:12:05 +0100 Subject: [PATCH 02/30] [PR #11271/331c9892 backport][3.13] Update a regex in test_aiohttp_request_coroutine for Python 3.14 (#11303) **This is a backport of PR #11271 as merged into master (331c989242d730d49c6a001012ad9ee7cfe51112).** Co-authored-by: Ben Beasley --- CHANGES/11271.contrib.rst | 1 + CONTRIBUTORS.txt | 1 + tests/test_client_functional.py | 8 ++++++-- 3 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 CHANGES/11271.contrib.rst diff --git a/CHANGES/11271.contrib.rst b/CHANGES/11271.contrib.rst new file mode 100644 index 00000000000..6db394f1496 --- /dev/null +++ b/CHANGES/11271.contrib.rst @@ -0,0 +1 @@ +Updated a regex in `test_aiohttp_request_coroutine` for Python 3.14. diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt index 6d6565cf99e..e527bb50b59 100644 --- a/CONTRIBUTORS.txt +++ b/CONTRIBUTORS.txt @@ -57,6 +57,7 @@ Arthur Darcet Austin Scola Bai Haoran Ben Bader +Ben Beasley Ben Greiner Ben Kallus Ben Timby diff --git a/tests/test_client_functional.py b/tests/test_client_functional.py index 230d47389c5..4cde926e87a 100644 --- a/tests/test_client_functional.py +++ b/tests/test_client_functional.py @@ -3656,8 +3656,12 @@ async def handler(request: web.Request) -> web.Response: not_an_awaitable = aiohttp.request("GET", server.make_url("/")) with pytest.raises( TypeError, - match="^object _SessionRequestContextManager " - "can't be used in 'await' expression$", + match=( + "^'_SessionRequestContextManager' object can't be awaited$" + if sys.version_info >= (3, 14) + else "^object _SessionRequestContextManager " + "can't be used in 'await' expression$" + ), ): await not_an_awaitable # type: ignore[misc] From 36de40a64a743bc081d2254460126d332f59b903 Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Fri, 11 Jul 2025 19:16:49 +0100 Subject: [PATCH 03/30] [PR #11271/331c9892 backport][3.12] Update a regex in test_aiohttp_request_coroutine for Python 3.14 (#11302) **This is a backport of PR #11271 as merged into master (331c989242d730d49c6a001012ad9ee7cfe51112).** Co-authored-by: Ben Beasley --- CHANGES/11271.contrib.rst | 1 + CONTRIBUTORS.txt | 1 + tests/test_client_functional.py | 8 ++++++-- 3 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 CHANGES/11271.contrib.rst diff --git a/CHANGES/11271.contrib.rst b/CHANGES/11271.contrib.rst new file mode 100644 index 00000000000..6db394f1496 --- /dev/null +++ b/CHANGES/11271.contrib.rst @@ -0,0 +1 @@ +Updated a regex in `test_aiohttp_request_coroutine` for Python 3.14. diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt index 6b9f7b124bd..976f8419226 100644 --- a/CONTRIBUTORS.txt +++ b/CONTRIBUTORS.txt @@ -57,6 +57,7 @@ Arthur Darcet Austin Scola Bai Haoran Ben Bader +Ben Beasley Ben Greiner Ben Kallus Ben Timby diff --git a/tests/test_client_functional.py b/tests/test_client_functional.py index 230d47389c5..4cde926e87a 100644 --- a/tests/test_client_functional.py +++ b/tests/test_client_functional.py @@ -3656,8 +3656,12 @@ async def handler(request: web.Request) -> web.Response: not_an_awaitable = aiohttp.request("GET", server.make_url("/")) with pytest.raises( TypeError, - match="^object _SessionRequestContextManager " - "can't be used in 'await' expression$", + match=( + "^'_SessionRequestContextManager' object can't be awaited$" + if sys.version_info >= (3, 14) + else "^object _SessionRequestContextManager " + "can't be used in 'await' expression$" + ), ): await not_an_awaitable # type: ignore[misc] From d5f86d7be0aa9de35b76648d02a7571cb0eed42f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Jul 2025 13:02:43 +0000 Subject: [PATCH 04/30] Bump certifi from 2025.6.15 to 2025.7.14 (#11308) Bumps [certifi](https://github.com/certifi/python-certifi) from 2025.6.15 to 2025.7.14.
Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=certifi&package-manager=pip&previous-version=2025.6.15&new-version=2025.7.14)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot 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`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@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) - `@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) - `@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)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/constraints.txt | 2 +- requirements/dev.txt | 2 +- requirements/doc-spelling.txt | 2 +- requirements/doc.txt | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/requirements/constraints.txt b/requirements/constraints.txt index 421da27a467..37413692927 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -34,7 +34,7 @@ brotli==1.1.0 ; platform_python_implementation == "CPython" # via -r requirements/runtime-deps.in build==1.2.2.post1 # via pip-tools -certifi==2025.6.15 +certifi==2025.7.14 # via requests cffi==1.17.1 # via diff --git a/requirements/dev.txt b/requirements/dev.txt index 440f0e975af..3acd62b3cd4 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -34,7 +34,7 @@ brotli==1.1.0 ; platform_python_implementation == "CPython" # via -r requirements/runtime-deps.in build==1.2.2.post1 # via pip-tools -certifi==2025.6.15 +certifi==2025.7.14 # via requests cffi==1.17.1 # via diff --git a/requirements/doc-spelling.txt b/requirements/doc-spelling.txt index 80043477f4c..ff9ac9ab561 100644 --- a/requirements/doc-spelling.txt +++ b/requirements/doc-spelling.txt @@ -10,7 +10,7 @@ alabaster==1.0.0 # via sphinx babel==2.17.0 # via sphinx -certifi==2025.6.15 +certifi==2025.7.14 # via requests charset-normalizer==3.4.2 # via requests diff --git a/requirements/doc.txt b/requirements/doc.txt index 664333abe7d..f2252174aae 100644 --- a/requirements/doc.txt +++ b/requirements/doc.txt @@ -10,7 +10,7 @@ alabaster==1.0.0 # via sphinx babel==2.17.0 # via sphinx -certifi==2025.6.15 +certifi==2025.7.14 # via requests charset-normalizer==3.4.2 # via requests From bd06e045a8767753b6974bac692ef0d30652e5ee Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 14 Jul 2025 13:16:50 +0000 Subject: [PATCH 05/30] Bump freezegun from 1.5.2 to 1.5.3 (#11309) Bumps [freezegun](https://github.com/spulec/freezegun) from 1.5.2 to 1.5.3.
Changelog

Sourced from freezegun's changelog.

1.5.3

  • Fix compatibility with pytest 8.4.0 when using fixtures
  • Add (back) class-decorator overload to guarantee Pytype understands it
Commits
  • d2e0a00 Increase version number
  • 6229e27 Add 1.5.3 release notes
  • 3111775 Merge pull request #576 from spulec/support-fixtures-pytest-840
  • f4bf942 Support fixtures inside classes decorated with freeze_time
  • 5dff43d Merge pull request #574 from sfreilich/restore-class-decorator-overload
  • 1df6623 Restore class-decorator overload annotation for freeze_time
  • See full diff in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=freezegun&package-manager=pip&previous-version=1.5.2&new-version=1.5.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot 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`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@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) - `@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) - `@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)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/constraints.txt | 2 +- requirements/dev.txt | 2 +- requirements/lint.txt | 2 +- requirements/test.txt | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/requirements/constraints.txt b/requirements/constraints.txt index 37413692927..bd6f181d43f 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -76,7 +76,7 @@ filelock==3.18.0 # via virtualenv forbiddenfruit==0.1.4 # via blockbuster -freezegun==1.5.2 +freezegun==1.5.3 # via # -r requirements/lint.in # -r requirements/test.in diff --git a/requirements/dev.txt b/requirements/dev.txt index 3acd62b3cd4..513d62e4a70 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -74,7 +74,7 @@ filelock==3.18.0 # via virtualenv forbiddenfruit==0.1.4 # via blockbuster -freezegun==1.5.2 +freezegun==1.5.3 # via # -r requirements/lint.in # -r requirements/test.in diff --git a/requirements/lint.txt b/requirements/lint.txt index 3ec364ff4eb..5ba4808c111 100644 --- a/requirements/lint.txt +++ b/requirements/lint.txt @@ -31,7 +31,7 @@ filelock==3.18.0 # via virtualenv forbiddenfruit==0.1.4 # via blockbuster -freezegun==1.5.2 +freezegun==1.5.3 # via -r requirements/lint.in identify==2.6.12 # via pre-commit diff --git a/requirements/test.txt b/requirements/test.txt index 6c540134a8f..13c1ecca8e4 100644 --- a/requirements/test.txt +++ b/requirements/test.txt @@ -39,7 +39,7 @@ execnet==2.1.1 # via pytest-xdist forbiddenfruit==0.1.4 # via blockbuster -freezegun==1.5.2 +freezegun==1.5.3 # via -r requirements/test.in frozenlist==1.7.0 # via From 6d1f0ec3a66c12a283367c46609215617fa2e77b Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Mon, 14 Jul 2025 23:38:52 +0100 Subject: [PATCH 06/30] [PR #11233/cb2860ab backport][3.13] Add wireup to third party libraries (#11310) **This is a backport of PR #11233 as merged into master (cb2860ab9a62cbc9d2785195278496f4d26ec9ca).** Co-authored-by: Aldo Mateli --- CHANGES/11233.doc.rst | 1 + docs/third_party.rst | 3 +++ 2 files changed, 4 insertions(+) create mode 100644 CHANGES/11233.doc.rst diff --git a/CHANGES/11233.doc.rst b/CHANGES/11233.doc.rst new file mode 100644 index 00000000000..4d63afa7d88 --- /dev/null +++ b/CHANGES/11233.doc.rst @@ -0,0 +1 @@ +Added ``Wireup`` to third-party libraries -- by :user:`maldoinc`. diff --git a/docs/third_party.rst b/docs/third_party.rst index 145a505a5de..c01023c1f1b 100644 --- a/docs/third_party.rst +++ b/docs/third_party.rst @@ -308,3 +308,6 @@ ask to raise the status. - `aiohttp-openmetrics `_ An aiohttp middleware for exposing Prometheus metrics. + +- `wireup `_ + Performant, concise, and easy-to-use dependency injection container. From db6ae638d5bca951260bc93f64f655c863e50c61 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 15 Jul 2025 11:37:24 +0000 Subject: [PATCH 07/30] Bump mypy from 1.16.1 to 1.17.0 (#11315) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [mypy](https://github.com/python/mypy) from 1.16.1 to 1.17.0.
Changelog

Sourced from mypy's changelog.

Mypy Release Notes

Next Release

Mypy 1.17

We’ve just uploaded mypy 1.17 to the Python Package Index (PyPI). Mypy is a static type checker for Python. This release includes new features and bug fixes. You can install it as follows:

python3 -m pip install -U mypy

You can read the full documentation for this release on Read the Docs.

Optionally Check That Match Is Exhaustive

Mypy can now optionally generate an error if a match statement does not match exhaustively, without having to use assert_never(...). Enable this by using --enable-error-code exhaustive-match.

Example:

# mypy: enable-error-code=exhaustive-match

import enum

class Color(enum.Enum): RED = 1 BLUE = 2

def show_color(val: Color) -> None: # error: Unhandled case for values of type "Literal[Color.BLUE]" match val: case Color.RED: print("red")

This feature was contributed by Donal Burns (PR 19144).

Further Improvements to Attribute Resolution

This release includes additional improvements to how attribute types and kinds are resolved. These fix many bugs and overall improve consistency.

  • Handle corner case: protocol/class variable/descriptor (Ivan Levkivskyi, PR 19277)
  • Fix a few inconsistencies in protocol/type object interactions (Ivan Levkivskyi, PR 19267)
  • Refactor/unify access to static attributes (Ivan Levkivskyi, PR 19254)
  • Remove inconsistencies in operator handling (Ivan Levkivskyi, PR 19250)
  • Make protocol subtyping more consistent (Ivan Levkivskyi, PR 18943)

... (truncated)

Commits
  • 0260991 Update version string
  • 3901aa2 Updates to 1.17 changelog (#19436)
  • 7d13396 Initial changelog for 1.17 release (#19427)
  • a182dec Combine the revealed types of multiple iteration steps in a more robust manne...
  • ab4fd57 Improve the handling of "iteration dependent" errors and notes in finally cla...
  • 09ba1f6 [mypyc] Fix exception swallowing in async try/finally blocks with await (#19353)
  • 5c65e33 [mypyc] Fix AttributeError in async try/finally with mixed return paths (#19361)
  • 934ec50 Lessen dmypy suggest path limitations for Windows machines (#19337)
  • a4801f9 Type ignore comments erroneously marked as unused by dmypy (#15043)
  • c3bfa0d Handle corner case: protocol vs classvar vs descriptor (#19277)
  • Additional commits viewable in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=mypy&package-manager=pip&previous-version=1.16.1&new-version=1.17.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot 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`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@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) - `@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) - `@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)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/constraints.txt | 114 +++++++++++++++++------------------ requirements/dev.txt | 104 ++++++++++++++++---------------- requirements/lint.txt | 2 +- requirements/test.txt | 28 ++++----- 4 files changed, 124 insertions(+), 124 deletions(-) diff --git a/requirements/constraints.txt b/requirements/constraints.txt index bd6f181d43f..4683b610f15 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -6,32 +6,32 @@ # aiodns==3.5.0 # via - # -r requirements/lint.in - # -r requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in aiohappyeyeballs==2.6.1 - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in aiohttp-theme==0.1.7 - # via -r requirements/doc.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc.in aiosignal==1.4.0 - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in alabaster==1.0.0 # via sphinx annotated-types==0.7.0 # via pydantic async-timeout==5.0.1 ; python_version < "3.11" # via - # -r requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in # valkey attrs==25.3.0 - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in babel==2.17.0 # via sphinx blockbuster==1.5.24 # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in brotli==1.1.0 ; platform_python_implementation == "CPython" - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in build==1.2.2.post1 # via pip-tools certifi==2025.7.14 @@ -46,7 +46,7 @@ cfgv==3.4.0 charset-normalizer==3.4.2 # via requests cherry-picker==2.5.0 - # via -r requirements/dev.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/dev.in click==8.1.8 # via # cherry-picker @@ -56,14 +56,14 @@ click==8.1.8 # wait-for-it coverage==7.9.2 # via - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in # pytest-cov cryptography==45.0.5 # via # pyjwt # trustme cython==3.1.2 - # via -r requirements/cython.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/cython.in distlib==0.3.9 # via virtualenv docutils==0.21.2 @@ -78,16 +78,16 @@ forbiddenfruit==0.1.4 # via blockbuster freezegun==1.5.3 # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in frozenlist==1.7.0 # via - # -r requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in # aiosignal gidgethub==5.4.0 # via cherry-picker gunicorn==23.0.0 - # via -r requirements/base.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/base.in identify==2.6.12 # via pre-commit idna==3.3 @@ -101,8 +101,8 @@ iniconfig==2.1.0 # via pytest isal==1.7.2 # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in jinja2==3.1.6 # via # sphinx @@ -115,13 +115,13 @@ mdurl==0.1.2 # via markdown-it-py multidict==6.6.3 # via - # -r requirements/multidict.in - # -r requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/multidict.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in # yarl -mypy==1.16.1 ; implementation_name == "cpython" +mypy==1.17.0 ; implementation_name == "cpython" # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in mypy-extensions==1.1.0 # via mypy nodeenv==1.9.1 @@ -135,9 +135,9 @@ packaging==25.0 pathspec==0.12.1 # via mypy pip-tools==7.4.1 - # via -r requirements/dev.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/dev.in pkgconfig==1.5.5 - # via -r requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in platformdirs==4.3.8 # via virtualenv pluggy==1.6.0 @@ -145,13 +145,13 @@ pluggy==1.6.0 # pytest # pytest-cov pre-commit==4.2.0 - # via -r requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in propcache==0.3.2 # via - # -r requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in # yarl proxy-py==2.4.10 - # via -r requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in pycares==4.9.0 # via aiodns pycparser==2.22 @@ -177,34 +177,34 @@ pyproject-hooks==1.2.0 # pip-tools pytest==8.4.1 # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in # pytest-codspeed # pytest-cov # pytest-mock # pytest-xdist pytest-codspeed==4.0.0 # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in pytest-cov==6.2.1 - # via -r requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in pytest-mock==3.14.1 # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in pytest-xdist==3.8.0 - # via -r requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in python-dateutil==2.9.0.post0 # via freezegun python-on-whales==0.77.0 # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in pyyaml==6.0.2 # via pre-commit re-assert==1.1.0 - # via -r requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in regex==2024.11.6 # via re-assert requests==2.32.4 @@ -215,16 +215,16 @@ requests==2.32.4 rich==14.0.0 # via pytest-codspeed setuptools-git==1.2 - # via -r requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in six==1.17.0 # via python-dateutil slotscheck==0.19.1 - # via -r requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in snowballstemmer==3.0.1 # via sphinx sphinx==8.1.3 # via - # -r requirements/doc.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc.in # sphinxcontrib-spelling # sphinxcontrib-towncrier sphinxcontrib-applehelp==2.0.0 @@ -240,9 +240,9 @@ sphinxcontrib-qthelp==2.0.0 sphinxcontrib-serializinghtml==2.0.0 # via sphinx sphinxcontrib-spelling==8.0.1 ; platform_system != "Windows" - # via -r requirements/doc-spelling.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc-spelling.in sphinxcontrib-towncrier==0.5.0a0 - # via -r requirements/doc.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc.in stamina==25.1.0 # via cherry-picker tenacity==9.1.2 @@ -260,12 +260,12 @@ tomli==2.2.1 # towncrier towncrier==24.8.0 # via - # -r requirements/doc.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc.in # sphinxcontrib-towncrier trustme==1.2.1 ; platform_machine != "i686" # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in typing-extensions==4.14.1 # via # aiosignal @@ -285,26 +285,26 @@ urllib3==2.5.0 # via requests uvloop==0.21.0 ; platform_system != "Windows" # via - # -r requirements/base.in - # -r requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/base.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in valkey==6.1.0 - # via -r requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in virtualenv==20.31.2 # via pre-commit wait-for-it==2.3.0 - # via -r requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in wheel==0.45.1 # via pip-tools yarl==1.20.1 - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in zlib-ng==0.5.1 # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in zstandard==0.23.0 ; implementation_name == "cpython" # via - # -r requirements/lint.in - # -r requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in # The following packages are considered to be unsafe in a requirements file: pip==25.1.1 diff --git a/requirements/dev.txt b/requirements/dev.txt index 513d62e4a70..c7dbcf9c46d 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -6,32 +6,32 @@ # aiodns==3.5.0 # via - # -r requirements/lint.in - # -r requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in aiohappyeyeballs==2.6.1 - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in aiohttp-theme==0.1.7 - # via -r requirements/doc.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc.in aiosignal==1.4.0 - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in alabaster==1.0.0 # via sphinx annotated-types==0.7.0 # via pydantic async-timeout==5.0.1 ; python_version < "3.11" # via - # -r requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in # valkey attrs==25.3.0 - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in babel==2.17.0 # via sphinx blockbuster==1.5.24 # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in brotli==1.1.0 ; platform_python_implementation == "CPython" - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in build==1.2.2.post1 # via pip-tools certifi==2025.7.14 @@ -56,7 +56,7 @@ click==8.1.8 # wait-for-it coverage==7.9.2 # via - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in # pytest-cov cryptography==45.0.5 # via @@ -76,16 +76,16 @@ forbiddenfruit==0.1.4 # via blockbuster freezegun==1.5.3 # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in frozenlist==1.7.0 # via - # -r requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in # aiosignal gidgethub==5.4.0 # via cherry-picker gunicorn==23.0.0 - # via -r requirements/base.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/base.in identify==2.6.12 # via pre-commit idna==3.4 @@ -99,8 +99,8 @@ iniconfig==2.1.0 # via pytest isal==1.7.2 # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in jinja2==3.1.6 # via # sphinx @@ -113,12 +113,12 @@ mdurl==0.1.2 # via markdown-it-py multidict==6.6.3 # via - # -r requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in # yarl -mypy==1.16.1 ; implementation_name == "cpython" +mypy==1.17.0 ; implementation_name == "cpython" # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in mypy-extensions==1.1.0 # via mypy nodeenv==1.9.1 @@ -134,7 +134,7 @@ pathspec==0.12.1 pip-tools==7.4.1 # via -r requirements/dev.in pkgconfig==1.5.5 - # via -r requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in platformdirs==4.3.8 # via virtualenv pluggy==1.6.0 @@ -142,13 +142,13 @@ pluggy==1.6.0 # pytest # pytest-cov pre-commit==4.2.0 - # via -r requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in propcache==0.3.2 # via - # -r requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in # yarl proxy-py==2.4.10 - # via -r requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in pycares==4.9.0 # via aiodns pycparser==2.22 @@ -172,34 +172,34 @@ pyproject-hooks==1.2.0 # pip-tools pytest==8.4.1 # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in # pytest-codspeed # pytest-cov # pytest-mock # pytest-xdist pytest-codspeed==4.0.0 # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in pytest-cov==6.2.1 - # via -r requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in pytest-mock==3.14.1 # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in pytest-xdist==3.8.0 - # via -r requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in python-dateutil==2.9.0.post0 # via freezegun python-on-whales==0.77.0 # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in pyyaml==6.0.2 # via pre-commit re-assert==1.1.0 - # via -r requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in regex==2024.11.6 # via re-assert requests==2.32.4 @@ -209,16 +209,16 @@ requests==2.32.4 rich==14.0.0 # via pytest-codspeed setuptools-git==1.2 - # via -r requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in six==1.17.0 # via python-dateutil slotscheck==0.19.1 - # via -r requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in snowballstemmer==3.0.1 # via sphinx sphinx==8.1.3 # via - # -r requirements/doc.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc.in # sphinxcontrib-towncrier sphinxcontrib-applehelp==2.0.0 # via sphinx @@ -233,7 +233,7 @@ sphinxcontrib-qthelp==2.0.0 sphinxcontrib-serializinghtml==2.0.0 # via sphinx sphinxcontrib-towncrier==0.5.0a0 - # via -r requirements/doc.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc.in stamina==25.1.0 # via cherry-picker tenacity==9.1.2 @@ -251,12 +251,12 @@ tomli==2.2.1 # towncrier towncrier==24.8.0 # via - # -r requirements/doc.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc.in # sphinxcontrib-towncrier trustme==1.2.1 ; platform_machine != "i686" # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in typing-extensions==4.14.1 # via # aiosignal @@ -276,26 +276,26 @@ urllib3==2.5.0 # via requests uvloop==0.21.0 ; platform_system != "Windows" and implementation_name == "cpython" # via - # -r requirements/base.in - # -r requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/base.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in valkey==6.1.0 - # via -r requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in virtualenv==20.31.2 # via pre-commit wait-for-it==2.3.0 - # via -r requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in wheel==0.45.1 # via pip-tools yarl==1.20.1 - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in zlib-ng==0.5.1 # via - # -r requirements/lint.in - # -r requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in zstandard==0.23.0 ; platform_python_implementation == "CPython" and python_version < "3.14" # via - # -r requirements/lint.in - # -r requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in # The following packages are considered to be unsafe in a requirements file: pip==25.1.1 diff --git a/requirements/lint.txt b/requirements/lint.txt index 5ba4808c111..10a5d7db363 100644 --- a/requirements/lint.txt +++ b/requirements/lint.txt @@ -45,7 +45,7 @@ markdown-it-py==3.0.0 # via rich mdurl==0.1.2 # via markdown-it-py -mypy==1.16.1 ; implementation_name == "cpython" +mypy==1.17.0 ; implementation_name == "cpython" # via -r requirements/lint.in mypy-extensions==1.1.0 # via mypy diff --git a/requirements/test.txt b/requirements/test.txt index 13c1ecca8e4..7937c349d16 100644 --- a/requirements/test.txt +++ b/requirements/test.txt @@ -5,21 +5,21 @@ # pip-compile --allow-unsafe --output-file=requirements/test.txt --resolver=backtracking --strip-extras requirements/test.in # aiodns==3.5.0 - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in aiohappyeyeballs==2.6.1 - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in aiosignal==1.4.0 - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in annotated-types==0.7.0 # via pydantic async-timeout==5.0.1 ; python_version < "3.11" - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in attrs==25.3.0 - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in blockbuster==1.5.24 # via -r requirements/test.in brotli==1.1.0 ; platform_python_implementation == "CPython" - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in cffi==1.17.1 # via # cryptography @@ -43,10 +43,10 @@ freezegun==1.5.3 # via -r requirements/test.in frozenlist==1.7.0 # via - # -r requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in # aiosignal gunicorn==23.0.0 - # via -r requirements/base.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/base.in idna==3.4 # via # trustme @@ -61,9 +61,9 @@ mdurl==0.1.2 # via markdown-it-py multidict==6.6.3 # via - # -r requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in # yarl -mypy==1.16.1 ; implementation_name == "cpython" +mypy==1.17.0 ; implementation_name == "cpython" # via -r requirements/test.in mypy-extensions==1.1.0 # via mypy @@ -81,7 +81,7 @@ pluggy==1.6.0 # pytest-cov propcache==0.3.2 # via - # -r requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in # yarl proxy-py==2.4.10 # via -r requirements/test.in @@ -147,12 +147,12 @@ typing-extensions==4.14.1 typing-inspection==0.4.1 # via pydantic uvloop==0.21.0 ; platform_system != "Windows" and implementation_name == "cpython" - # via -r requirements/base.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/base.in wait-for-it==2.3.0 # via -r requirements/test.in yarl==1.20.1 - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in zlib-ng==0.5.1 # via -r requirements/test.in zstandard==0.23.0 ; platform_python_implementation == "CPython" and python_version < "3.14" - # via -r requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in From 405d13f847c265f58f8ba95c62dd76b770cec642 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 15 Jul 2025 11:56:59 +0000 Subject: [PATCH 08/30] Bump blockbuster from 1.5.24 to 1.5.25 (#11316) Bumps [blockbuster](https://github.com/cbornet/blockbuster) from 1.5.24 to 1.5.25.
Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=blockbuster&package-manager=pip&previous-version=1.5.24&new-version=1.5.25)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot 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`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@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) - `@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) - `@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)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/constraints.txt | 114 +++++++++++++++++------------------ requirements/dev.txt | 104 ++++++++++++++++---------------- requirements/lint.txt | 2 +- requirements/test.txt | 28 ++++----- 4 files changed, 124 insertions(+), 124 deletions(-) diff --git a/requirements/constraints.txt b/requirements/constraints.txt index 4683b610f15..b2ad41a8c82 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -6,32 +6,32 @@ # aiodns==3.5.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in aiohappyeyeballs==2.6.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in aiohttp-theme==0.1.7 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc.in aiosignal==1.4.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in alabaster==1.0.0 # via sphinx annotated-types==0.7.0 # via pydantic async-timeout==5.0.1 ; python_version < "3.11" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in # valkey attrs==25.3.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in babel==2.17.0 # via sphinx -blockbuster==1.5.24 +blockbuster==1.5.25 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in brotli==1.1.0 ; platform_python_implementation == "CPython" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in build==1.2.2.post1 # via pip-tools certifi==2025.7.14 @@ -46,7 +46,7 @@ cfgv==3.4.0 charset-normalizer==3.4.2 # via requests cherry-picker==2.5.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/dev.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/dev.in click==8.1.8 # via # cherry-picker @@ -56,14 +56,14 @@ click==8.1.8 # wait-for-it coverage==7.9.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in # pytest-cov cryptography==45.0.5 # via # pyjwt # trustme cython==3.1.2 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/cython.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/cython.in distlib==0.3.9 # via virtualenv docutils==0.21.2 @@ -78,16 +78,16 @@ forbiddenfruit==0.1.4 # via blockbuster freezegun==1.5.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in frozenlist==1.7.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in # aiosignal gidgethub==5.4.0 # via cherry-picker gunicorn==23.0.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/base.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/base.in identify==2.6.12 # via pre-commit idna==3.3 @@ -101,8 +101,8 @@ iniconfig==2.1.0 # via pytest isal==1.7.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in jinja2==3.1.6 # via # sphinx @@ -115,13 +115,13 @@ mdurl==0.1.2 # via markdown-it-py multidict==6.6.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/multidict.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/multidict.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in # yarl mypy==1.17.0 ; implementation_name == "cpython" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in mypy-extensions==1.1.0 # via mypy nodeenv==1.9.1 @@ -135,9 +135,9 @@ packaging==25.0 pathspec==0.12.1 # via mypy pip-tools==7.4.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/dev.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/dev.in pkgconfig==1.5.5 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in platformdirs==4.3.8 # via virtualenv pluggy==1.6.0 @@ -145,13 +145,13 @@ pluggy==1.6.0 # pytest # pytest-cov pre-commit==4.2.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in propcache==0.3.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in # yarl proxy-py==2.4.10 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in pycares==4.9.0 # via aiodns pycparser==2.22 @@ -177,34 +177,34 @@ pyproject-hooks==1.2.0 # pip-tools pytest==8.4.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in # pytest-codspeed # pytest-cov # pytest-mock # pytest-xdist pytest-codspeed==4.0.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in pytest-cov==6.2.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in pytest-mock==3.14.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in pytest-xdist==3.8.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in python-dateutil==2.9.0.post0 # via freezegun python-on-whales==0.77.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in pyyaml==6.0.2 # via pre-commit re-assert==1.1.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in regex==2024.11.6 # via re-assert requests==2.32.4 @@ -215,16 +215,16 @@ requests==2.32.4 rich==14.0.0 # via pytest-codspeed setuptools-git==1.2 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in six==1.17.0 # via python-dateutil slotscheck==0.19.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in snowballstemmer==3.0.1 # via sphinx sphinx==8.1.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc.in # sphinxcontrib-spelling # sphinxcontrib-towncrier sphinxcontrib-applehelp==2.0.0 @@ -240,9 +240,9 @@ sphinxcontrib-qthelp==2.0.0 sphinxcontrib-serializinghtml==2.0.0 # via sphinx sphinxcontrib-spelling==8.0.1 ; platform_system != "Windows" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc-spelling.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc-spelling.in sphinxcontrib-towncrier==0.5.0a0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc.in stamina==25.1.0 # via cherry-picker tenacity==9.1.2 @@ -260,12 +260,12 @@ tomli==2.2.1 # towncrier towncrier==24.8.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc.in # sphinxcontrib-towncrier trustme==1.2.1 ; platform_machine != "i686" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in typing-extensions==4.14.1 # via # aiosignal @@ -285,26 +285,26 @@ urllib3==2.5.0 # via requests uvloop==0.21.0 ; platform_system != "Windows" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/base.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/base.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in valkey==6.1.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in virtualenv==20.31.2 # via pre-commit wait-for-it==2.3.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in wheel==0.45.1 # via pip-tools yarl==1.20.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in zlib-ng==0.5.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in zstandard==0.23.0 ; implementation_name == "cpython" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in # The following packages are considered to be unsafe in a requirements file: pip==25.1.1 diff --git a/requirements/dev.txt b/requirements/dev.txt index c7dbcf9c46d..a3f83316450 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -6,32 +6,32 @@ # aiodns==3.5.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in aiohappyeyeballs==2.6.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in aiohttp-theme==0.1.7 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc.in aiosignal==1.4.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in alabaster==1.0.0 # via sphinx annotated-types==0.7.0 # via pydantic async-timeout==5.0.1 ; python_version < "3.11" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in # valkey attrs==25.3.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in babel==2.17.0 # via sphinx -blockbuster==1.5.24 +blockbuster==1.5.25 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in brotli==1.1.0 ; platform_python_implementation == "CPython" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in build==1.2.2.post1 # via pip-tools certifi==2025.7.14 @@ -56,7 +56,7 @@ click==8.1.8 # wait-for-it coverage==7.9.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in # pytest-cov cryptography==45.0.5 # via @@ -76,16 +76,16 @@ forbiddenfruit==0.1.4 # via blockbuster freezegun==1.5.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in frozenlist==1.7.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in # aiosignal gidgethub==5.4.0 # via cherry-picker gunicorn==23.0.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/base.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/base.in identify==2.6.12 # via pre-commit idna==3.4 @@ -99,8 +99,8 @@ iniconfig==2.1.0 # via pytest isal==1.7.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in jinja2==3.1.6 # via # sphinx @@ -113,12 +113,12 @@ mdurl==0.1.2 # via markdown-it-py multidict==6.6.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in # yarl mypy==1.17.0 ; implementation_name == "cpython" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in mypy-extensions==1.1.0 # via mypy nodeenv==1.9.1 @@ -134,7 +134,7 @@ pathspec==0.12.1 pip-tools==7.4.1 # via -r requirements/dev.in pkgconfig==1.5.5 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in platformdirs==4.3.8 # via virtualenv pluggy==1.6.0 @@ -142,13 +142,13 @@ pluggy==1.6.0 # pytest # pytest-cov pre-commit==4.2.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in propcache==0.3.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in # yarl proxy-py==2.4.10 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in pycares==4.9.0 # via aiodns pycparser==2.22 @@ -172,34 +172,34 @@ pyproject-hooks==1.2.0 # pip-tools pytest==8.4.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in # pytest-codspeed # pytest-cov # pytest-mock # pytest-xdist pytest-codspeed==4.0.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in pytest-cov==6.2.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in pytest-mock==3.14.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in pytest-xdist==3.8.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in python-dateutil==2.9.0.post0 # via freezegun python-on-whales==0.77.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in pyyaml==6.0.2 # via pre-commit re-assert==1.1.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in regex==2024.11.6 # via re-assert requests==2.32.4 @@ -209,16 +209,16 @@ requests==2.32.4 rich==14.0.0 # via pytest-codspeed setuptools-git==1.2 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in six==1.17.0 # via python-dateutil slotscheck==0.19.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in snowballstemmer==3.0.1 # via sphinx sphinx==8.1.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc.in # sphinxcontrib-towncrier sphinxcontrib-applehelp==2.0.0 # via sphinx @@ -233,7 +233,7 @@ sphinxcontrib-qthelp==2.0.0 sphinxcontrib-serializinghtml==2.0.0 # via sphinx sphinxcontrib-towncrier==0.5.0a0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc.in stamina==25.1.0 # via cherry-picker tenacity==9.1.2 @@ -251,12 +251,12 @@ tomli==2.2.1 # towncrier towncrier==24.8.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/doc.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc.in # sphinxcontrib-towncrier trustme==1.2.1 ; platform_machine != "i686" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in typing-extensions==4.14.1 # via # aiosignal @@ -276,26 +276,26 @@ urllib3==2.5.0 # via requests uvloop==0.21.0 ; platform_system != "Windows" and implementation_name == "cpython" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/base.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/base.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in valkey==6.1.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in virtualenv==20.31.2 # via pre-commit wait-for-it==2.3.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in wheel==0.45.1 # via pip-tools yarl==1.20.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in zlib-ng==0.5.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in zstandard==0.23.0 ; platform_python_implementation == "CPython" and python_version < "3.14" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in # The following packages are considered to be unsafe in a requirements file: pip==25.1.1 diff --git a/requirements/lint.txt b/requirements/lint.txt index 10a5d7db363..1d2b65f77d1 100644 --- a/requirements/lint.txt +++ b/requirements/lint.txt @@ -10,7 +10,7 @@ annotated-types==0.7.0 # via pydantic async-timeout==5.0.1 # via valkey -blockbuster==1.5.24 +blockbuster==1.5.25 # via -r requirements/lint.in cffi==1.17.1 # via diff --git a/requirements/test.txt b/requirements/test.txt index 7937c349d16..294898d3b90 100644 --- a/requirements/test.txt +++ b/requirements/test.txt @@ -5,21 +5,21 @@ # pip-compile --allow-unsafe --output-file=requirements/test.txt --resolver=backtracking --strip-extras requirements/test.in # aiodns==3.5.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in aiohappyeyeballs==2.6.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in aiosignal==1.4.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in annotated-types==0.7.0 # via pydantic async-timeout==5.0.1 ; python_version < "3.11" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in attrs==25.3.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in -blockbuster==1.5.24 + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in +blockbuster==1.5.25 # via -r requirements/test.in brotli==1.1.0 ; platform_python_implementation == "CPython" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in cffi==1.17.1 # via # cryptography @@ -43,10 +43,10 @@ freezegun==1.5.3 # via -r requirements/test.in frozenlist==1.7.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in # aiosignal gunicorn==23.0.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/base.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/base.in idna==3.4 # via # trustme @@ -61,7 +61,7 @@ mdurl==0.1.2 # via markdown-it-py multidict==6.6.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in # yarl mypy==1.17.0 ; implementation_name == "cpython" # via -r requirements/test.in @@ -81,7 +81,7 @@ pluggy==1.6.0 # pytest-cov propcache==0.3.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in # yarl proxy-py==2.4.10 # via -r requirements/test.in @@ -147,12 +147,12 @@ typing-extensions==4.14.1 typing-inspection==0.4.1 # via pydantic uvloop==0.21.0 ; platform_system != "Windows" and implementation_name == "cpython" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/base.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/base.in wait-for-it==2.3.0 # via -r requirements/test.in yarl==1.20.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in zlib-ng==0.5.1 # via -r requirements/test.in zstandard==0.23.0 ; platform_python_implementation == "CPython" and python_version < "3.14" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1333-v8vdn6/dependabot_20250715-1333-nl1p4c/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in From 3e7870b09673b5e4c43d51a1b40b0e2f17c62cdd Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Tue, 15 Jul 2025 13:24:33 +0100 Subject: [PATCH 09/30] [PR #11301/815901f6 backport][3.13] Clean up redundant code and stale comments from PR #11290 (#11319) **This is a backport of PR #11301 as merged into master (815901f6afb2c460650ccb0b6f0bfa5b55fe5cd9).** Co-authored-by: J. Nick Koston --- aiohttp/payload.py | 6 +----- tests/test_client_functional.py | 4 ++-- tests/test_payload.py | 11 +++++------ 3 files changed, 8 insertions(+), 13 deletions(-) diff --git a/aiohttp/payload.py b/aiohttp/payload.py index 3affa710b63..5b88fa09405 100644 --- a/aiohttp/payload.py +++ b/aiohttp/payload.py @@ -559,11 +559,7 @@ def size(self) -> Optional[int]: # By storing the start position, we ensure the size calculation always # returns the correct total size for any subsequent use. if self._start_position is None: - try: - self._start_position = self._value.tell() - except (OSError, AttributeError): - # Can't get position, can't determine size - return None + self._start_position = self._value.tell() # Return the total size from the start position # This ensures Content-Length is correct even after reading diff --git a/tests/test_client_functional.py b/tests/test_client_functional.py index 4cde926e87a..eb0c822a4be 100644 --- a/tests/test_client_functional.py +++ b/tests/test_client_functional.py @@ -5298,8 +5298,8 @@ async def test_file_upload_307_308_redirect( ) -> None: """Test that file uploads work correctly with 307/308 redirects. - This demonstrates the bug where file payloads get incorrect Content-Length - on redirect because the file position isn't reset. + This verifies that file payloads maintain correct Content-Length + on redirect by properly handling the file position. """ received_bodies: list[bytes] = [] diff --git a/tests/test_payload.py b/tests/test_payload.py index e749881cc82..9aa97b20da0 100644 --- a/tests/test_payload.py +++ b/tests/test_payload.py @@ -1283,8 +1283,9 @@ def open_file() -> TextIO: async def test_iobase_payload_size_after_reading(tmp_path: Path) -> None: """Test that IOBasePayload.size returns correct size after file has been read. - This demonstrates the bug where size calculation doesn't account for - the current file position, causing issues with 307/308 redirects. + This verifies that size calculation properly accounts for the initial + file position, which is critical for 307/308 redirects where the same + payload instance is reused. """ # Create a test file with known content test_file = tmp_path / "test.txt" @@ -1306,14 +1307,12 @@ async def test_iobase_payload_size_after_reading(tmp_path: Path) -> None: assert len(writer.buffer) == expected_size # Second size check - should still return full file size - # but currently returns 0 because file position is at EOF - assert p.size == expected_size # This assertion fails! + assert p.size == expected_size # Attempting to write again should write the full content - # but currently writes nothing because file is at EOF writer2 = BufferWriter() await p.write(writer2) - assert len(writer2.buffer) == expected_size # This also fails! + assert len(writer2.buffer) == expected_size finally: await asyncio.to_thread(f.close) From 3ff61cefcbab17b82c90ecad30988b8d0a2670ae Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Tue, 15 Jul 2025 13:24:46 +0100 Subject: [PATCH 10/30] [PR #11301/815901f6 backport][3.12] Clean up redundant code and stale comments from PR #11290 (#11318) **This is a backport of PR #11301 as merged into master (815901f6afb2c460650ccb0b6f0bfa5b55fe5cd9).** Co-authored-by: J. Nick Koston --- aiohttp/payload.py | 6 +----- tests/test_client_functional.py | 4 ++-- tests/test_payload.py | 11 +++++------ 3 files changed, 8 insertions(+), 13 deletions(-) diff --git a/aiohttp/payload.py b/aiohttp/payload.py index 3affa710b63..5b88fa09405 100644 --- a/aiohttp/payload.py +++ b/aiohttp/payload.py @@ -559,11 +559,7 @@ def size(self) -> Optional[int]: # By storing the start position, we ensure the size calculation always # returns the correct total size for any subsequent use. if self._start_position is None: - try: - self._start_position = self._value.tell() - except (OSError, AttributeError): - # Can't get position, can't determine size - return None + self._start_position = self._value.tell() # Return the total size from the start position # This ensures Content-Length is correct even after reading diff --git a/tests/test_client_functional.py b/tests/test_client_functional.py index 4cde926e87a..eb0c822a4be 100644 --- a/tests/test_client_functional.py +++ b/tests/test_client_functional.py @@ -5298,8 +5298,8 @@ async def test_file_upload_307_308_redirect( ) -> None: """Test that file uploads work correctly with 307/308 redirects. - This demonstrates the bug where file payloads get incorrect Content-Length - on redirect because the file position isn't reset. + This verifies that file payloads maintain correct Content-Length + on redirect by properly handling the file position. """ received_bodies: list[bytes] = [] diff --git a/tests/test_payload.py b/tests/test_payload.py index e749881cc82..9aa97b20da0 100644 --- a/tests/test_payload.py +++ b/tests/test_payload.py @@ -1283,8 +1283,9 @@ def open_file() -> TextIO: async def test_iobase_payload_size_after_reading(tmp_path: Path) -> None: """Test that IOBasePayload.size returns correct size after file has been read. - This demonstrates the bug where size calculation doesn't account for - the current file position, causing issues with 307/308 redirects. + This verifies that size calculation properly accounts for the initial + file position, which is critical for 307/308 redirects where the same + payload instance is reused. """ # Create a test file with known content test_file = tmp_path / "test.txt" @@ -1306,14 +1307,12 @@ async def test_iobase_payload_size_after_reading(tmp_path: Path) -> None: assert len(writer.buffer) == expected_size # Second size check - should still return full file size - # but currently returns 0 because file position is at EOF - assert p.size == expected_size # This assertion fails! + assert p.size == expected_size # Attempting to write again should write the full content - # but currently writes nothing because file is at EOF writer2 = BufferWriter() await p.write(writer2) - assert len(writer2.buffer) == expected_size # This also fails! + assert len(writer2.buffer) == expected_size finally: await asyncio.to_thread(f.close) From d0fd61f7c3e20de204b3defca49c8202630b41d7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 15 Jul 2025 12:43:19 +0000 Subject: [PATCH 11/30] Bump python-on-whales from 0.77.0 to 0.78.0 (#11317) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [python-on-whales](https://github.com/gabrieldemarmiesse/python-on-whales) from 0.77.0 to 0.78.0.
Release notes

Sourced from python-on-whales's releases.

v0.78.0

What's Changed

New Contributors

Full Changelog: https://github.com/gabrieldemarmiesse/python-on-whales/compare/v0.77.0...v0.78.0

Commits
  • 4a83f23 Bumb version to 0.78.0
  • a823cad Explicitely preserver order while removing duplicates in push/pull (#681)
  • 1916d02 Stream output from pull and push command (#678)
  • 6bb6877 Allow customization of --isolation and --quiet in legacy_build (#680)
  • See full diff in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=python-on-whales&package-manager=pip&previous-version=0.77.0&new-version=0.78.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot 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`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@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) - `@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) - `@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)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/constraints.txt | 114 +++++++++++++++++------------------ requirements/dev.txt | 104 ++++++++++++++++---------------- requirements/lint.txt | 2 +- requirements/test.txt | 28 ++++----- 4 files changed, 124 insertions(+), 124 deletions(-) diff --git a/requirements/constraints.txt b/requirements/constraints.txt index b2ad41a8c82..57ec85144ba 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -6,32 +6,32 @@ # aiodns==3.5.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in aiohappyeyeballs==2.6.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in aiohttp-theme==0.1.7 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc.in aiosignal==1.4.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in alabaster==1.0.0 # via sphinx annotated-types==0.7.0 # via pydantic async-timeout==5.0.1 ; python_version < "3.11" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in # valkey attrs==25.3.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in babel==2.17.0 # via sphinx blockbuster==1.5.25 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in brotli==1.1.0 ; platform_python_implementation == "CPython" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in build==1.2.2.post1 # via pip-tools certifi==2025.7.14 @@ -46,7 +46,7 @@ cfgv==3.4.0 charset-normalizer==3.4.2 # via requests cherry-picker==2.5.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/dev.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/dev.in click==8.1.8 # via # cherry-picker @@ -56,14 +56,14 @@ click==8.1.8 # wait-for-it coverage==7.9.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in # pytest-cov cryptography==45.0.5 # via # pyjwt # trustme cython==3.1.2 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/cython.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/cython.in distlib==0.3.9 # via virtualenv docutils==0.21.2 @@ -78,16 +78,16 @@ forbiddenfruit==0.1.4 # via blockbuster freezegun==1.5.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in frozenlist==1.7.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in # aiosignal gidgethub==5.4.0 # via cherry-picker gunicorn==23.0.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/base.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/base.in identify==2.6.12 # via pre-commit idna==3.3 @@ -101,8 +101,8 @@ iniconfig==2.1.0 # via pytest isal==1.7.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in jinja2==3.1.6 # via # sphinx @@ -115,13 +115,13 @@ mdurl==0.1.2 # via markdown-it-py multidict==6.6.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/multidict.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/multidict.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in # yarl mypy==1.17.0 ; implementation_name == "cpython" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in mypy-extensions==1.1.0 # via mypy nodeenv==1.9.1 @@ -135,9 +135,9 @@ packaging==25.0 pathspec==0.12.1 # via mypy pip-tools==7.4.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/dev.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/dev.in pkgconfig==1.5.5 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in platformdirs==4.3.8 # via virtualenv pluggy==1.6.0 @@ -145,13 +145,13 @@ pluggy==1.6.0 # pytest # pytest-cov pre-commit==4.2.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in propcache==0.3.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in # yarl proxy-py==2.4.10 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in pycares==4.9.0 # via aiodns pycparser==2.22 @@ -177,34 +177,34 @@ pyproject-hooks==1.2.0 # pip-tools pytest==8.4.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in # pytest-codspeed # pytest-cov # pytest-mock # pytest-xdist pytest-codspeed==4.0.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in pytest-cov==6.2.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in pytest-mock==3.14.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in pytest-xdist==3.8.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in python-dateutil==2.9.0.post0 # via freezegun -python-on-whales==0.77.0 +python-on-whales==0.78.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in pyyaml==6.0.2 # via pre-commit re-assert==1.1.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in regex==2024.11.6 # via re-assert requests==2.32.4 @@ -215,16 +215,16 @@ requests==2.32.4 rich==14.0.0 # via pytest-codspeed setuptools-git==1.2 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in six==1.17.0 # via python-dateutil slotscheck==0.19.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in snowballstemmer==3.0.1 # via sphinx sphinx==8.1.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc.in # sphinxcontrib-spelling # sphinxcontrib-towncrier sphinxcontrib-applehelp==2.0.0 @@ -240,9 +240,9 @@ sphinxcontrib-qthelp==2.0.0 sphinxcontrib-serializinghtml==2.0.0 # via sphinx sphinxcontrib-spelling==8.0.1 ; platform_system != "Windows" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc-spelling.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc-spelling.in sphinxcontrib-towncrier==0.5.0a0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc.in stamina==25.1.0 # via cherry-picker tenacity==9.1.2 @@ -260,12 +260,12 @@ tomli==2.2.1 # towncrier towncrier==24.8.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc.in # sphinxcontrib-towncrier trustme==1.2.1 ; platform_machine != "i686" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in typing-extensions==4.14.1 # via # aiosignal @@ -285,26 +285,26 @@ urllib3==2.5.0 # via requests uvloop==0.21.0 ; platform_system != "Windows" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/base.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/base.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in valkey==6.1.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in virtualenv==20.31.2 # via pre-commit wait-for-it==2.3.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in wheel==0.45.1 # via pip-tools yarl==1.20.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in zlib-ng==0.5.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in zstandard==0.23.0 ; implementation_name == "cpython" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in # The following packages are considered to be unsafe in a requirements file: pip==25.1.1 diff --git a/requirements/dev.txt b/requirements/dev.txt index a3f83316450..2b93b97dcbf 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -6,32 +6,32 @@ # aiodns==3.5.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in aiohappyeyeballs==2.6.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in aiohttp-theme==0.1.7 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc.in aiosignal==1.4.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in alabaster==1.0.0 # via sphinx annotated-types==0.7.0 # via pydantic async-timeout==5.0.1 ; python_version < "3.11" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in # valkey attrs==25.3.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in babel==2.17.0 # via sphinx blockbuster==1.5.25 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in brotli==1.1.0 ; platform_python_implementation == "CPython" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in build==1.2.2.post1 # via pip-tools certifi==2025.7.14 @@ -56,7 +56,7 @@ click==8.1.8 # wait-for-it coverage==7.9.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in # pytest-cov cryptography==45.0.5 # via @@ -76,16 +76,16 @@ forbiddenfruit==0.1.4 # via blockbuster freezegun==1.5.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in frozenlist==1.7.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in # aiosignal gidgethub==5.4.0 # via cherry-picker gunicorn==23.0.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/base.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/base.in identify==2.6.12 # via pre-commit idna==3.4 @@ -99,8 +99,8 @@ iniconfig==2.1.0 # via pytest isal==1.7.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in jinja2==3.1.6 # via # sphinx @@ -113,12 +113,12 @@ mdurl==0.1.2 # via markdown-it-py multidict==6.6.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in # yarl mypy==1.17.0 ; implementation_name == "cpython" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in mypy-extensions==1.1.0 # via mypy nodeenv==1.9.1 @@ -134,7 +134,7 @@ pathspec==0.12.1 pip-tools==7.4.1 # via -r requirements/dev.in pkgconfig==1.5.5 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in platformdirs==4.3.8 # via virtualenv pluggy==1.6.0 @@ -142,13 +142,13 @@ pluggy==1.6.0 # pytest # pytest-cov pre-commit==4.2.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in propcache==0.3.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in # yarl proxy-py==2.4.10 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in pycares==4.9.0 # via aiodns pycparser==2.22 @@ -172,34 +172,34 @@ pyproject-hooks==1.2.0 # pip-tools pytest==8.4.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in # pytest-codspeed # pytest-cov # pytest-mock # pytest-xdist pytest-codspeed==4.0.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in pytest-cov==6.2.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in pytest-mock==3.14.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in pytest-xdist==3.8.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in python-dateutil==2.9.0.post0 # via freezegun -python-on-whales==0.77.0 +python-on-whales==0.78.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in pyyaml==6.0.2 # via pre-commit re-assert==1.1.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in regex==2024.11.6 # via re-assert requests==2.32.4 @@ -209,16 +209,16 @@ requests==2.32.4 rich==14.0.0 # via pytest-codspeed setuptools-git==1.2 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in six==1.17.0 # via python-dateutil slotscheck==0.19.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in snowballstemmer==3.0.1 # via sphinx sphinx==8.1.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc.in # sphinxcontrib-towncrier sphinxcontrib-applehelp==2.0.0 # via sphinx @@ -233,7 +233,7 @@ sphinxcontrib-qthelp==2.0.0 sphinxcontrib-serializinghtml==2.0.0 # via sphinx sphinxcontrib-towncrier==0.5.0a0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc.in stamina==25.1.0 # via cherry-picker tenacity==9.1.2 @@ -251,12 +251,12 @@ tomli==2.2.1 # towncrier towncrier==24.8.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/doc.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc.in # sphinxcontrib-towncrier trustme==1.2.1 ; platform_machine != "i686" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in typing-extensions==4.14.1 # via # aiosignal @@ -276,26 +276,26 @@ urllib3==2.5.0 # via requests uvloop==0.21.0 ; platform_system != "Windows" and implementation_name == "cpython" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/base.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/base.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in valkey==6.1.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in virtualenv==20.31.2 # via pre-commit wait-for-it==2.3.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in wheel==0.45.1 # via pip-tools yarl==1.20.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in zlib-ng==0.5.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/test.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in zstandard==0.23.0 ; platform_python_implementation == "CPython" and python_version < "3.14" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in # The following packages are considered to be unsafe in a requirements file: pip==25.1.1 diff --git a/requirements/lint.txt b/requirements/lint.txt index 1d2b65f77d1..c6c254a6586 100644 --- a/requirements/lint.txt +++ b/requirements/lint.txt @@ -84,7 +84,7 @@ pytest-mock==3.14.1 # via -r requirements/lint.in python-dateutil==2.9.0.post0 # via freezegun -python-on-whales==0.77.0 +python-on-whales==0.78.0 # via -r requirements/lint.in pyyaml==6.0.2 # via pre-commit diff --git a/requirements/test.txt b/requirements/test.txt index 294898d3b90..4def3ada491 100644 --- a/requirements/test.txt +++ b/requirements/test.txt @@ -5,21 +5,21 @@ # pip-compile --allow-unsafe --output-file=requirements/test.txt --resolver=backtracking --strip-extras requirements/test.in # aiodns==3.5.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in aiohappyeyeballs==2.6.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in aiosignal==1.4.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in annotated-types==0.7.0 # via pydantic async-timeout==5.0.1 ; python_version < "3.11" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in attrs==25.3.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in blockbuster==1.5.25 # via -r requirements/test.in brotli==1.1.0 ; platform_python_implementation == "CPython" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in cffi==1.17.1 # via # cryptography @@ -43,10 +43,10 @@ freezegun==1.5.3 # via -r requirements/test.in frozenlist==1.7.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in # aiosignal gunicorn==23.0.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/base.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/base.in idna==3.4 # via # trustme @@ -61,7 +61,7 @@ mdurl==0.1.2 # via markdown-it-py multidict==6.6.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in # yarl mypy==1.17.0 ; implementation_name == "cpython" # via -r requirements/test.in @@ -81,7 +81,7 @@ pluggy==1.6.0 # pytest-cov propcache==0.3.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in # yarl proxy-py==2.4.10 # via -r requirements/test.in @@ -114,7 +114,7 @@ pytest-xdist==3.8.0 # via -r requirements/test.in python-dateutil==2.9.0.post0 # via freezegun -python-on-whales==0.77.0 +python-on-whales==0.78.0 # via -r requirements/test.in re-assert==1.1.0 # via -r requirements/test.in @@ -147,12 +147,12 @@ typing-extensions==4.14.1 typing-inspection==0.4.1 # via pydantic uvloop==0.21.0 ; platform_system != "Windows" and implementation_name == "cpython" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/base.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/base.in wait-for-it==2.3.0 # via -r requirements/test.in yarl==1.20.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in zlib-ng==0.5.1 # via -r requirements/test.in zstandard==0.23.0 ; platform_python_implementation == "CPython" and python_version < "3.14" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-g9qf0i/dependabot_20250715-1382-3ymb72/requirements/runtime-deps.in + # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in From b0ab367871b31cf29fdafff372967912440ae200 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 18 Jul 2025 11:03:15 +0000 Subject: [PATCH 12/30] Bump distlib from 0.3.9 to 0.4.0 (#11322) Bumps [distlib](https://github.com/pypa/distlib) from 0.3.9 to 0.4.0.
Changelog

Sourced from distlib's changelog.

0.4.0


Released: 2025-07-17
  • markers

    • Add the interpret_parsed function.
  • wheel

    • Fix #238: Add build tag to wheel metadata if specified.

    • Fix #243: Update to support free-threading version of Python (3.13t).

    • Fix #246: Support subdirectories in the dist-info directory. Thanks to Pieter P for the patch.

    • Fix #248: Fix path normalisation issue caused by the fix for #246.

    • Move import in script wrapper to "if name == 'main'" clause.

  • tests

    • Fix #245: Skip test_package_data if a SKIP_EXT_PACKAGE_DATA environment variable is present.
Commits
  • aff2cbb Finalise version.
  • 3716c4b Update change log, widen exception catching in test.
  • 660bd33 Changes for 0.4.0.
  • 56b4ad9 Guard script wrapper entrypoint import with if main (#242)
  • fe57366 docs: update coverage results link (#250)
  • c3286e5 Temporarily exclude 3.13t on windows-latest.
  • e6b83d3 Normalize archive paths in dist-info (#248)
  • 93baffe Skip no-longer-relevant test.
  • 83f6568 Support subdirectories in .dist-info (fixes #246) (#247)
  • f918abd Update test_wheel.WheelTestCase.test_abi for freethreading (#244)
  • Additional commits viewable in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=distlib&package-manager=pip&previous-version=0.3.9&new-version=0.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot 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`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@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) - `@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) - `@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)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/constraints.txt | 114 +++++++++++++++++------------------ requirements/dev.txt | 104 ++++++++++++++++---------------- requirements/lint.txt | 2 +- 3 files changed, 110 insertions(+), 110 deletions(-) diff --git a/requirements/constraints.txt b/requirements/constraints.txt index 57ec85144ba..c6c91dccf63 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -6,32 +6,32 @@ # aiodns==3.5.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # -r requirements/lint.in + # -r requirements/runtime-deps.in aiohappyeyeballs==2.6.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in aiohttp-theme==0.1.7 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc.in + # via -r requirements/doc.in aiosignal==1.4.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in alabaster==1.0.0 # via sphinx annotated-types==0.7.0 # via pydantic async-timeout==5.0.1 ; python_version < "3.11" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # -r requirements/runtime-deps.in # valkey attrs==25.3.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in babel==2.17.0 # via sphinx blockbuster==1.5.25 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in brotli==1.1.0 ; platform_python_implementation == "CPython" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in build==1.2.2.post1 # via pip-tools certifi==2025.7.14 @@ -46,7 +46,7 @@ cfgv==3.4.0 charset-normalizer==3.4.2 # via requests cherry-picker==2.5.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/dev.in + # via -r requirements/dev.in click==8.1.8 # via # cherry-picker @@ -56,15 +56,15 @@ click==8.1.8 # wait-for-it coverage==7.9.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/test.in # pytest-cov cryptography==45.0.5 # via # pyjwt # trustme cython==3.1.2 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/cython.in -distlib==0.3.9 + # via -r requirements/cython.in +distlib==0.4.0 # via virtualenv docutils==0.21.2 # via sphinx @@ -78,16 +78,16 @@ forbiddenfruit==0.1.4 # via blockbuster freezegun==1.5.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in frozenlist==1.7.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # -r requirements/runtime-deps.in # aiosignal gidgethub==5.4.0 # via cherry-picker gunicorn==23.0.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/base.in + # via -r requirements/base.in identify==2.6.12 # via pre-commit idna==3.3 @@ -101,8 +101,8 @@ iniconfig==2.1.0 # via pytest isal==1.7.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in jinja2==3.1.6 # via # sphinx @@ -115,13 +115,13 @@ mdurl==0.1.2 # via markdown-it-py multidict==6.6.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/multidict.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # -r requirements/multidict.in + # -r requirements/runtime-deps.in # yarl mypy==1.17.0 ; implementation_name == "cpython" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in mypy-extensions==1.1.0 # via mypy nodeenv==1.9.1 @@ -135,9 +135,9 @@ packaging==25.0 pathspec==0.12.1 # via mypy pip-tools==7.4.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/dev.in + # via -r requirements/dev.in pkgconfig==1.5.5 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # via -r requirements/test.in platformdirs==4.3.8 # via virtualenv pluggy==1.6.0 @@ -145,13 +145,13 @@ pluggy==1.6.0 # pytest # pytest-cov pre-commit==4.2.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # via -r requirements/lint.in propcache==0.3.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # -r requirements/runtime-deps.in # yarl proxy-py==2.4.10 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # via -r requirements/test.in pycares==4.9.0 # via aiodns pycparser==2.22 @@ -177,34 +177,34 @@ pyproject-hooks==1.2.0 # pip-tools pytest==8.4.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in # pytest-codspeed # pytest-cov # pytest-mock # pytest-xdist pytest-codspeed==4.0.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in pytest-cov==6.2.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # via -r requirements/test.in pytest-mock==3.14.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in pytest-xdist==3.8.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # via -r requirements/test.in python-dateutil==2.9.0.post0 # via freezegun python-on-whales==0.78.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in pyyaml==6.0.2 # via pre-commit re-assert==1.1.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # via -r requirements/test.in regex==2024.11.6 # via re-assert requests==2.32.4 @@ -215,16 +215,16 @@ requests==2.32.4 rich==14.0.0 # via pytest-codspeed setuptools-git==1.2 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # via -r requirements/test.in six==1.17.0 # via python-dateutil slotscheck==0.19.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # via -r requirements/lint.in snowballstemmer==3.0.1 # via sphinx sphinx==8.1.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc.in + # -r requirements/doc.in # sphinxcontrib-spelling # sphinxcontrib-towncrier sphinxcontrib-applehelp==2.0.0 @@ -240,9 +240,9 @@ sphinxcontrib-qthelp==2.0.0 sphinxcontrib-serializinghtml==2.0.0 # via sphinx sphinxcontrib-spelling==8.0.1 ; platform_system != "Windows" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc-spelling.in + # via -r requirements/doc-spelling.in sphinxcontrib-towncrier==0.5.0a0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc.in + # via -r requirements/doc.in stamina==25.1.0 # via cherry-picker tenacity==9.1.2 @@ -260,12 +260,12 @@ tomli==2.2.1 # towncrier towncrier==24.8.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc.in + # -r requirements/doc.in # sphinxcontrib-towncrier trustme==1.2.1 ; platform_machine != "i686" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in typing-extensions==4.14.1 # via # aiosignal @@ -285,26 +285,26 @@ urllib3==2.5.0 # via requests uvloop==0.21.0 ; platform_system != "Windows" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/base.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r requirements/base.in + # -r requirements/lint.in valkey==6.1.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # via -r requirements/lint.in virtualenv==20.31.2 # via pre-commit wait-for-it==2.3.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # via -r requirements/test.in wheel==0.45.1 # via pip-tools yarl==1.20.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in zlib-ng==0.5.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in zstandard==0.23.0 ; implementation_name == "cpython" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # -r requirements/lint.in + # -r requirements/runtime-deps.in # The following packages are considered to be unsafe in a requirements file: pip==25.1.1 diff --git a/requirements/dev.txt b/requirements/dev.txt index 2b93b97dcbf..b03982edf44 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -6,32 +6,32 @@ # aiodns==3.5.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # -r requirements/lint.in + # -r requirements/runtime-deps.in aiohappyeyeballs==2.6.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in aiohttp-theme==0.1.7 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc.in + # via -r requirements/doc.in aiosignal==1.4.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in alabaster==1.0.0 # via sphinx annotated-types==0.7.0 # via pydantic async-timeout==5.0.1 ; python_version < "3.11" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # -r requirements/runtime-deps.in # valkey attrs==25.3.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in babel==2.17.0 # via sphinx blockbuster==1.5.25 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in brotli==1.1.0 ; platform_python_implementation == "CPython" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in build==1.2.2.post1 # via pip-tools certifi==2025.7.14 @@ -56,13 +56,13 @@ click==8.1.8 # wait-for-it coverage==7.9.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/test.in # pytest-cov cryptography==45.0.5 # via # pyjwt # trustme -distlib==0.3.9 +distlib==0.4.0 # via virtualenv docutils==0.21.2 # via sphinx @@ -76,16 +76,16 @@ forbiddenfruit==0.1.4 # via blockbuster freezegun==1.5.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in frozenlist==1.7.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # -r requirements/runtime-deps.in # aiosignal gidgethub==5.4.0 # via cherry-picker gunicorn==23.0.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/base.in + # via -r requirements/base.in identify==2.6.12 # via pre-commit idna==3.4 @@ -99,8 +99,8 @@ iniconfig==2.1.0 # via pytest isal==1.7.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in jinja2==3.1.6 # via # sphinx @@ -113,12 +113,12 @@ mdurl==0.1.2 # via markdown-it-py multidict==6.6.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # -r requirements/runtime-deps.in # yarl mypy==1.17.0 ; implementation_name == "cpython" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in mypy-extensions==1.1.0 # via mypy nodeenv==1.9.1 @@ -134,7 +134,7 @@ pathspec==0.12.1 pip-tools==7.4.1 # via -r requirements/dev.in pkgconfig==1.5.5 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # via -r requirements/test.in platformdirs==4.3.8 # via virtualenv pluggy==1.6.0 @@ -142,13 +142,13 @@ pluggy==1.6.0 # pytest # pytest-cov pre-commit==4.2.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # via -r requirements/lint.in propcache==0.3.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # -r requirements/runtime-deps.in # yarl proxy-py==2.4.10 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # via -r requirements/test.in pycares==4.9.0 # via aiodns pycparser==2.22 @@ -172,34 +172,34 @@ pyproject-hooks==1.2.0 # pip-tools pytest==8.4.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in # pytest-codspeed # pytest-cov # pytest-mock # pytest-xdist pytest-codspeed==4.0.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in pytest-cov==6.2.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # via -r requirements/test.in pytest-mock==3.14.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in pytest-xdist==3.8.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # via -r requirements/test.in python-dateutil==2.9.0.post0 # via freezegun python-on-whales==0.78.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in pyyaml==6.0.2 # via pre-commit re-assert==1.1.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # via -r requirements/test.in regex==2024.11.6 # via re-assert requests==2.32.4 @@ -209,16 +209,16 @@ requests==2.32.4 rich==14.0.0 # via pytest-codspeed setuptools-git==1.2 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # via -r requirements/test.in six==1.17.0 # via python-dateutil slotscheck==0.19.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # via -r requirements/lint.in snowballstemmer==3.0.1 # via sphinx sphinx==8.1.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc.in + # -r requirements/doc.in # sphinxcontrib-towncrier sphinxcontrib-applehelp==2.0.0 # via sphinx @@ -233,7 +233,7 @@ sphinxcontrib-qthelp==2.0.0 sphinxcontrib-serializinghtml==2.0.0 # via sphinx sphinxcontrib-towncrier==0.5.0a0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc.in + # via -r requirements/doc.in stamina==25.1.0 # via cherry-picker tenacity==9.1.2 @@ -251,12 +251,12 @@ tomli==2.2.1 # towncrier towncrier==24.8.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/doc.in + # -r requirements/doc.in # sphinxcontrib-towncrier trustme==1.2.1 ; platform_machine != "i686" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in typing-extensions==4.14.1 # via # aiosignal @@ -276,26 +276,26 @@ urllib3==2.5.0 # via requests uvloop==0.21.0 ; platform_system != "Windows" and implementation_name == "cpython" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/base.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # -r requirements/base.in + # -r requirements/lint.in valkey==6.1.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in + # via -r requirements/lint.in virtualenv==20.31.2 # via pre-commit wait-for-it==2.3.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # via -r requirements/test.in wheel==0.45.1 # via pip-tools yarl==1.20.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in zlib-ng==0.5.1 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/test.in + # -r requirements/lint.in + # -r requirements/test.in zstandard==0.23.0 ; platform_python_implementation == "CPython" and python_version < "3.14" # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/lint.in - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # -r requirements/lint.in + # -r requirements/runtime-deps.in # The following packages are considered to be unsafe in a requirements file: pip==25.1.1 diff --git a/requirements/lint.txt b/requirements/lint.txt index c6c254a6586..34c88c4e6d0 100644 --- a/requirements/lint.txt +++ b/requirements/lint.txt @@ -23,7 +23,7 @@ click==8.1.8 # via slotscheck cryptography==45.0.5 # via trustme -distlib==0.3.9 +distlib==0.4.0 # via virtualenv exceptiongroup==1.3.0 # via pytest From 4735afe562f6fdb6ffec775fe96f34574976e5a3 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Jul 2025 12:37:30 +0000 Subject: [PATCH 13/30] Bump virtualenv from 20.31.2 to 20.32.0 (#11327) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [virtualenv](https://github.com/pypa/virtualenv) from 20.31.2 to 20.32.0.
Release notes

Sourced from virtualenv's releases.

20.32.0

What's Changed

New Contributors

Full Changelog: https://github.com/pypa/virtualenv/compare/20.31.2...20.32.0

Changelog

Sourced from virtualenv's changelog.

v20.32.0 (2025-07-20)

Features - 20.32.0

- Warn on incorrect invocation of Nushell activation script -
by :user:`esafak`. (:issue:`nushell_activation`)
- Discover uv-managed Python installations (:issue:`2901`)

Bugfixes - 20.32.0

  • Ignore missing absolute paths for python discovery - by :user:esafak (:issue:2870)
  • Upgrade embedded setuptools to 80.9.0 from 80.3.1 - by :user:gaborbernat. (:issue:2900)
Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=virtualenv&package-manager=pip&previous-version=20.31.2&new-version=20.32.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot 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`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@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) - `@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) - `@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)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/constraints.txt | 2 +- requirements/dev.txt | 2 +- requirements/lint.txt | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/requirements/constraints.txt b/requirements/constraints.txt index c6c91dccf63..4f645af785e 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -289,7 +289,7 @@ uvloop==0.21.0 ; platform_system != "Windows" # -r requirements/lint.in valkey==6.1.0 # via -r requirements/lint.in -virtualenv==20.31.2 +virtualenv==20.32.0 # via pre-commit wait-for-it==2.3.0 # via -r requirements/test.in diff --git a/requirements/dev.txt b/requirements/dev.txt index b03982edf44..581a732d59a 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -280,7 +280,7 @@ uvloop==0.21.0 ; platform_system != "Windows" and implementation_name == "cpytho # -r requirements/lint.in valkey==6.1.0 # via -r requirements/lint.in -virtualenv==20.31.2 +virtualenv==20.32.0 # via pre-commit wait-for-it==2.3.0 # via -r requirements/test.in diff --git a/requirements/lint.txt b/requirements/lint.txt index 34c88c4e6d0..a1389ef3201 100644 --- a/requirements/lint.txt +++ b/requirements/lint.txt @@ -116,7 +116,7 @@ uvloop==0.21.0 ; platform_system != "Windows" # via -r requirements/lint.in valkey==6.1.0 # via -r requirements/lint.in -virtualenv==20.31.2 +virtualenv==20.32.0 # via pre-commit zlib-ng==0.5.1 # via -r requirements/lint.in From be842124b026f224c3830c45ab327f2ee10b70d4 Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Mon, 21 Jul 2025 17:11:52 +0000 Subject: [PATCH 14/30] [PR #11226/8afdc4dc backport][3.12] Reflect llhttp license in core packaging metadata MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reflect llhttp license in core packaging metadata aiohttp vendors llhttp in its source distributions, and it also bundles it as a part for platform-specific wheels. Previously, this was not exposed in the core packaging metadata. With this patch, now it is. The change includes both the license file from the vendored project and adds it to the SPDX expression following PEP 639. This is configured through the `setup.cfg` config for the `setuptools` build backend. PR #11226 Co-Authored-By: Karolina Surma Co-Authored-By: 🇺🇦 Sviatoslav Sydorenko --- CHANGES/11226.packaging.rst | 1 + CONTRIBUTORS.txt | 1 + setup.cfg | 6 ++++-- 3 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 CHANGES/11226.packaging.rst diff --git a/CHANGES/11226.packaging.rst b/CHANGES/11226.packaging.rst new file mode 100644 index 00000000000..293a9beaadb --- /dev/null +++ b/CHANGES/11226.packaging.rst @@ -0,0 +1 @@ +Started including the ``llhttp`` :file:`LICENSE` file in wheels by adding ``vendor/llhttp/LICENSE`` to ``license-files`` in :file:`setup.cfg` -- by :user:`threexc`. diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt index 976f8419226..941beea7b87 100644 --- a/CONTRIBUTORS.txt +++ b/CONTRIBUTORS.txt @@ -344,6 +344,7 @@ Tim Menninger Tolga Tezel Tomasz Trebski Toshiaki Tanaka +Trevor Gamblin Trinh Hoang Nhu Tymofii Tsiapa Vadim Suharnikov diff --git a/setup.cfg b/setup.cfg index 1f70301856b..e3b7dc5102f 100644 --- a/setup.cfg +++ b/setup.cfg @@ -16,8 +16,10 @@ long_description = file: README.rst long_description_content_type = text/x-rst maintainer = aiohttp team maintainer_email = team@aiohttp.org -license = Apache-2.0 -license_files = LICENSE.txt +license = Apache-2.0 AND MIT +license_files = + LICENSE.txt + vendor/llhttp/LICENSE classifiers = Development Status :: 5 - Production/Stable From 83c3b8c9977d19c0426f1c9a3b9b4fa173342df3 Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Mon, 21 Jul 2025 17:15:20 +0000 Subject: [PATCH 15/30] [PR #11226/8afdc4dc backport][3.13] Reflect llhttp license in core packaging metadata MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reflect llhttp license in core packaging metadata aiohttp vendors llhttp in its source distributions, and it also bundles it as a part for platform-specific wheels. Previously, this was not exposed in the core packaging metadata. With this patch, now it is. The change includes both the license file from the vendored project and adds it to the SPDX expression following PEP 639. This is configured through the `setup.cfg` config for the `setuptools` build backend. PR #11226 Co-Authored-By: Karolina Surma Co-Authored-By: 🇺🇦 Sviatoslav Sydorenko --- CHANGES/11226.packaging.rst | 1 + CONTRIBUTORS.txt | 1 + setup.cfg | 6 ++++-- 3 files changed, 6 insertions(+), 2 deletions(-) create mode 100644 CHANGES/11226.packaging.rst diff --git a/CHANGES/11226.packaging.rst b/CHANGES/11226.packaging.rst new file mode 100644 index 00000000000..293a9beaadb --- /dev/null +++ b/CHANGES/11226.packaging.rst @@ -0,0 +1 @@ +Started including the ``llhttp`` :file:`LICENSE` file in wheels by adding ``vendor/llhttp/LICENSE`` to ``license-files`` in :file:`setup.cfg` -- by :user:`threexc`. diff --git a/CONTRIBUTORS.txt b/CONTRIBUTORS.txt index e527bb50b59..2798810de41 100644 --- a/CONTRIBUTORS.txt +++ b/CONTRIBUTORS.txt @@ -345,6 +345,7 @@ Tim Menninger Tolga Tezel Tomasz Trebski Toshiaki Tanaka +Trevor Gamblin Trinh Hoang Nhu Tymofii Tsiapa Vadim Suharnikov diff --git a/setup.cfg b/setup.cfg index 426dd1a3fcf..6f066901d36 100644 --- a/setup.cfg +++ b/setup.cfg @@ -16,8 +16,10 @@ long_description = file: README.rst long_description_content_type = text/x-rst maintainer = aiohttp team maintainer_email = team@aiohttp.org -license = Apache-2.0 -license_files = LICENSE.txt +license = Apache-2.0 AND MIT +license_files = + LICENSE.txt + vendor/llhttp/LICENSE classifiers = Development Status :: 5 - Production/Stable From 8019a1df8ef5c89d003b2d240bbc833d2371aa2a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 24 Jul 2025 11:04:22 +0000 Subject: [PATCH 16/30] Bump pypa/cibuildwheel from 3.0.1 to 3.1.0 (#11332) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [pypa/cibuildwheel](https://github.com/pypa/cibuildwheel) from 3.0.1 to 3.1.0.
Release notes

Sourced from pypa/cibuildwheel's releases.

v3.1.0

  • 🌟 CPython 3.14 wheels are now built by default - without the "cpython-prerelease" enable set. It's time to build and upload these wheels to PyPI! This release includes CPython 3.14.0rc1, which is guaranteed to be ABI compatible with the final release. (#2507) Free-threading is no longer experimental in 3.14, so you have to skip it explicitly with 'cp31?t-*' if you don't support it yet. (#2503)
  • 🌟 Adds the ability to build wheels for Android! Set the platform option to android on Linux or macOS to try it out! (#2349)
  • 🌟 Adds Pyodide 0.28, which builds 3.13 wheels (#2487)
  • ✨ Support for 32-bit manylinux_2_28 (now a consistent default) and manylinux_2_34 added (#2500)
  • 🛠 Improved summary, will also use markdown summary output on GHA (#2469)
  • 🛠 The riscv64 images now have a working default (as they are now part of pypy/manylinux), but are still experimental (and behind an enable) since you can't push them to PyPI yet (#2506)
  • 🛠 Fixed a typo in the 3.9 MUSL riscv64 identifier (cp39-musllinux_ricv64 -> cp39-musllinux_riscv64) (#2490)
  • 🛠 Mistyping --only now shows the correct possibilities, and even suggests near matches on Python 3.14+ (#2499)
  • 🛠 Only support one output from the repair step on linux like other platforms; auditwheel fixed this over four years ago! (#2478)
  • 🛠 We now use pattern matching extensively (#2434)
  • 📚 We now have platform maintainers for our special platforms and interpreters! (#2481)
Changelog

Sourced from pypa/cibuildwheel's changelog.

v3.1.0

23 July 2025

  • 🌟 CPython 3.14 wheels are now built by default - without the "cpython-prerelease" enable set. It's time to build and upload these wheels to PyPI! This release includes CPython 3.14.0rc1, which is guaranteed to be ABI compatible with the final release. (#2507) Free-threading is no longer experimental in 3.14, so you have to skip it explicitly with 'cp31?t-*' if you don't support it yet. (#2503)
  • 🌟 Adds the ability to build wheels for Android! Set the platform option to android on Linux or macOS to try it out! (#2349)
  • 🌟 Adds Pyodide 0.28, which builds 3.13 wheels (#2487)
  • ✨ Support for 32-bit manylinux_2_28 (now a consistent default) and manylinux_2_34 added (#2500)
  • 🛠 Improved summary, will also use markdown summary output on GHA (#2469)
  • 🛠 The riscv64 images now have a working default (as they are now part of pypy/manylinux), but are still experimental (and behind an enable) since you can't push them to PyPI yet (#2506)
  • 🛠 Fixed a typo in the 3.9 MUSL riscv64 identifier (cp39-musllinux_ricv64 -> cp39-musllinux_riscv64) (#2490)
  • 🛠 Mistyping --only now shows the correct possibilities, and even suggests near matches on Python 3.14+ (#2499)
  • 🛠 Only support one output from the repair step on linux like other platforms; auditwheel fixed this over four years ago! (#2478)
  • 🛠 We now use pattern matching extensively (#2434)
  • 📚 We now have platform maintainers for our special platforms and interpreters! (#2481)
Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pypa/cibuildwheel&package-manager=github_actions&previous-version=3.0.1&new-version=3.1.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot 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`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@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) - `@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) - `@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)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/ci-cd.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index 50f55e7d26e..d98665d07b2 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -418,7 +418,7 @@ jobs: run: | make cythonize - name: Build wheels - uses: pypa/cibuildwheel@v3.0.1 + uses: pypa/cibuildwheel@v3.1.0 env: CIBW_SKIP: pp* ${{ matrix.musl == 'musllinux' && '*manylinux*' || '*musllinux*' }} CIBW_ARCHS_MACOS: x86_64 arm64 universal2 From 89814e7826070fa0a21d44b36e596e9691919ed0 Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Thu, 24 Jul 2025 15:00:21 +0100 Subject: [PATCH 17/30] [PR #11333/b7ffe616 backport][3.13] Readd 3.14 to experimental (#11334) **This is a backport of PR #11333 as merged into master (b7ffe616d90d4114f2b78c78f6cf21af4fd106d2).** Co-authored-by: Sam Bull --- .github/workflows/ci-cd.yml | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index d98665d07b2..e37cb68f2b8 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -122,11 +122,7 @@ jobs: needs: gen_llhttp strategy: matrix: - # Note that 3.13.4 is broken on Windows which - # is why 3.13.5 was rushed out. When 3.13.5 is fully - # available, we can remove 3.13.4 from the matrix - # and switch it back to 3.13 - pyver: [3.9, '3.10', '3.11', '3.12', '3.13.3'] + pyver: [3.9, '3.10', '3.11', '3.12', '3.13'] no-extensions: ['', 'Y'] os: [ubuntu, macos, windows] experimental: [false] @@ -140,10 +136,10 @@ jobs: no-extensions: 'Y' os: ubuntu experimental: false - # - os: ubuntu - # pyver: "3.14" - # experimental: true - # no-extensions: 'Y' + - os: ubuntu + pyver: "3.14" + experimental: true + no-extensions: 'Y' fail-fast: true runs-on: ${{ matrix.os }}-latest continue-on-error: ${{ matrix.experimental }} From 63c4d0da685736b4041ed8fffd59b832ba477039 Mon Sep 17 00:00:00 2001 From: Sam Bull Date: Thu, 24 Jul 2025 20:46:25 +0100 Subject: [PATCH 18/30] Fix backwards compatibility for .write_bytes() (#11336) --- aiohttp/client_reqrep.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aiohttp/client_reqrep.py b/aiohttp/client_reqrep.py index 4f6ce30a567..c75e0dd6fb8 100644 --- a/aiohttp/client_reqrep.py +++ b/aiohttp/client_reqrep.py @@ -1334,7 +1334,7 @@ async def write_bytes( self, writer: AbstractStreamWriter, conn: "Connection", - content_length: Optional[int], + content_length: Optional[int] = None, ) -> None: """ Write the request body to the connection stream. From ba06464df7eecda0a86d4549a936eec1d634cddb Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Thu, 24 Jul 2025 10:04:02 -1000 Subject: [PATCH 19/30] [PR #11336/63c4d0da backport][3.12] Fix backwards compatibility for .write_bytes() (#11337) Co-authored-by: Sam Bull --- aiohttp/client_reqrep.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aiohttp/client_reqrep.py b/aiohttp/client_reqrep.py index 3209440b53d..2586119b288 100644 --- a/aiohttp/client_reqrep.py +++ b/aiohttp/client_reqrep.py @@ -1326,7 +1326,7 @@ async def write_bytes( self, writer: AbstractStreamWriter, conn: "Connection", - content_length: Optional[int], + content_length: Optional[int] = None, ) -> None: """ Write the request body to the connection stream. From b6cbb61a1c768a8d458e6505218f8a9908b15455 Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Fri, 25 Jul 2025 00:10:05 +0100 Subject: [PATCH 20/30] [PR #11335/5b5eb8bc backport][3.13] small speedup by avoiding redundant `IOBasePayload.size` calls (#11339) **This is a backport of PR #11335 as merged into master (5b5eb8bc38976dc360138e79a2ca405d5650fea4).** Co-authored-by: Cycloctane --- aiohttp/multipart.py | 5 +++-- aiohttp/web_response.py | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/aiohttp/multipart.py b/aiohttp/multipart.py index dae65d8385c..3464b1c2307 100644 --- a/aiohttp/multipart.py +++ b/aiohttp/multipart.py @@ -976,14 +976,15 @@ def size(self) -> Optional[int]: """Size of the payload.""" total = 0 for part, encoding, te_encoding in self._parts: - if encoding or te_encoding or part.size is None: + part_size = part.size + if encoding or te_encoding or part_size is None: return None total += int( 2 + len(self._boundary) + 2 - + part.size # b'--'+self._boundary+b'\r\n' + + part_size # b'--'+self._boundary+b'\r\n' + len(part._binary_headers) + 2 # b'\r\n' ) diff --git a/aiohttp/web_response.py b/aiohttp/web_response.py index cdc90cc4f1c..e5f8b6cd652 100644 --- a/aiohttp/web_response.py +++ b/aiohttp/web_response.py @@ -791,8 +791,8 @@ async def _start(self, request: "BaseRequest") -> AbstractStreamWriter: del self._headers[hdrs.CONTENT_LENGTH] elif not self._chunked: if isinstance(self._body, Payload): - if self._body.size is not None: - self._headers[hdrs.CONTENT_LENGTH] = str(self._body.size) + if (size := self._body.size) is not None: + self._headers[hdrs.CONTENT_LENGTH] = str(size) else: body_len = len(self._body) if self._body else "0" # https://www.rfc-editor.org/rfc/rfc9110.html#section-8.6-7 From 79a01dcd1c1dd39520d7433bf5cf5d0711591353 Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Fri, 25 Jul 2025 00:10:19 +0100 Subject: [PATCH 21/30] [PR #11335/5b5eb8bc backport][3.12] small speedup by avoiding redundant `IOBasePayload.size` calls (#11338) **This is a backport of PR #11335 as merged into master (5b5eb8bc38976dc360138e79a2ca405d5650fea4).** Co-authored-by: Cycloctane --- aiohttp/multipart.py | 5 +++-- aiohttp/web_response.py | 4 ++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/aiohttp/multipart.py b/aiohttp/multipart.py index 02605146720..54dfd4843b0 100644 --- a/aiohttp/multipart.py +++ b/aiohttp/multipart.py @@ -972,14 +972,15 @@ def size(self) -> Optional[int]: """Size of the payload.""" total = 0 for part, encoding, te_encoding in self._parts: - if encoding or te_encoding or part.size is None: + part_size = part.size + if encoding or te_encoding or part_size is None: return None total += int( 2 + len(self._boundary) + 2 - + part.size # b'--'+self._boundary+b'\r\n' + + part_size # b'--'+self._boundary+b'\r\n' + len(part._binary_headers) + 2 # b'\r\n' ) diff --git a/aiohttp/web_response.py b/aiohttp/web_response.py index cdc90cc4f1c..e5f8b6cd652 100644 --- a/aiohttp/web_response.py +++ b/aiohttp/web_response.py @@ -791,8 +791,8 @@ async def _start(self, request: "BaseRequest") -> AbstractStreamWriter: del self._headers[hdrs.CONTENT_LENGTH] elif not self._chunked: if isinstance(self._body, Payload): - if self._body.size is not None: - self._headers[hdrs.CONTENT_LENGTH] = str(self._body.size) + if (size := self._body.size) is not None: + self._headers[hdrs.CONTENT_LENGTH] = str(size) else: body_len = len(self._body) if self._body else "0" # https://www.rfc-editor.org/rfc/rfc9110.html#section-8.6-7 From 70f9e17f30ff12ca125ea3e48a6c5d26a01d024f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 25 Jul 2025 11:15:39 +0000 Subject: [PATCH 22/30] Bump rich from 14.0.0 to 14.1.0 (#11344) Bumps [rich](https://github.com/Textualize/rich) from 14.0.0 to 14.1.0.
Release notes

Sourced from rich's releases.

The Lively Release

Live objects may now be nested. Previously a progress bar inside another progress context would fail. See the changelog below for this and other changes.

[14.1.0] - 2025-06-25

Changed

Fixed

Added

  • Added TTY_INTERACTIVE environment variable to force interactive mode off or on Textualize/rich#3777
Changelog

Sourced from rich's changelog.

[14.1.0] - 2025-06-25

Changed

Fixed

Added

  • Added TTY_INTERACTIVE environment variable to force interactive mode off or on Textualize/rich#3777
Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=rich&package-manager=pip&previous-version=14.0.0&new-version=14.1.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot 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`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@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) - `@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) - `@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)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/constraints.txt | 3 +-- requirements/dev.txt | 3 +-- requirements/lint.txt | 3 +-- requirements/test.txt | 29 ++++++++++++++--------------- 4 files changed, 17 insertions(+), 21 deletions(-) diff --git a/requirements/constraints.txt b/requirements/constraints.txt index 4f645af785e..a64da13de65 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -212,7 +212,7 @@ requests==2.32.4 # cherry-picker # sphinx # sphinxcontrib-spelling -rich==14.0.0 +rich==14.1.0 # via pytest-codspeed setuptools-git==1.2 # via -r requirements/test.in @@ -275,7 +275,6 @@ typing-extensions==4.14.1 # pydantic # pydantic-core # python-on-whales - # rich # typing-inspection typing-inspection==0.4.1 # via pydantic diff --git a/requirements/dev.txt b/requirements/dev.txt index 581a732d59a..a9daf0c8c19 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -206,7 +206,7 @@ requests==2.32.4 # via # cherry-picker # sphinx -rich==14.0.0 +rich==14.1.0 # via pytest-codspeed setuptools-git==1.2 # via -r requirements/test.in @@ -266,7 +266,6 @@ typing-extensions==4.14.1 # pydantic # pydantic-core # python-on-whales - # rich # typing-inspection typing-inspection==0.4.1 # via pydantic diff --git a/requirements/lint.txt b/requirements/lint.txt index a1389ef3201..bf1268c429b 100644 --- a/requirements/lint.txt +++ b/requirements/lint.txt @@ -88,7 +88,7 @@ python-on-whales==0.78.0 # via -r requirements/lint.in pyyaml==6.0.2 # via pre-commit -rich==14.0.0 +rich==14.1.0 # via pytest-codspeed six==1.17.0 # via python-dateutil @@ -108,7 +108,6 @@ typing-extensions==4.14.1 # pydantic # pydantic-core # python-on-whales - # rich # typing-inspection typing-inspection==0.4.1 # via pydantic diff --git a/requirements/test.txt b/requirements/test.txt index 4def3ada491..27dd68f2b8d 100644 --- a/requirements/test.txt +++ b/requirements/test.txt @@ -5,21 +5,21 @@ # pip-compile --allow-unsafe --output-file=requirements/test.txt --resolver=backtracking --strip-extras requirements/test.in # aiodns==3.5.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in aiohappyeyeballs==2.6.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in aiosignal==1.4.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in annotated-types==0.7.0 # via pydantic async-timeout==5.0.1 ; python_version < "3.11" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in attrs==25.3.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in blockbuster==1.5.25 # via -r requirements/test.in brotli==1.1.0 ; platform_python_implementation == "CPython" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in cffi==1.17.1 # via # cryptography @@ -43,10 +43,10 @@ freezegun==1.5.3 # via -r requirements/test.in frozenlist==1.7.0 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # -r requirements/runtime-deps.in # aiosignal gunicorn==23.0.0 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/base.in + # via -r requirements/base.in idna==3.4 # via # trustme @@ -61,7 +61,7 @@ mdurl==0.1.2 # via markdown-it-py multidict==6.6.3 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # -r requirements/runtime-deps.in # yarl mypy==1.17.0 ; implementation_name == "cpython" # via -r requirements/test.in @@ -81,7 +81,7 @@ pluggy==1.6.0 # pytest-cov propcache==0.3.2 # via - # -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # -r requirements/runtime-deps.in # yarl proxy-py==2.4.10 # via -r requirements/test.in @@ -120,7 +120,7 @@ re-assert==1.1.0 # via -r requirements/test.in regex==2024.11.6 # via re-assert -rich==14.0.0 +rich==14.1.0 # via pytest-codspeed setuptools-git==1.2 # via -r requirements/test.in @@ -142,17 +142,16 @@ typing-extensions==4.14.1 # pydantic # pydantic-core # python-on-whales - # rich # typing-inspection typing-inspection==0.4.1 # via pydantic uvloop==0.21.0 ; platform_system != "Windows" and implementation_name == "cpython" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/base.in + # via -r requirements/base.in wait-for-it==2.3.0 # via -r requirements/test.in yarl==1.20.1 - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in zlib-ng==0.5.1 # via -r requirements/test.in zstandard==0.23.0 ; platform_python_implementation == "CPython" and python_version < "3.14" - # via -r /home/dependabot/dependabot-updater/tmp/20250715-1382-5kxn0z/dependabot_20250715-1382-g5pe88/requirements/runtime-deps.in + # via -r requirements/runtime-deps.in From 9dc7d989ef6aebb9a1641e7ff6a23e99a1f35098 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 25 Jul 2025 11:20:20 +0000 Subject: [PATCH 23/30] Bump pypa/cibuildwheel from 3.1.0 to 3.1.1 (#11345) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [pypa/cibuildwheel](https://github.com/pypa/cibuildwheel) from 3.1.0 to 3.1.1.
Release notes

Sourced from pypa/cibuildwheel's releases.

v3.1.1

  • 🐛 Fix a bug showing an incorrect wheel count at the end of execution, and misrepresenting test-only runs in the GitHub Action summary (#2512)
  • 📚 Docs fix (#2510)
Changelog

Sourced from pypa/cibuildwheel's changelog.

v3.1.1

24 July 2025

  • 🐛 Fix a bug showing an incorrect wheel count at the end of execution, and misrepresenting test-only runs in the GitHub Action summary (#2512)
  • 📚 Docs fix (#2510)
Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=pypa/cibuildwheel&package-manager=github_actions&previous-version=3.1.0&new-version=3.1.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot 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`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@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) - `@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) - `@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)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/ci-cd.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index e37cb68f2b8..e39c41160cc 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -414,7 +414,7 @@ jobs: run: | make cythonize - name: Build wheels - uses: pypa/cibuildwheel@v3.1.0 + uses: pypa/cibuildwheel@v3.1.1 env: CIBW_SKIP: pp* ${{ matrix.musl == 'musllinux' && '*manylinux*' || '*musllinux*' }} CIBW_ARCHS_MACOS: x86_64 arm64 universal2 From 40ed4b61e9db5ff84e460992ca68592a377b105d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 25 Jul 2025 11:26:21 +0000 Subject: [PATCH 24/30] Bump coverage from 7.9.2 to 7.10.0 (#11346) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [coverage](https://github.com/nedbat/coveragepy) from 7.9.2 to 7.10.0.
Changelog

Sourced from coverage's changelog.

Version 7.10.0 — 2025-07-24

  • A new configuration option: ":ref:config_run_patch" specifies named patches to work around some limitations in coverage measurement. These patches are available:

    • patch = _exit lets coverage save its data even when :func:os._exit() <python:os._exit> is used to abruptly end the process. This closes long-standing issue 310_ as well as its duplicates: issue 312, issue 1673, issue 1845, and issue 1941.

    • patch = subprocess measures coverage in Python subprocesses created with :mod:subprocess, :func:os.system, or one of the :func:execv <python:os.execl> or :func:spawnv <python:os.spawnl> family of functions. Closes old issue 367_ and duplicate issue 378_.

    • patch = execv adjusts the :func:execv <python:os.execl> family of functions to save coverage data before ending the current program and starting the next. Not available on Windows. Closes issue 43_ after 15 years!

  • The HTML report now dimly colors subsequent lines in multi-line statements. They used to have no color. This gives a better indication of the amount of code missing in the report. Closes issue 1308_.

  • Two new exclusion patterns are part of the defaults: ... is automatically excluded as a line and if TYPE_CHECKING: is excluded as a branch. Closes issue 831_.

  • A new command-line option: --save-signal=USR1 specifies a signal that coverage.py will listen for. When the signal is sent, the coverage data will be saved. This makes it possible to save data from within long-running processes. Thanks, Arkady Gilinsky <pull 1998_>_.

  • A new configuration option: ":ref:config_report_partial_also" is a list of regexes to add as pragmas for partial branches. This parallels the ":ref:config_report_exclude_also" setting for adding line exclusion patterns.

  • A few file path configuration settings didn't allow for tilde expansion: :ref:config_json_output, :ref:config_lcov_output and :ref:config_run_debug_file. This is now fixed.

  • Wheels are included for 3.14 now that 3.14 rc1 is available.

  • We no longer ship a PyPy-specific wheel. PyPy will install the pure-Python wheel. Closes issue 2001_.

  • In the very unusual situation of not having a current frame, coverage no

... (truncated)

Commits
  • ef59be0 build: missed an expected distribution count
  • f49f061 docs: sample HTML for 7.10.0
  • 6a7d5ca docs: prep for 7.10.0
  • 395c8cd build: provide 3.14 wheels
  • 6154fda feat: patch=execv
  • 787e5c4 test: we don't use 'expensive' as a mark now
  • 7e49831 refactor: patch=_exit without a global
  • 4d4ddd8 fix: better ellipsis exclusion regex. #831
  • d578c52 fix: don't assume we have a current frame. #2005
  • ecf53d5 docs: remind myself what the cores are
  • Additional commits viewable in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=coverage&package-manager=pip&previous-version=7.9.2&new-version=7.10.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot 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`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@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) - `@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) - `@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)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/constraints.txt | 2 +- requirements/dev.txt | 2 +- requirements/test.txt | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/requirements/constraints.txt b/requirements/constraints.txt index a64da13de65..babb8f51a0b 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -54,7 +54,7 @@ click==8.1.8 # slotscheck # towncrier # wait-for-it -coverage==7.9.2 +coverage==7.10.0 # via # -r requirements/test.in # pytest-cov diff --git a/requirements/dev.txt b/requirements/dev.txt index a9daf0c8c19..2554f5b6f18 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -54,7 +54,7 @@ click==8.1.8 # slotscheck # towncrier # wait-for-it -coverage==7.9.2 +coverage==7.10.0 # via # -r requirements/test.in # pytest-cov diff --git a/requirements/test.txt b/requirements/test.txt index 27dd68f2b8d..7ca4e084b38 100644 --- a/requirements/test.txt +++ b/requirements/test.txt @@ -27,7 +27,7 @@ cffi==1.17.1 # pytest-codspeed click==8.1.8 # via wait-for-it -coverage==7.9.2 +coverage==7.10.0 # via # -r requirements/test.in # pytest-cov From e9996fa30b64cd5024c6a3a569101ef149fd8be3 Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Sun, 27 Jul 2025 16:47:09 +0100 Subject: [PATCH 25/30] [PR #11347/eac0ef92 backport][3.13] Update web_advanced docs (#11349) **This is a backport of PR #11347 as merged into master (eac0ef9291fe34912809619086fe4e6c859e2cc7).** Co-authored-by: Cycloctane --- CHANGES/11347.doc.rst | 3 +++ docs/web_advanced.rst | 15 +++------------ 2 files changed, 6 insertions(+), 12 deletions(-) create mode 100644 CHANGES/11347.doc.rst diff --git a/CHANGES/11347.doc.rst b/CHANGES/11347.doc.rst new file mode 100644 index 00000000000..abfbd21963e --- /dev/null +++ b/CHANGES/11347.doc.rst @@ -0,0 +1,3 @@ +Remove outdated contents of ``aiohttp-devtools`` and ``aiohttp-swagger`` +from Web_advanced docs. +-- by :user:`Cycloctane` diff --git a/docs/web_advanced.rst b/docs/web_advanced.rst index a4ca513b572..0912327df6e 100644 --- a/docs/web_advanced.rst +++ b/docs/web_advanced.rst @@ -1264,20 +1264,13 @@ the middleware might use :meth:`BaseRequest.clone`. for modifying *scheme*, *host* and *remote* attributes according to ``Forwarded`` and ``X-Forwarded-*`` HTTP headers. -Swagger support ---------------- - -`aiohttp-swagger `_ is a -library that allow to add Swagger documentation and embed the -Swagger-UI into your :mod:`aiohttp.web` project. - CORS support ------------ :mod:`aiohttp.web` itself does not support `Cross-Origin Resource Sharing `_, but there is an aiohttp plugin for it: -`aiohttp_cors `_. +`aiohttp-cors `_. Debug Toolbar @@ -1320,10 +1313,8 @@ Install with ``pip``: $ pip install aiohttp-devtools -* ``runserver`` provides a development server with auto-reload, - live-reload, static file serving. -* ``start`` is a `cookiecutter command which does the donkey work - of creating new :mod:`aiohttp.web` Applications. +``adev runserver`` provides a development server with auto-reload, +live-reload, static file serving. Documentation and a complete tutorial of creating and running an app locally are available at `aiohttp-devtools`_. From baaaa1bfddd747c2d809a89a82a7aa1b9d07d6f0 Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Sun, 27 Jul 2025 16:47:20 +0100 Subject: [PATCH 26/30] [PR #11347/eac0ef92 backport][3.12] Update web_advanced docs (#11348) **This is a backport of PR #11347 as merged into master (eac0ef9291fe34912809619086fe4e6c859e2cc7).** Co-authored-by: Cycloctane --- CHANGES/11347.doc.rst | 3 +++ docs/web_advanced.rst | 15 +++------------ 2 files changed, 6 insertions(+), 12 deletions(-) create mode 100644 CHANGES/11347.doc.rst diff --git a/CHANGES/11347.doc.rst b/CHANGES/11347.doc.rst new file mode 100644 index 00000000000..abfbd21963e --- /dev/null +++ b/CHANGES/11347.doc.rst @@ -0,0 +1,3 @@ +Remove outdated contents of ``aiohttp-devtools`` and ``aiohttp-swagger`` +from Web_advanced docs. +-- by :user:`Cycloctane` diff --git a/docs/web_advanced.rst b/docs/web_advanced.rst index a4ca513b572..0912327df6e 100644 --- a/docs/web_advanced.rst +++ b/docs/web_advanced.rst @@ -1264,20 +1264,13 @@ the middleware might use :meth:`BaseRequest.clone`. for modifying *scheme*, *host* and *remote* attributes according to ``Forwarded`` and ``X-Forwarded-*`` HTTP headers. -Swagger support ---------------- - -`aiohttp-swagger `_ is a -library that allow to add Swagger documentation and embed the -Swagger-UI into your :mod:`aiohttp.web` project. - CORS support ------------ :mod:`aiohttp.web` itself does not support `Cross-Origin Resource Sharing `_, but there is an aiohttp plugin for it: -`aiohttp_cors `_. +`aiohttp-cors `_. Debug Toolbar @@ -1320,10 +1313,8 @@ Install with ``pip``: $ pip install aiohttp-devtools -* ``runserver`` provides a development server with auto-reload, - live-reload, static file serving. -* ``start`` is a `cookiecutter command which does the donkey work - of creating new :mod:`aiohttp.web` Applications. +``adev runserver`` provides a development server with auto-reload, +live-reload, static file serving. Documentation and a complete tutorial of creating and running an app locally are available at `aiohttp-devtools`_. From 26f56ac758743500f39d89d987cb0b20b630d973 Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Tue, 29 Jul 2025 01:14:41 +0200 Subject: [PATCH 27/30] [PR #11352/6deeceaf backport][3.13] Fix algorithm case preservation in DigestAuthMiddleware (#11354) Co-authored-by: J. Nick Koston Fixes home-assistant/core#149196 --- CHANGES/11352.bugfix.rst | 2 + aiohttp/client_middleware_digest_auth.py | 6 +- tests/test_client_middleware_digest_auth.py | 95 +++++++++++++++++++++ 3 files changed, 101 insertions(+), 2 deletions(-) create mode 100644 CHANGES/11352.bugfix.rst diff --git a/CHANGES/11352.bugfix.rst b/CHANGES/11352.bugfix.rst new file mode 100644 index 00000000000..3ccc8a58d2f --- /dev/null +++ b/CHANGES/11352.bugfix.rst @@ -0,0 +1,2 @@ +Fixed :class:`~aiohttp.DigestAuthMiddleware` to preserve the algorithm case from the server's challenge in the authorization response. This improves compatibility with servers that perform case-sensitive algorithm matching (e.g., servers expecting ``algorithm=MD5-sess`` instead of ``algorithm=MD5-SESS``) +-- by :user:`bdraco`. diff --git a/aiohttp/client_middleware_digest_auth.py b/aiohttp/client_middleware_digest_auth.py index 35f462f180b..c1ed7ca0fdd 100644 --- a/aiohttp/client_middleware_digest_auth.py +++ b/aiohttp/client_middleware_digest_auth.py @@ -245,7 +245,9 @@ async def _encode( ) qop_raw = challenge.get("qop", "") - algorithm = challenge.get("algorithm", "MD5").upper() + # Preserve original algorithm case for response while using uppercase for processing + algorithm_original = challenge.get("algorithm", "MD5") + algorithm = algorithm_original.upper() opaque = challenge.get("opaque", "") # Convert string values to bytes once @@ -342,7 +344,7 @@ def KD(s: bytes, d: bytes) -> bytes: "nonce": escape_quotes(nonce), "uri": path, "response": response_digest.decode(), - "algorithm": algorithm, + "algorithm": algorithm_original, } # Optional fields diff --git a/tests/test_client_middleware_digest_auth.py b/tests/test_client_middleware_digest_auth.py index 16959aecdf4..2059bfea337 100644 --- a/tests/test_client_middleware_digest_auth.py +++ b/tests/test_client_middleware_digest_auth.py @@ -1,6 +1,7 @@ """Test digest authentication middleware for aiohttp client.""" import io +import re from hashlib import md5, sha1 from typing import Generator, Literal, Union from unittest import mock @@ -211,6 +212,48 @@ async def test_encode_unsupported_algorithm( await digest_auth_mw._encode("GET", URL("http://example.com/resource"), b"") +@pytest.mark.parametrize("algorithm", ["MD5", "MD5-SESS", "SHA-256"]) +async def test_encode_algorithm_case_preservation_uppercase( + digest_auth_mw: DigestAuthMiddleware, + qop_challenge: DigestAuthChallenge, + algorithm: str, +) -> None: + """Test that uppercase algorithm case is preserved in the response header.""" + # Create a challenge with the specific algorithm case + challenge = qop_challenge.copy() + challenge["algorithm"] = algorithm + digest_auth_mw._challenge = challenge + + header = await digest_auth_mw._encode( + "GET", URL("http://example.com/resource"), b"" + ) + + # The algorithm in the response should match the exact case from the challenge + assert f"algorithm={algorithm}" in header + + +@pytest.mark.parametrize("algorithm", ["md5", "MD5-sess", "sha-256"]) +async def test_encode_algorithm_case_preservation_lowercase( + digest_auth_mw: DigestAuthMiddleware, + qop_challenge: DigestAuthChallenge, + algorithm: str, +) -> None: + """Test that lowercase/mixed-case algorithm is preserved in the response header.""" + # Create a challenge with the specific algorithm case + challenge = qop_challenge.copy() + challenge["algorithm"] = algorithm + digest_auth_mw._challenge = challenge + + header = await digest_auth_mw._encode( + "GET", URL("http://example.com/resource"), b"" + ) + + # The algorithm in the response should match the exact case from the challenge + assert f"algorithm={algorithm}" in header + # Also verify it's not the uppercase version + assert f"algorithm={algorithm.upper()}" not in header + + async def test_invalid_qop_rejected( digest_auth_mw: DigestAuthMiddleware, basic_challenge: DigestAuthChallenge ) -> None: @@ -1231,3 +1274,55 @@ def test_in_protection_space_multiple_spaces( digest_auth_mw._in_protection_space(URL("http://example.com/secure")) is False ) assert digest_auth_mw._in_protection_space(URL("http://example.com/other")) is False + + +async def test_case_sensitive_algorithm_server( + aiohttp_server: AiohttpServer, +) -> None: + """Test authentication with a server that requires exact algorithm case matching. + + This simulates servers like Prusa printers that expect the algorithm + to be returned with the exact same case as sent in the challenge. + """ + digest_auth_mw = DigestAuthMiddleware("testuser", "testpass") + request_count = 0 + auth_algorithms: list[str] = [] + + async def handler(request: Request) -> Response: + nonlocal request_count + request_count += 1 + + if not (auth_header := request.headers.get(hdrs.AUTHORIZATION)): + # Send challenge with lowercase-sess algorithm (like Prusa) + challenge = 'Digest realm="Administrator", nonce="test123", qop="auth", algorithm="MD5-sess", opaque="xyz123"' + return Response( + status=401, + headers={"WWW-Authenticate": challenge}, + text="Unauthorized", + ) + + # Extract algorithm from auth response + algo_match = re.search(r"algorithm=([^,\s]+)", auth_header) + assert algo_match is not None + auth_algorithms.append(algo_match.group(1)) + + # Case-sensitive server: only accept exact case match + assert "algorithm=MD5-sess" in auth_header + return Response(text="Success") + + app = Application() + app.router.add_get("/api/test", handler) + server = await aiohttp_server(app) + + async with ( + ClientSession(middlewares=(digest_auth_mw,)) as session, + session.get(server.make_url("/api/test")) as resp, + ): + assert resp.status == 200 + text = await resp.text() + assert text == "Success" + + # Verify the middleware preserved the exact algorithm case + assert request_count == 2 # Initial 401 + successful retry + assert len(auth_algorithms) == 1 + assert auth_algorithms[0] == "MD5-sess" # Not "MD5-SESS" From 0d5a54c38e0c2102e8ed07f6c81da1e653deb271 Mon Sep 17 00:00:00 2001 From: "patchback[bot]" <45432694+patchback[bot]@users.noreply.github.com> Date: Mon, 28 Jul 2025 13:23:56 -1000 Subject: [PATCH 28/30] [PR #11352/6deeceaf backport][3.12] Fix algorithm case preservation in DigestAuthMiddleware (#11353) Co-authored-by: J. Nick Koston Fixes home-assistant/core#149196 --- CHANGES/11352.bugfix.rst | 2 + aiohttp/client_middleware_digest_auth.py | 6 +- tests/test_client_middleware_digest_auth.py | 95 +++++++++++++++++++++ 3 files changed, 101 insertions(+), 2 deletions(-) create mode 100644 CHANGES/11352.bugfix.rst diff --git a/CHANGES/11352.bugfix.rst b/CHANGES/11352.bugfix.rst new file mode 100644 index 00000000000..3ccc8a58d2f --- /dev/null +++ b/CHANGES/11352.bugfix.rst @@ -0,0 +1,2 @@ +Fixed :class:`~aiohttp.DigestAuthMiddleware` to preserve the algorithm case from the server's challenge in the authorization response. This improves compatibility with servers that perform case-sensitive algorithm matching (e.g., servers expecting ``algorithm=MD5-sess`` instead of ``algorithm=MD5-SESS``) +-- by :user:`bdraco`. diff --git a/aiohttp/client_middleware_digest_auth.py b/aiohttp/client_middleware_digest_auth.py index 35f462f180b..c1ed7ca0fdd 100644 --- a/aiohttp/client_middleware_digest_auth.py +++ b/aiohttp/client_middleware_digest_auth.py @@ -245,7 +245,9 @@ async def _encode( ) qop_raw = challenge.get("qop", "") - algorithm = challenge.get("algorithm", "MD5").upper() + # Preserve original algorithm case for response while using uppercase for processing + algorithm_original = challenge.get("algorithm", "MD5") + algorithm = algorithm_original.upper() opaque = challenge.get("opaque", "") # Convert string values to bytes once @@ -342,7 +344,7 @@ def KD(s: bytes, d: bytes) -> bytes: "nonce": escape_quotes(nonce), "uri": path, "response": response_digest.decode(), - "algorithm": algorithm, + "algorithm": algorithm_original, } # Optional fields diff --git a/tests/test_client_middleware_digest_auth.py b/tests/test_client_middleware_digest_auth.py index 16959aecdf4..2059bfea337 100644 --- a/tests/test_client_middleware_digest_auth.py +++ b/tests/test_client_middleware_digest_auth.py @@ -1,6 +1,7 @@ """Test digest authentication middleware for aiohttp client.""" import io +import re from hashlib import md5, sha1 from typing import Generator, Literal, Union from unittest import mock @@ -211,6 +212,48 @@ async def test_encode_unsupported_algorithm( await digest_auth_mw._encode("GET", URL("http://example.com/resource"), b"") +@pytest.mark.parametrize("algorithm", ["MD5", "MD5-SESS", "SHA-256"]) +async def test_encode_algorithm_case_preservation_uppercase( + digest_auth_mw: DigestAuthMiddleware, + qop_challenge: DigestAuthChallenge, + algorithm: str, +) -> None: + """Test that uppercase algorithm case is preserved in the response header.""" + # Create a challenge with the specific algorithm case + challenge = qop_challenge.copy() + challenge["algorithm"] = algorithm + digest_auth_mw._challenge = challenge + + header = await digest_auth_mw._encode( + "GET", URL("http://example.com/resource"), b"" + ) + + # The algorithm in the response should match the exact case from the challenge + assert f"algorithm={algorithm}" in header + + +@pytest.mark.parametrize("algorithm", ["md5", "MD5-sess", "sha-256"]) +async def test_encode_algorithm_case_preservation_lowercase( + digest_auth_mw: DigestAuthMiddleware, + qop_challenge: DigestAuthChallenge, + algorithm: str, +) -> None: + """Test that lowercase/mixed-case algorithm is preserved in the response header.""" + # Create a challenge with the specific algorithm case + challenge = qop_challenge.copy() + challenge["algorithm"] = algorithm + digest_auth_mw._challenge = challenge + + header = await digest_auth_mw._encode( + "GET", URL("http://example.com/resource"), b"" + ) + + # The algorithm in the response should match the exact case from the challenge + assert f"algorithm={algorithm}" in header + # Also verify it's not the uppercase version + assert f"algorithm={algorithm.upper()}" not in header + + async def test_invalid_qop_rejected( digest_auth_mw: DigestAuthMiddleware, basic_challenge: DigestAuthChallenge ) -> None: @@ -1231,3 +1274,55 @@ def test_in_protection_space_multiple_spaces( digest_auth_mw._in_protection_space(URL("http://example.com/secure")) is False ) assert digest_auth_mw._in_protection_space(URL("http://example.com/other")) is False + + +async def test_case_sensitive_algorithm_server( + aiohttp_server: AiohttpServer, +) -> None: + """Test authentication with a server that requires exact algorithm case matching. + + This simulates servers like Prusa printers that expect the algorithm + to be returned with the exact same case as sent in the challenge. + """ + digest_auth_mw = DigestAuthMiddleware("testuser", "testpass") + request_count = 0 + auth_algorithms: list[str] = [] + + async def handler(request: Request) -> Response: + nonlocal request_count + request_count += 1 + + if not (auth_header := request.headers.get(hdrs.AUTHORIZATION)): + # Send challenge with lowercase-sess algorithm (like Prusa) + challenge = 'Digest realm="Administrator", nonce="test123", qop="auth", algorithm="MD5-sess", opaque="xyz123"' + return Response( + status=401, + headers={"WWW-Authenticate": challenge}, + text="Unauthorized", + ) + + # Extract algorithm from auth response + algo_match = re.search(r"algorithm=([^,\s]+)", auth_header) + assert algo_match is not None + auth_algorithms.append(algo_match.group(1)) + + # Case-sensitive server: only accept exact case match + assert "algorithm=MD5-sess" in auth_header + return Response(text="Success") + + app = Application() + app.router.add_get("/api/test", handler) + server = await aiohttp_server(app) + + async with ( + ClientSession(middlewares=(digest_auth_mw,)) as session, + session.get(server.make_url("/api/test")) as resp, + ): + assert resp.status == 200 + text = await resp.text() + assert text == "Success" + + # Verify the middleware preserved the exact algorithm case + assert request_count == 2 # Initial 401 + successful retry + assert len(auth_algorithms) == 1 + assert auth_algorithms[0] == "MD5-sess" # Not "MD5-SESS" From fbe830fe7d0cf45b476f4c986553c050bcecd669 Mon Sep 17 00:00:00 2001 From: "J. Nick Koston" Date: Mon, 28 Jul 2025 18:39:43 -1000 Subject: [PATCH 29/30] Release 3.12.15 (#11356) --- CHANGES.rst | 57 +++++++++++++++++++++++++++++++++++++ CHANGES/11226.packaging.rst | 1 - CHANGES/11271.contrib.rst | 1 - CHANGES/11347.doc.rst | 3 -- CHANGES/11352.bugfix.rst | 2 -- aiohttp/__init__.py | 2 +- 6 files changed, 58 insertions(+), 8 deletions(-) delete mode 100644 CHANGES/11226.packaging.rst delete mode 100644 CHANGES/11271.contrib.rst delete mode 100644 CHANGES/11347.doc.rst delete mode 100644 CHANGES/11352.bugfix.rst diff --git a/CHANGES.rst b/CHANGES.rst index c701167b33a..88826347584 100644 --- a/CHANGES.rst +++ b/CHANGES.rst @@ -10,6 +10,63 @@ .. towncrier release notes start +3.12.15 (2025-07-28) +==================== + +Bug fixes +--------- + +- Fixed :class:`~aiohttp.DigestAuthMiddleware` to preserve the algorithm case from the server's challenge in the authorization response. This improves compatibility with servers that perform case-sensitive algorithm matching (e.g., servers expecting ``algorithm=MD5-sess`` instead of ``algorithm=MD5-SESS``) + -- by :user:`bdraco`. + + + *Related issues and pull requests on GitHub:* + :issue:`11352`. + + + + +Improved documentation +---------------------- + +- Remove outdated contents of ``aiohttp-devtools`` and ``aiohttp-swagger`` + from Web_advanced docs. + -- by :user:`Cycloctane` + + + *Related issues and pull requests on GitHub:* + :issue:`11347`. + + + + +Packaging updates and notes for downstreams +------------------------------------------- + +- Started including the ``llhttp`` :file:`LICENSE` file in wheels by adding ``vendor/llhttp/LICENSE`` to ``license-files`` in :file:`setup.cfg` -- by :user:`threexc`. + + + *Related issues and pull requests on GitHub:* + :issue:`11226`. + + + + +Contributor-facing changes +-------------------------- + +- Updated a regex in `test_aiohttp_request_coroutine` for Python 3.14. + + + *Related issues and pull requests on GitHub:* + :issue:`11271`. + + + + +---- + + 3.12.14 (2025-07-10) ==================== diff --git a/CHANGES/11226.packaging.rst b/CHANGES/11226.packaging.rst deleted file mode 100644 index 293a9beaadb..00000000000 --- a/CHANGES/11226.packaging.rst +++ /dev/null @@ -1 +0,0 @@ -Started including the ``llhttp`` :file:`LICENSE` file in wheels by adding ``vendor/llhttp/LICENSE`` to ``license-files`` in :file:`setup.cfg` -- by :user:`threexc`. diff --git a/CHANGES/11271.contrib.rst b/CHANGES/11271.contrib.rst deleted file mode 100644 index 6db394f1496..00000000000 --- a/CHANGES/11271.contrib.rst +++ /dev/null @@ -1 +0,0 @@ -Updated a regex in `test_aiohttp_request_coroutine` for Python 3.14. diff --git a/CHANGES/11347.doc.rst b/CHANGES/11347.doc.rst deleted file mode 100644 index abfbd21963e..00000000000 --- a/CHANGES/11347.doc.rst +++ /dev/null @@ -1,3 +0,0 @@ -Remove outdated contents of ``aiohttp-devtools`` and ``aiohttp-swagger`` -from Web_advanced docs. --- by :user:`Cycloctane` diff --git a/CHANGES/11352.bugfix.rst b/CHANGES/11352.bugfix.rst deleted file mode 100644 index 3ccc8a58d2f..00000000000 --- a/CHANGES/11352.bugfix.rst +++ /dev/null @@ -1,2 +0,0 @@ -Fixed :class:`~aiohttp.DigestAuthMiddleware` to preserve the algorithm case from the server's challenge in the authorization response. This improves compatibility with servers that perform case-sensitive algorithm matching (e.g., servers expecting ``algorithm=MD5-sess`` instead of ``algorithm=MD5-SESS``) --- by :user:`bdraco`. diff --git a/aiohttp/__init__.py b/aiohttp/__init__.py index afb0bf2d812..0ca22003937 100644 --- a/aiohttp/__init__.py +++ b/aiohttp/__init__.py @@ -1,4 +1,4 @@ -__version__ = "3.12.15.dev0" +__version__ = "3.12.15" from typing import TYPE_CHECKING, Tuple From f42b73a47ce22e325a09c1797bcfad147aa101b8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 29 Jul 2025 10:50:22 +0000 Subject: [PATCH 30/30] Bump coverage from 7.10.0 to 7.10.1 (#11361) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bumps [coverage](https://github.com/nedbat/coveragepy) from 7.10.0 to 7.10.1.
Changelog

Sourced from coverage's changelog.

Version 7.10.1 — 2025-07-27

  • Fix: the exclusion for if TYPE_CHECKING: was wrong: it marked the branch as partial, but it should have been a line exclusion so the entire clause would be excluded. Improves issue 831_.

  • Fix: changed where .pth files are written for patch = subprocess, closing issue 2006_.

.. _issue 2006: nedbat/coveragepy#2006

.. _changes_7-10-0:

Commits
  • 7fdcbeb docs: sample HTML for 7.10.1
  • c9e9625 docs: prep for 7.10.1
  • e8193ff chore: make upgrade
  • 9aad22a test: improve the if TYPE_CHECKING: exclusion test
  • 1e2f41a fix: excluding TYPE_CHECKING should have been the line not the branch
  • 2134e57 fix: use getsitepackages for writing .pth files. #2006
  • a4300a7 test: signal statuses are mysterious. #2008
  • 2fd4961 docs: update the man page, for once
  • a13607f build: comment_on_fixes should show html urls
  • 0f00d49 build: bump version to 7.10.1
  • See full diff in compare view

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=coverage&package-manager=pip&previous-version=7.10.0&new-version=7.10.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot 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`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@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) - `@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) - `@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)
Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- requirements/constraints.txt | 2 +- requirements/dev.txt | 2 +- requirements/test.txt | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/requirements/constraints.txt b/requirements/constraints.txt index b1543d8195d..c2b676429fe 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -52,7 +52,7 @@ click==8.1.8 # slotscheck # towncrier # wait-for-it -coverage==7.10.0 +coverage==7.10.1 # via # -r requirements/test.in # pytest-cov diff --git a/requirements/dev.txt b/requirements/dev.txt index 9f5e54c8df9..0045161004a 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -52,7 +52,7 @@ click==8.1.8 # slotscheck # towncrier # wait-for-it -coverage==7.10.0 +coverage==7.10.1 # via # -r requirements/test.in # pytest-cov diff --git a/requirements/test.txt b/requirements/test.txt index eed0f5c53de..3f30e249fb9 100644 --- a/requirements/test.txt +++ b/requirements/test.txt @@ -25,7 +25,7 @@ cffi==1.17.1 # pytest-codspeed click==8.1.8 # via wait-for-it -coverage==7.10.0 +coverage==7.10.1 # via # -r requirements/test.in # pytest-cov