From ec38d25c5a700e4ce798cbe2a91c969cb5d2deb5 Mon Sep 17 00:00:00 2001 From: Kumar Aditya Date: Fri, 8 Aug 2025 21:39:18 +0530 Subject: [PATCH 1/2] Adjust dependencies for Python 3.14 (#10872) --- CHANGES/10872.contrib.rst | 1 + requirements/constraints.txt | 20 ++++++++++---------- requirements/dev.txt | 20 ++++++++++---------- requirements/test.in | 2 +- requirements/test.txt | 14 ++++++++------ tests/conftest.py | 11 +++++------ 6 files changed, 35 insertions(+), 33 deletions(-) create mode 100644 CHANGES/10872.contrib.rst diff --git a/CHANGES/10872.contrib.rst b/CHANGES/10872.contrib.rst new file mode 100644 index 00000000000..6a95cd3e64a --- /dev/null +++ b/CHANGES/10872.contrib.rst @@ -0,0 +1 @@ +Updated dependencies to allow testing on Python 3.14. diff --git a/requirements/constraints.txt b/requirements/constraints.txt index 5da05f9ddd1..2ea63b3eb4b 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -1,8 +1,8 @@ # -# This file is autogenerated by pip-compile with python 3.10 -# To update, run: +# This file is autogenerated by pip-compile with Python 3.10 +# by the following command: # -# pip-compile --allow-unsafe --output-file=requirements/constraints.txt --resolver=backtracking --strip-extras requirements/constraints.in +# pip-compile --allow-unsafe --output-file=requirements/constraints.txt --strip-extras requirements/constraints.in # aiodns==3.5.0 # via @@ -99,7 +99,7 @@ incremental==24.7.2 # via towncrier iniconfig==2.1.0 # via pytest -isal==1.7.2 +isal==1.7.2 ; python_version < "3.14" # via # -r requirements/lint.in # -r requirements/test.in @@ -159,9 +159,11 @@ pycares==4.10.0 # via aiodns pycparser==2.22 # via cffi -pydantic==2.11.7 - # via python-on-whales -pydantic-core==2.33.2 +pydantic==2.12.0a1 + # via + # -r requirements/test.in + # python-on-whales +pydantic-core==2.37.2 # via pydantic pyenchant==3.2.2 # via sphinxcontrib-spelling @@ -171,9 +173,7 @@ pygments==2.19.2 # rich # sphinx pyjwt==2.8.0 - # via - # gidgethub - # pyjwt + # via gidgethub pyproject-hooks==1.2.0 # via # build diff --git a/requirements/dev.txt b/requirements/dev.txt index ac5f077151d..333a19a1534 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -1,8 +1,8 @@ # -# This file is autogenerated by pip-compile with python 3.10 -# To update, run: +# This file is autogenerated by pip-compile with Python 3.10 +# by the following command: # -# pip-compile --allow-unsafe --output-file=requirements/dev.txt --resolver=backtracking --strip-extras requirements/dev.in +# pip-compile --allow-unsafe --output-file=requirements/dev.txt --strip-extras requirements/dev.in # aiodns==3.5.0 # via @@ -97,7 +97,7 @@ incremental==24.7.2 # via towncrier iniconfig==2.1.0 # via pytest -isal==1.7.2 +isal==1.7.2 ; python_version < "3.14" # via # -r requirements/lint.in # -r requirements/test.in @@ -156,9 +156,11 @@ pycares==4.10.0 # via aiodns pycparser==2.22 # via cffi -pydantic==2.11.7 - # via python-on-whales -pydantic-core==2.33.2 +pydantic==2.12.0a1 + # via + # -r requirements/test.in + # python-on-whales +pydantic-core==2.37.2 # via pydantic pygments==2.19.2 # via @@ -166,9 +168,7 @@ pygments==2.19.2 # rich # sphinx pyjwt==2.8.0 - # via - # gidgethub - # pyjwt + # via gidgethub pyproject-hooks==1.2.0 # via # build diff --git a/requirements/test.in b/requirements/test.in index bf000f27443..d6274f6d80d 100644 --- a/requirements/test.in +++ b/requirements/test.in @@ -3,7 +3,7 @@ blockbuster coverage freezegun -isal +isal; python_version < "3.14" # no wheel for 3.14 mypy; implementation_name == "cpython" pkgconfig proxy.py >= 2.4.4rc5 diff --git a/requirements/test.txt b/requirements/test.txt index 096a24ca9d0..13c036c8101 100644 --- a/requirements/test.txt +++ b/requirements/test.txt @@ -1,8 +1,8 @@ # -# This file is autogenerated by pip-compile with python 3.10 +# This file is autogenerated by pip-compile with Python 3.10 # by the following command: # -# pip-compile --allow-unsafe --output-file=requirements/test.txt --resolver=backtracking --strip-extras requirements/test.in +# pip-compile --allow-unsafe --output-file=requirements/test.txt --strip-extras requirements/test.in # aiodns==3.5.0 # via -r requirements/runtime-deps.in @@ -51,7 +51,7 @@ idna==3.6 # yarl iniconfig==2.1.0 # via pytest -isal==1.7.2 +isal==1.7.2 ; python_version < "3.14" # via -r requirements/test.in markdown-it-py==3.0.0 # via rich @@ -87,9 +87,11 @@ pycares==4.10.0 # via aiodns pycparser==2.22 # via cffi -pydantic==2.11.7 - # via python-on-whales -pydantic-core==2.33.2 +pydantic==2.12.0a1 + # via + # -r requirements/test.in + # python-on-whales +pydantic-core==2.37.2 # via pydantic pygments==2.19.2 # via diff --git a/tests/conftest.py b/tests/conftest.py index 57a7e131a36..24c023738da 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -4,7 +4,6 @@ import socket import ssl import sys -import zlib from hashlib import md5, sha1, sha256 from pathlib import Path from tempfile import TemporaryDirectory @@ -12,9 +11,7 @@ from unittest import mock from uuid import uuid4 -import isal.isal_zlib import pytest -import zlib_ng.zlib_ng from blockbuster import blockbuster_ctx from aiohttp import payload @@ -258,6 +255,8 @@ def selector_loop() -> Iterator[asyncio.AbstractEventLoop]: @pytest.fixture def uvloop_loop() -> Iterator[asyncio.AbstractEventLoop]: + if uvloop is None: + pytest.skip("uvloop is not installed") factory = uvloop.new_event_loop with loop_context(factory) as _loop: asyncio.set_event_loop(_loop) @@ -338,13 +337,13 @@ def unused_port_socket() -> Generator[socket.socket, None, None]: s.close() -@pytest.fixture(params=[zlib, zlib_ng.zlib_ng, isal.isal_zlib]) +@pytest.fixture(params=["zlib", "zlib_ng.zlib_ng", "isal.isal_zlib"]) def parametrize_zlib_backend( request: pytest.FixtureRequest, ) -> Generator[None, None, None]: original_backend: ZLibBackendProtocol = ZLibBackend._zlib_backend - set_zlib_backend(request.param) - + backend = pytest.importorskip(request.param) + set_zlib_backend(backend) yield set_zlib_backend(original_backend) From 4263044ca3e76abeb5955bd04188ed480ba4969e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 8 Aug 2025 16:28:50 +0000 Subject: [PATCH 2/2] Bump freezegun from 1.5.3 to 1.5.4 (#11372) Bumps [freezegun](https://github.com/spulec/freezegun) from 1.5.3 to 1.5.4.
Changelog

Sourced from freezegun's changelog.

1.5.4

  • Fix: Ability to yield fixtures (broken in 1.5.3)
Commits

[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=freezegun&package-manager=pip&previous-version=1.5.3&new-version=1.5.4)](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 | 10 +++++----- requirements/dev.txt | 10 +++++----- requirements/lint.txt | 2 +- requirements/test.txt | 6 ++---- 4 files changed, 13 insertions(+), 15 deletions(-) diff --git a/requirements/constraints.txt b/requirements/constraints.txt index 2ea63b3eb4b..92c62c691d6 100644 --- a/requirements/constraints.txt +++ b/requirements/constraints.txt @@ -74,7 +74,7 @@ filelock==3.18.0 # via virtualenv forbiddenfruit==0.1.4 # via blockbuster -freezegun==1.5.3 +freezegun==1.5.4 # via # -r requirements/lint.in # -r requirements/test.in @@ -160,9 +160,7 @@ pycares==4.10.0 pycparser==2.22 # via cffi pydantic==2.12.0a1 - # via - # -r requirements/test.in - # python-on-whales + # via python-on-whales pydantic-core==2.37.2 # via pydantic pyenchant==3.2.2 @@ -173,7 +171,9 @@ pygments==2.19.2 # rich # sphinx pyjwt==2.8.0 - # via gidgethub + # via + # gidgethub + # pyjwt pyproject-hooks==1.2.0 # via # build diff --git a/requirements/dev.txt b/requirements/dev.txt index 333a19a1534..af047b92626 100644 --- a/requirements/dev.txt +++ b/requirements/dev.txt @@ -72,7 +72,7 @@ filelock==3.18.0 # via virtualenv forbiddenfruit==0.1.4 # via blockbuster -freezegun==1.5.3 +freezegun==1.5.4 # via # -r requirements/lint.in # -r requirements/test.in @@ -157,9 +157,7 @@ pycares==4.10.0 pycparser==2.22 # via cffi pydantic==2.12.0a1 - # via - # -r requirements/test.in - # python-on-whales + # via python-on-whales pydantic-core==2.37.2 # via pydantic pygments==2.19.2 @@ -168,7 +166,9 @@ pygments==2.19.2 # rich # sphinx pyjwt==2.8.0 - # via gidgethub + # via + # gidgethub + # pyjwt pyproject-hooks==1.2.0 # via # build diff --git a/requirements/lint.txt b/requirements/lint.txt index a82fd57f198..c0682c41460 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.3 +freezegun==1.5.4 # via -r requirements/lint.in identify==2.6.12 # via pre-commit diff --git a/requirements/test.txt b/requirements/test.txt index 13c036c8101..7bfa1c7a195 100644 --- a/requirements/test.txt +++ b/requirements/test.txt @@ -37,7 +37,7 @@ execnet==2.1.1 # via pytest-xdist forbiddenfruit==0.1.4 # via blockbuster -freezegun==1.5.3 +freezegun==1.5.4 # via -r requirements/test.in frozenlist==1.7.0 # via @@ -88,9 +88,7 @@ pycares==4.10.0 pycparser==2.22 # via cffi pydantic==2.12.0a1 - # via - # -r requirements/test.in - # python-on-whales + # via python-on-whales pydantic-core==2.37.2 # via pydantic pygments==2.19.2