diff --git a/src/backend/base/pyproject.toml b/src/backend/base/pyproject.toml index 8161f713d..b80939f16 100644 --- a/src/backend/base/pyproject.toml +++ b/src/backend/base/pyproject.toml @@ -104,8 +104,8 @@ maintainers = [ dependencies = [ - "fastapi>=0.111.0", - "httpx>=0.27", + "fastapi>=0.115.2", + "httpx[http2]>=0.27", "uvicorn>=0.30.0", "gunicorn>=22.0.0", "langchain~=0.3.3", @@ -120,7 +120,7 @@ dependencies = [ "typer>=0.12.0", "cachetools>=5.3.1", "platformdirs>=4.2.0", - "python-multipart>=0.0.7", + "python-multipart>=0.0.12", "orjson==3.10.0", "alembic>=1.13.0", "passlib>=1.7.4", @@ -193,7 +193,7 @@ dev = [ "ipykernel>=6.29.0", "mypy>=1.11.0", "ruff>=0.6.2", - "httpx>=0.27", + "httpx[http2]>=0.27", "pytest>=8.2.0", "types-requests>=2.32.0", "requests>=2.32.0", diff --git a/src/backend/tests/conftest.py b/src/backend/tests/conftest.py index 8becf52c2..3405630bf 100644 --- a/src/backend/tests/conftest.py +++ b/src/backend/tests/conftest.py @@ -118,7 +118,7 @@ async def async_client() -> AsyncGenerator: from langflow.main import create_app app = create_app() - async with AsyncClient(app=app, base_url="http://testserver") as client: + async with AsyncClient(app=app, base_url="http://testserver", http2=True) as client: yield client @@ -306,7 +306,7 @@ async def client_fixture( # app.dependency_overrides[get_session] = get_session_override async with ( LifespanManager(app, startup_timeout=None, shutdown_timeout=None) as manager, - AsyncClient(transport=ASGITransport(app=manager.app), base_url="http://testserver/") as client, + AsyncClient(transport=ASGITransport(app=manager.app), base_url="http://testserver/", http2=True) as client, ): yield client # app.dependency_overrides.clear() diff --git a/uv.lock b/uv.lock index 73d3b2cd0..4ba1f2ae2 100644 --- a/uv.lock +++ b/uv.lock @@ -1730,16 +1730,16 @@ wheels = [ [[package]] name = "fastapi" -version = "0.115.0" +version = "0.115.2" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "pydantic" }, { name = "starlette" }, { name = "typing-extensions" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/7b/5e/bf0471f14bf6ebfbee8208148a3396d1a23298531a6cc10776c59f4c0f87/fastapi-0.115.0.tar.gz", hash = "sha256:f93b4ca3529a8ebc6fc3fcf710e5efa8de3df9b41570958abf1d97d843138004", size = 302295 } +sdist = { url = "https://files.pythonhosted.org/packages/22/fa/19e3c7c9b31ac291987c82e959f36f88840bea183fa3dc3bb654669f19c1/fastapi-0.115.2.tar.gz", hash = "sha256:3995739e0b09fa12f984bce8fa9ae197b35d433750d3d312422d846e283697ee", size = 299968 } wheels = [ - { url = "https://files.pythonhosted.org/packages/06/ab/a1f7eed031aeb1c406a6e9d45ca04bff401c8a25a30dd0e4fd2caae767c3/fastapi-0.115.0-py3-none-any.whl", hash = "sha256:17ea427674467486e997206a5ab25760f6b09e069f099b96f5b55a32fb6f1631", size = 94625 }, + { url = "https://files.pythonhosted.org/packages/c9/14/bbe7776356ef01f830f8085ca3ac2aea59c73727b6ffaa757abeb7d2900b/fastapi-0.115.2-py3-none-any.whl", hash = "sha256:61704c71286579cc5a598763905928f24ee98bfcc07aabe84cfefb98812bbc86", size = 94650 }, ] [[package]] @@ -3852,7 +3852,7 @@ dependencies = [ { name = "firecrawl-py" }, { name = "grandalf" }, { name = "gunicorn" }, - { name = "httpx" }, + { name = "httpx", extra = ["http2"] }, { name = "jq", marker = "sys_platform != 'win32'" }, { name = "langchain" }, { name = "langchain-core" }, @@ -3906,7 +3906,7 @@ deploy = [ dev = [ { name = "devtools" }, { name = "dictdiffer" }, - { name = "httpx" }, + { name = "httpx", extra = ["http2"] }, { name = "ipykernel" }, { name = "mypy" }, { name = "pandas-stubs" }, @@ -3969,7 +3969,7 @@ requires-dist = [ { name = "docstring-parser", specifier = ">=0.16" }, { name = "duckdb", specifier = ">=1.0.0" }, { name = "emoji", specifier = ">=2.12.0" }, - { name = "fastapi", specifier = ">=0.111.0" }, + { name = "fastapi", specifier = ">=0.115.2" }, { name = "fastapi-pagination", specifier = ">=0.12.29" }, { name = "filelock", specifier = ">=3.15.4" }, { name = "firecrawl-py", specifier = ">=0.0.16" }, @@ -3977,8 +3977,8 @@ requires-dist = [ { name = "flower", marker = "extra == 'deploy'", specifier = ">=1.0.0" }, { name = "grandalf", specifier = ">=0.8.0" }, { name = "gunicorn", specifier = ">=22.0.0" }, - { name = "httpx", specifier = ">=0.27" }, - { name = "httpx", marker = "extra == 'dev'", specifier = ">=0.27" }, + { name = "httpx", extras = ["http2"], specifier = ">=0.27" }, + { name = "httpx", extras = ["http2"], marker = "extra == 'dev'", specifier = ">=0.27" }, { name = "ipykernel", marker = "extra == 'dev'", specifier = ">=6.29.0" }, { name = "jq", marker = "sys_platform != 'win32'", specifier = ">=1.7.0" }, { name = "langchain", specifier = "~=0.3.3" }, @@ -4020,7 +4020,7 @@ requires-dist = [ { name = "pytest-xdist", marker = "extra == 'dev'", specifier = ">=3.6.0" }, { name = "python-docx", specifier = ">=1.1.0" }, { name = "python-jose", specifier = ">=3.3.0" }, - { name = "python-multipart", specifier = ">=0.0.7" }, + { name = "python-multipart", specifier = ">=0.0.12" }, { name = "redis", marker = "extra == 'all'", specifier = ">=4.6.0" }, { name = "redis", marker = "extra == 'deploy'", specifier = ">=4.6.0" }, { name = "requests", marker = "extra == 'dev'", specifier = ">=2.32.0" },