- Notifications
You must be signed in to change notification settings - Fork16.5k
Closed
Description
Body
FastAPI 0.123.5 breaks system tests with:
+-+---------------- 1 ---------------- | Traceback (most recent call last): | File "/usr/python/lib/python3.10/site-packages/starlette/middleware/errors.py", line 164, in __call__ | await self.app(scope, receive, _send) | File "/usr/python/lib/python3.10/site-packages/starlette/middleware/base.py", line 191, in __call__ | with recv_stream, send_stream, collapse_excgroups(): | File "/usr/python/lib/python3.10/contextlib.py", line 153, in __exit__ | self.gen.throw(typ, value, traceback) | File "/usr/python/lib/python3.10/site-packages/starlette/_utils.py", line 85, in collapse_excgroups | raise exc | File "/usr/python/lib/python3.10/site-packages/starlette/middleware/base.py", line 193, in __call__ | response = await self.dispatch_func(request, call_next) | File "/opt/airflow/airflow-core/src/airflow/api_fastapi/execution_api/app.py", line 134, in dispatch | response: Response = await call_next(request) | File "/usr/python/lib/python3.10/site-packages/starlette/middleware/base.py", line 168, in call_next | raise app_exc from app_exc.__cause__ or app_exc.__context__ | File "/usr/python/lib/python3.10/site-packages/starlette/middleware/base.py", line 144, in coro | await self.app(scope, receive_or_disconnect, send_no_error) | File "/usr/python/lib/python3.10/site-packages/starlette/middleware/base.py", line 191, in __call__ | with recv_stream, send_stream, collapse_excgroups(): | File "/usr/python/lib/python3.10/contextlib.py", line 153, in __exit__ | self.gen.throw(typ, value, traceback) | File "/usr/python/lib/python3.10/site-packages/starlette/_utils.py", line 85, in collapse_excgroups | raise exc | File "/usr/python/lib/python3.10/site-packages/starlette/middleware/base.py", line 193, in __call__ | response = await self.dispatch_func(request, call_next) | File "/opt/airflow/airflow-core/src/airflow/api_fastapi/execution_api/app.py", line 122, in dispatch | response: Response = await call_next(request) | File "/usr/python/lib/python3.10/site-packages/starlette/middleware/base.py", line 168, in call_next | raise app_exc from app_exc.__cause__ or app_exc.__context__ | File "/usr/python/lib/python3.10/site-packages/starlette/middleware/base.py", line 144, in coro | await self.app(scope, receive_or_disconnect, send_no_error) | File "/usr/python/lib/python3.10/site-packages/starlette/middleware/base.py", line 191, in __call__ | with recv_stream, send_stream, collapse_excgroups(): | File "/usr/python/lib/python3.10/contextlib.py", line 153, in __exit__ | self.gen.throw(typ, value, traceback) | File "/usr/python/lib/python3.10/site-packages/starlette/_utils.py", line 85, in collapse_excgroups | raise exc | File "/usr/python/lib/python3.10/site-packages/starlette/middleware/base.py", line 193, in __call__ | response = await self.dispatch_func(request, call_next) | File "/usr/python/lib/python3.10/site-packages/cadwyn/middleware.py", line 124, in dispatch | response = await call_next(request) | File "/usr/python/lib/python3.10/site-packages/starlette/middleware/base.py", line 168, in call_next | raise app_exc from app_exc.__cause__ or app_exc.__context__ | File "/usr/python/lib/python3.10/site-packages/starlette/middleware/base.py", line 144, in coro | await self.app(scope, receive_or_disconnect, send_no_error) | File "/usr/python/lib/python3.10/site-packages/starlette/middleware/exceptions.py", line 63, in __call__ | await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send) | File "/usr/python/lib/python3.10/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app | raise exc | File "/usr/python/lib/python3.10/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app | await app(scope, receive, sender) | File "/usr/python/lib/python3.10/site-packages/fastapi/middleware/asyncexitstack.py", line 18, in __call__ | await self.app(scope, receive, send) | File "/usr/python/lib/python3.10/site-packages/cadwyn/routing.py", line 93, in __call__ | await self.process_request(scope=scope, receive=receive, send=send, routes=routes) | File "/usr/python/lib/python3.10/site-packages/cadwyn/routing.py", line 131, in process_request | await route.handle(scope, receive, send) | File "/usr/python/lib/python3.10/site-packages/starlette/routing.py", line 290, in handle | await self.app(scope, receive, send) | File "/usr/python/lib/python3.10/site-packages/fastapi/routing.py", line 119, in app | await wrap_app_handling_exceptions(app, request)(scope, receive, send) | File "/usr/python/lib/python3.10/site-packages/starlette/_exception_handler.py", line 53, in wrapped_app | raise exc | File "/usr/python/lib/python3.10/site-packages/starlette/_exception_handler.py", line 42, in wrapped_app | await app(scope, receive, sender) | File "/usr/python/lib/python3.10/site-packages/fastapi/routing.py", line 105, in app | response = await f(request) | File "/usr/python/lib/python3.10/site-packages/fastapi/routing.py", line 407, in app | content = await serialize_response( | File "/usr/python/lib/python3.10/site-packages/fastapi/routing.py", line 248, in serialize_response | raise ResponseValidationError( | fastapi.exceptions.ResponseValidationError: 1 validation errors: | {'type': 'model_attributes_type', 'loc': ('response',), 'msg': 'Input should be a valid dictionary or object to extract fields from', 'input': <coroutine object ti_run at 0x7f35577a15b0>}Example here:
https://github.com/apache/airflow/actions/runs/19875061754/job/56961409679?pr=58976
Likely caused by this change:fastapi/fastapi#14434
Comment in the issue - needs further investigation, in the meantime we added != on the version in#58980
Committer
- I acknowledge that I am a maintainer/committer of the Apache Airflow project.