fix(deps): correct minimum versions for supported Python releases

This commit is contained in:
Joshua Valluru 2026-09-17 17:03:19 -07:00
parent deb9d8aedd
commit eebc76cf2c
3 changed files with 26 additions and 6 deletions

View file

@ -359,6 +359,14 @@ jobs:
uv run --no-sync python tests/windows_tests/check_windows_wheel_install.py
base_sdk_install:
parameters:
python_version:
type: string
default: "3.12"
resolution:
type: enum
enum: ["highest", "lowest-direct"]
default: "highest"
docker:
- image: cimg/python:3.12@sha256:9c796c23c84e84a66a964acb508d39dc5433c81a47e07efd56dccbbc2427e07c
auth:
@ -381,8 +389,9 @@ jobs:
environment:
UV_HTTP_TIMEOUT: "300"
command: |
uv venv /tmp/base-sdk --python 3.12
VIRTUAL_ENV=/tmp/base-sdk uv pip install dist/*.whl
uv venv /tmp/base-sdk --python "<< parameters.python_version >>"
uv pip install --python /tmp/base-sdk/bin/python \
--resolution "<< parameters.resolution >>" --no-sources -r pyproject.toml dist/*.whl
/tmp/base-sdk/bin/python tests/base_sdk_tests/check_base_sdk_install.py
local_testing_part1:
@ -3026,6 +3035,13 @@ workflows:
- provider_replay_harness
- base_sdk_install:
filters: *main_branches
- base_sdk_install:
name: base_sdk_minimum_<< matrix.python_version >>
resolution: lowest-direct
matrix:
parameters:
python_version: ["3.10", "3.11", "3.12", "3.13", "3.14"]
filters: *main_branches
- local_testing_part1:
filters: *main_branches
- local_testing_part2:

View file

@ -18,13 +18,15 @@ dependencies = [
"httpx[http2]>=0.28.0,<1.0",
"openai>=2.20.0,<3.0.0",
"python-dotenv>=1.0.0,<2.0",
"tiktoken>=0.8.0,<1.0",
"tiktoken>=0.8.0,<1.0; python_version < '3.14'",
"tiktoken>=0.12.0,<1.0; python_version >= '3.14'",
"importlib-metadata>=8.0.0,<9.0",
"tokenizers>=0.21.0,<1.0",
"click>=8.0.0,<9.0",
"jinja2>=3.1.6,<4.0",
"aiohttp>=3.14.2,<4.0",
"pydantic>=2.10.0,<3.0.0",
"pydantic>=2.11.0,<3.0.0; python_version < '3.14'",
"pydantic>=2.12.0,<3.0.0; python_version >= '3.14'",
"pydantic-settings>=2.14.1,<3.0",
"jsonschema>=4.0.0,<5.0",
"boto3>=1.43.1,<2.0",

6
uv.lock generated
View file

@ -4756,7 +4756,8 @@ requires-dist = [
{ name = "prometheus-client", marker = "extra == 'proxy-runtime'", specifier = ">=0.20.0,<1.0" },
{ name = "psycopg", marker = "extra == 'extra-proxy'", specifier = ">=3.2,<4.0" },
{ name = "psycopg-binary", marker = "extra == 'extra-proxy'", specifier = ">=3.2,<4.0" },
{ name = "pydantic", specifier = ">=2.10.0,<3.0.0" },
{ name = "pydantic", marker = "python_full_version < '3.14'", specifier = ">=2.11.0,<3.0.0" },
{ name = "pydantic", marker = "python_full_version >= '3.14'", specifier = ">=2.12.0,<3.0.0" },
{ name = "pydantic-settings", specifier = ">=2.14.1,<3.0" },
{ name = "pyjwt", marker = "extra == 'proxy'", specifier = ">=2.13.0,<3.0" },
{ name = "pynacl", marker = "extra == 'proxy'", specifier = ">=1.6.2,<2.0" },
@ -4779,7 +4780,8 @@ requires-dist = [
{ name = "soundfile", marker = "extra == 'proxy'", specifier = ">=0.12.1,<1.0" },
{ name = "soundfile", marker = "extra == 'stt-nvidia-riva'", specifier = ">=0.12.1" },
{ name = "starlette", marker = "extra == 'proxy'", specifier = ">=1.0.1,<2.0" },
{ name = "tiktoken", specifier = ">=0.8.0,<1.0" },
{ name = "tiktoken", marker = "python_full_version < '3.14'", specifier = ">=0.8.0,<1.0" },
{ name = "tiktoken", marker = "python_full_version >= '3.14'", specifier = ">=0.12.0,<1.0" },
{ name = "tokenizers", specifier = ">=0.21.0,<1.0" },
{ name = "tomlkit", marker = "extra == 'cli'", specifier = ">=0.13.3,<1.0" },
{ name = "tomlkit", marker = "extra == 'proxy'", specifier = ">=0.13.3,<1.0" },