diff --git a/pyproject.toml b/pyproject.toml index 8446282..064d9c0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -52,9 +52,12 @@ asyncpg = [ "asyncpg>=0.31; python_version >= '3.14'", ] validate = ["alembic>=1.13"] -fastapi = ["fastapi>=0.95"] +# 0.113 is the first release our FastAPI router works with; 0.112 and below raise +# "TypeError: must be called with a dataclass type or instance" building the routes. +fastapi = ["fastapi>=0.113"] prometheus = ["prometheus-client>=0.19"] -opentelemetry = ["opentelemetry-api>=1.20", "opentelemetry-sdk>=1.20"] +# 1.21 added the schema_url argument to get_meter, which the telemetry middleware passes. +opentelemetry = ["opentelemetry-api>=1.21", "opentelemetry-sdk>=1.21"] all = ["faststream-outbox[asyncpg,validate,fastapi,prometheus,opentelemetry]"] [dependency-groups] @@ -66,12 +69,12 @@ dev = [ "asyncpg>=0.30; python_version == '3.13'", "asyncpg>=0.31; python_version >= '3.14'", "alembic>=1.13", - "fastapi>=0.95", + "fastapi>=0.113", "faststream[kafka]>=0.7.6,<0.8", "httpx2>=2.2", "prometheus-client>=0.19", - "opentelemetry-api>=1.20", - "opentelemetry-sdk>=1.20", + "opentelemetry-api>=1.21", + "opentelemetry-sdk>=1.21", ] lint = [ "ruff",