From 73be3d7f8dd1f2a0639d2c9e6a83385cab3da1ff Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 23 Jun 2026 06:44:13 +0000 Subject: [PATCH 1/3] Bump fastapi from 0.136.3 to 0.138.0 Bumps [fastapi](https://github.com/fastapi/fastapi) from 0.136.3 to 0.138.0. - [Release notes](https://github.com/fastapi/fastapi/releases) - [Commits](https://github.com/fastapi/fastapi/compare/0.136.3...0.138.0) --- updated-dependencies: - dependency-name: fastapi dependency-version: 0.138.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] --- pyproject.toml | 2 +- uv.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pyproject.toml b/pyproject.toml index b12728f..212b4f8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -6,7 +6,7 @@ readme = "README.md" requires-python = ">=3.13" dependencies = [ "alembic[tz]>=1.18.4", - "fastapi>=0.136.1", + "fastapi>=0.138.0", "httpx>=0.28.1", "logfire[fastapi,psycopg,sqlalchemy]>=4.37.0", "psycopg[binary]>=3.3.4", diff --git a/uv.lock b/uv.lock index fcc5c40..46147da 100644 --- a/uv.lock +++ b/uv.lock @@ -348,7 +348,7 @@ wheels = [ [[package]] name = "fastapi" -version = "0.136.3" +version = "0.138.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "annotated-doc" }, @@ -357,9 +357,9 @@ dependencies = [ { name = "typing-extensions" }, { name = "typing-inspection" }, ] -sdist = { url = "https://files.pythonhosted.org/packages/81/2d/ff8d91d7b564d464629a0fd50a4489c97fcb836ac230bf3a7269232a9b1f/fastapi-0.136.3.tar.gz", hash = "sha256:e487fae93ad408e6f47641ee4dfe389864fd7bec92e547ea8498fc13f43e83ab", size = 396410, upload-time = "2026-05-23T18:53:15.192Z" } +sdist = { url = "https://files.pythonhosted.org/packages/5b/58/ff455d9fe47c60abadb34b9e05a304b1f05f5ab8000ac01565156b6f5e43/fastapi-0.138.0.tar.gz", hash = "sha256:d445a4877636ad191e7053e08c9bf98cb921a6756776848400bb773d1740c061", size = 419240, upload-time = "2026-06-20T01:18:05.259Z" } wheels = [ - { url = "https://files.pythonhosted.org/packages/e0/82/45359b62a067409bd929ae8a56b8ed13e5a8c8a61194b3c236920999ab83/fastapi-0.136.3-py3-none-any.whl", hash = "sha256:3d2a69bdf04b7e9f3afa292c3bc7a98816bbfafa10bc9b45f3f3700d2f761620", size = 117481, upload-time = "2026-05-23T18:53:16.924Z" }, + { url = "https://files.pythonhosted.org/packages/6c/ff/8496d9847a5fedae775eb49460722d3efaa80487854273e9647ae876218c/fastapi-0.138.0-py3-none-any.whl", hash = "sha256:b6f54fd1bd72c80b0f899f172c61a600f6f7af9b43d4d772a018f35624048cb0", size = 126779, upload-time = "2026-06-20T01:18:03.483Z" }, ] [[package]] @@ -397,7 +397,7 @@ test = [ [package.metadata] requires-dist = [ { name = "alembic", extras = ["tz"], specifier = ">=1.18.4" }, - { name = "fastapi", specifier = ">=0.136.1" }, + { name = "fastapi", specifier = ">=0.138.0" }, { name = "httpx", specifier = ">=0.28.1" }, { name = "logfire", extras = ["fastapi", "psycopg", "sqlalchemy"], specifier = ">=4.37.0" }, { name = "psycopg", extras = ["binary"], specifier = ">=3.3.4" }, From 84de76658ead844a2de979a17aaee001dfb3b7d0 Mon Sep 17 00:00:00 2001 From: Subhransu De Date: Tue, 23 Jun 2026 21:19:35 +0530 Subject: [PATCH 2/3] Adjust OTEL entity route assertion for FastAPI path behavior --- tests/integration/test_otel_api.py | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/tests/integration/test_otel_api.py b/tests/integration/test_otel_api.py index a0c2578..4efb58a 100644 --- a/tests/integration/test_otel_api.py +++ b/tests/integration/test_otel_api.py @@ -77,8 +77,20 @@ async def test_entity_api_requests_emit_otel_records( assert post_record["attributes"].get("oidc.client_id") == "test-client" assert post_record["attributes"].get("oidc.audience") == "test-client" assert post_record["attributes"].get("oidc.issuer") == "https://test-idp/realm" - assert ("GET", "/entities/{entity_id}", 200) in actual_requests + assert ( + ("GET", "/entities/{entity_id}", 200) in actual_requests + or ("GET", f"/entities/{entity_id}", 200) in actual_requests + ) assert ("GET", "/entities/", 200) in actual_requests - assert ("PUT", "/entities/{entity_id}", 200) in actual_requests - assert ("DELETE", "/entities/{entity_id}", 204) in actual_requests - assert ("GET", "/entities/{entity_id}", 404) in actual_requests + assert ( + ("PUT", "/entities/{entity_id}", 200) in actual_requests + or ("PUT", f"/entities/{entity_id}", 200) in actual_requests + ) + assert ( + ("DELETE", "/entities/{entity_id}", 204) in actual_requests + or ("DELETE", f"/entities/{entity_id}", 204) in actual_requests + ) + assert ( + ("GET", "/entities/{entity_id}", 404) in actual_requests + or ("GET", f"/entities/{entity_id}", 404) in actual_requests + ) From 34aeed502254b7ea4842a0c454dabab0b1ab1851 Mon Sep 17 00:00:00 2001 From: Subhransu De Date: Tue, 23 Jun 2026 21:34:41 +0530 Subject: [PATCH 3/3] Test FastAPI concrete route spans --- tests/integration/test_otel_api.py | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff --git a/tests/integration/test_otel_api.py b/tests/integration/test_otel_api.py index 4efb58a..023c064 100644 --- a/tests/integration/test_otel_api.py +++ b/tests/integration/test_otel_api.py @@ -77,20 +77,8 @@ async def test_entity_api_requests_emit_otel_records( assert post_record["attributes"].get("oidc.client_id") == "test-client" assert post_record["attributes"].get("oidc.audience") == "test-client" assert post_record["attributes"].get("oidc.issuer") == "https://test-idp/realm" - assert ( - ("GET", "/entities/{entity_id}", 200) in actual_requests - or ("GET", f"/entities/{entity_id}", 200) in actual_requests - ) + assert ("GET", f"/entities/{entity_id}", 200) in actual_requests assert ("GET", "/entities/", 200) in actual_requests - assert ( - ("PUT", "/entities/{entity_id}", 200) in actual_requests - or ("PUT", f"/entities/{entity_id}", 200) in actual_requests - ) - assert ( - ("DELETE", "/entities/{entity_id}", 204) in actual_requests - or ("DELETE", f"/entities/{entity_id}", 204) in actual_requests - ) - assert ( - ("GET", "/entities/{entity_id}", 404) in actual_requests - or ("GET", f"/entities/{entity_id}", 404) in actual_requests - ) + assert ("PUT", f"/entities/{entity_id}", 200) in actual_requests + assert ("DELETE", f"/entities/{entity_id}", 204) in actual_requests + assert ("GET", f"/entities/{entity_id}", 404) in actual_requests