From 4eb4c7f180d0efc72a6c7b6a12eb19b5889b7472 Mon Sep 17 00:00:00 2001 From: Artur Shiriev Date: Sat, 24 Oct 2026 10:48:02 +0300 Subject: [PATCH] ci: test the dependency floors on Python 3.15 --- .github/workflows/_checks.yml | 2 ++ pyproject.toml | 12 +++++++----- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/.github/workflows/_checks.yml b/.github/workflows/_checks.yml index c41fe60..79615eb 100644 --- a/.github/workflows/_checks.yml +++ b/.github/workflows/_checks.yml @@ -84,6 +84,8 @@ jobs: - "3.13" - "3.14" - "3.14t" + - "3.15" + - "3.15t" services: redis: image: redis:8 diff --git a/pyproject.toml b/pyproject.toml index d347b33..4c1c249 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -26,14 +26,16 @@ dependencies = [ # 5.0.1 is the first release with Redis.aclose, which the broker calls on teardown. "redis>=5.0.1", # Not imported here: faststream pulls pydantic through fast-depends[pydantic], and pydantic-core - # ships no cp314 wheel before pydantic 2.12, so the lowest declared combination has no - # installable pydantic on 3.14. - "pydantic>=2.12; python_version >= '3.14'", + # ships no cp314 wheel before pydantic 2.12 and no cp315 wheel before 2.14, so the lowest + # declared combination has no installable pydantic on 3.14 or 3.15. + "pydantic>=2.12; python_version == '3.14'", + "pydantic>=2.14; python_version >= '3.15'", # 4.12.2, not 4.12.0: pydantic requires >=4.12.2 on 3.13+, and pinning 4.12.0 drags pydantic # back to a build whose pydantic-core has no cp313 wheel either. "typing-extensions>=4.12.2", - # pydantic 2.12, the 3.14 floor above, requires >=4.14.1. - "typing-extensions>=4.14.1; python_version >= '3.14'", + # pydantic 2.12 and 2.14, the 3.14 and 3.15 floors above, require >=4.14.1 and >=4.16.0. + "typing-extensions>=4.14.1; python_version == '3.14'", + "typing-extensions>=4.16.0; python_version >= '3.15'", ] [dependency-groups]