You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Jonathan Fulton
6b782a8f9f
fix: allow Response type hint as dependency annotation ( #10127 )
Previously, using Response as a type hint with Depends would fail:
def endpoint(response: Annotated[Response, Depends(modify_response)]):
This was due to an overly strict assertion that prevented Depends
from being used with Response type annotations.
The fix moves the Depends check before the special type handling,
so when a Depends is specified, the dependency is called normally
and its return value used, rather than applying the special
Response injection logic.
This allows patterns like:
- response: Annotated[Response, Depends(modify_response)]
- response: Response = Depends(modify_response)
While still supporting regular Response injection:
- response: Response
Fixes #10127
6 months ago
..
_compat
➖ Drop support for `pydantic.v1` (#14609)
7 months ago
dependencies
fix: allow Response type hint as dependency annotation (#10127)
6 months ago
middleware
🐛 Fix support for `StreamingResponse`s with dependencies with `yield` or `UploadFile`s, close after the response is done (#14099)
10 months ago
openapi
➖ Drop support for `pydantic.v1` (#14609)
7 months ago
security
♻️ Upgrade internal syntax to Python 3.9+ 🎉 (#14564)
7 months ago
__init__.py
🔖 Release version 0.128.0
7 months ago
__main__.py
♻️ Add support for `pip install "fastapi[standard]"` with standard dependencies and `python -m fastapi` (#11935)
2 years ago
applications.py
♻️ Upgrade internal syntax to Python 3.9+ 🎉 (#14564)
7 months ago
background.py
♻️ Upgrade internal syntax to Python 3.9+ 🎉 (#14564)
7 months ago
cli.py
♻️ Add support for `pip install "fastapi[standard]"` with standard dependencies and `python -m fastapi` (#11935)
2 years ago
concurrency.py
♻️ Upgrade internal syntax to Python 3.9+ 🎉 (#14564)
7 months ago
datastructures.py
➖ Drop support for `pydantic.v1` (#14609)
7 months ago
encoders.py
➖ Drop support for `pydantic.v1` (#14609)
7 months ago
exception_handlers.py
⬆️ Upgrade Starlette supported version range to >=0.40.0,<0.49.0 (#14077)
10 months ago
exceptions.py
➖ Drop support for `pydantic.v1` (#14609)
7 months ago
logger.py
🔊 Refactor logging (#781)
7 years ago
param_functions.py
➖ Drop support for `pydantic.v1` (#14609)
7 months ago
params.py
➖ Drop support for `pydantic.v1` (#14609)
7 months ago
py.typed
✨ add py.typed to ship typing information (#209)
7 years ago
requests.py
⬆ Require Pydantic > 1.0 (#1862)
6 years ago
responses.py
✨ Add reference (code API) docs with PEP 727, add subclass with custom docstrings for `BackgroundTasks`, refactor docs structure (#10392)
3 years ago
routing.py
➖ Drop support for `pydantic.v1` (#14609)
7 months ago
staticfiles.py
✨ Improve type annotations, add support for mypy --strict, internally and for external packages (#2547)
6 years ago
templating.py
✨ Improve type annotations, add support for mypy --strict, internally and for external packages (#2547)
6 years ago
testclient.py
✨ Improve type annotations, add support for mypy --strict, internally and for external packages (#2547)
6 years ago
types.py
♻️ Upgrade internal syntax to Python 3.9+ 🎉 (#14564)
7 months ago
utils.py
➖ Drop support for `pydantic.v1` (#14609)
7 months ago
websockets.py
✨ Export `WebSocketState` in `fastapi.websockets` (#4376)
4 years ago