Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
This commit will update/upgrade from FastAPI 0.112 to [FastAPI 0.115](https://fastapi.tiangolo.com/release-notes/). FastAPI 0.113, 0.114, and 0.115 are included in the same inboard commit because the updates in each release are all similar. FastAPI 0.113-0.115 enable cookies, form fields, headers, and query parameters to be declared with Pydantic models. Query parameters, for example, have been [supported](https://fastapi.tiangolo.com/tutorial/query-params-str-validations/) for many versions now, but application authors usually had to encode them as "kwargs" (keyword arguments) in every API endpoint function, resulting in code duplication and the need for custom logic. Now that [query parameter models](https://fastapi.tiangolo.com/tutorial/query-param-models/) are supported, models can be declared once and reused multiple times. There are still gaps here - although FastAPI now supports reusing query parameters, it does not provide features for helping API endpoint functions work with those query parameters. Query parameters are often used to set up filter and sort clauses for relational databases. The construction of `SELECT` statements from these query parameters is still left up to application developers. The related package [SQLModel](https://github.com/fastapi/sqlmodel), while it does combine Pydantic and SQLAlchemy models, does not provide features for `SELECT` statement construction at this time either. Other third-party packages like [fastapi-filters](https://github.com/uriyyo/fastapi-filters) may be helpful.
- Loading branch information