Changelogs » Fastapi

PyUp Safety actively tracks 274,040 Python packages for vulnerabilities and notifies you when to upgrade.

Fastapi

0.62.0

Features
  
  * ✨ Add support for shared/top-level parameters (dependencies, tags, etc). PR [2434](https://github.com/tiangolo/fastapi/pull/2434) by [tiangolo](https://github.com/tiangolo).
  
  Up to now, for several options, the only way to apply them to a group of *path operations* was in `include_router`. That works well, but the call to `app.include_router()` or `router.include_router()` is normally done in another file.
  
  That means that, for example, to apply authentication to all the *path operations* in a router it would end up being done in a different file, instead of keeping related logic together.
  
  Setting options in `include_router` still makes sense in some cases, for example, to override or increase configurations from a third party router included in an app. But in a router that is part of a bigger application, it would probably make more sense to add those settings when creating the `APIRouter`.
  
  **In `FastAPI`**
  
  This allows setting the (mostly new) parameters (additionally to the already existing parameters):
  
  * `default_response_class`: updated to handle defaults in `APIRouter` and `include_router`.
  * `dependencies`: to include ✨ top-level dependencies ✨ that apply to the whole application. E.g. to add global authentication.
  * `callbacks`: OpenAPI callbacks that apply to all the *path operations*.
  * `deprecated`: to mark all the *path operations* as deprecated. 🤷
  * `include_in_schema`: to allow excluding all the *path operations* from the OpenAPI schema.
  * `responses`: OpenAPI responses that apply to all the *path operations*.
  
  For example:
  
  Python
  from fastapi import FastAPI, Depends
  
  
  async def some_dependency():
  return
  
  
  app = FastAPI(dependencies=[Depends(some_dependency)])
  
  
  **In `APIRouter`**
  
  This allows setting the (mostly new) parameters (additionally to the already existing parameters):
  
  * `default_response_class`: updated to handle defaults in `APIRouter` and `include_router`. For example, it's not needed to set it explicitly when [creating callbacks](https://fastapi.tiangolo.com/advanced/openapi-callbacks/).
  * `dependencies`: to include ✨ router-level dependencies ✨ that apply to all the *path operations* in a router. Up to now, this was only possible with `include_router`.
  * `callbacks`: OpenAPI callbacks that apply to all the *path operations* in this router.
  * `deprecated`: to mark all the *path operations* in a router as deprecated.
  * `include_in_schema`: to allow excluding all the *path operations* in a router from the OpenAPI schema.
  * `responses`: OpenAPI responses that apply to all the *path operations* in a router.
  * `prefix`: to set the path prefix for a router. Up to now, this was only possible when calling `include_router`.
  * `tags`: OpenAPI tags to apply to all the *path operations* in this router.
  
  For example:
  
  Python
  from fastapi import APIRouter, Depends
  
  
  async def some_dependency():
  return
  
  
  router = APIRouter(prefix="/users", dependencies=[Depends(some_dependency)])
  
  
  **In `include_router`**
  
  Most of these settings are now supported in `APIRouter`, which normally lives closer to the related code, so it is recommended to use `APIRouter` when possible.
  
  But `include_router` is still useful to, for example, adding options (like `dependencies`, `prefix`, and `tags`) when including a third party router, or a generic router that is shared between several projects.
  
  This PR allows setting the (mostly new) parameters (additionally to the already existing parameters):
  
  * `default_response_class`: updated to handle defaults in `APIRouter` and `FastAPI`.
  * `deprecated`: to mark all the *path operations* in a router as deprecated in OpenAPI.
  * `include_in_schema`: to allow disabling all the *path operations* from showing in the OpenAPI schema.
  * `callbacks`: OpenAPI callbacks that apply to all the *path operations* in this router.
  
  Note: all the previous parameters are still there, so it's still possible to declare `dependencies` in `include_router`.
  
  Breaking Changes
  
  * PR [2434](https://github.com/tiangolo/fastapi/pull/2434) includes several improvements that shouldn't affect normal use cases, but could affect in advanced scenarios:
  * If you are testing the generated OpenAPI (you shouldn't, FastAPI already tests it extensively for you): the order for `tags` in `include_router` and *path operations* was updated for consistency, but it's a simple order change.
  * If you have advanced custom logic to access each route's `route.response_class`, or the `router.default_response_class`, or the `app.default_response_class`: the default value for `response_class` in `APIRoute` and for `default_response_class` in `APIRouter` and `FastAPI` is now a `DefaultPlaceholder` used internally to handle and solve default values and overrides. The actual response class inside the `DefaultPlaceholder` is available at `route.response_class.value`.
  
  Docs
  
  * PR [2434](https://github.com/tiangolo/fastapi/pull/2434) (above) includes new or updated docs:
  * <a href="https://fastapi.tiangolo.com/advanced/openapi-callbacks/" class="external-link" target="_blank">Advanced User Guide - OpenAPI Callbacks</a>.
  * <a href="https://fastapi.tiangolo.com/tutorial/bigger-applications/" class="external-link" target="_blank">Tutorial - Bigger Applications</a>.
  * <a href="https://fastapi.tiangolo.com/tutorial/dependencies/dependencies-in-path-operation-decorators/" class="external-link" target="_blank">Tutorial - Dependencies - Dependencies in path operation decorators</a>.
  * <a href="https://fastapi.tiangolo.com/tutorial/dependencies/global-dependencies/" class="external-link" target="_blank">Tutorial - Dependencies - Global Dependencies</a>.
  
  * 📝 Add FastAPI monitoring blog post to External Links. PR [2324](https://github.com/tiangolo/fastapi/pull/2324) by [louisguitton](https://github.com/louisguitton).
  * ✏️ Fix typo in Deta tutorial. PR [2320](https://github.com/tiangolo/fastapi/pull/2320) by [tiangolo](https://github.com/tiangolo).
  * ✨ Add Discord chat. PR [2322](https://github.com/tiangolo/fastapi/pull/2322) by [tiangolo](https://github.com/tiangolo).
  * 📝 Fix image links for sponsors. PR [2304](https://github.com/tiangolo/fastapi/pull/2304) by [tiangolo](https://github.com/tiangolo).
  
  Translations
  
  * 🌐 Add Japanese translation for Advanced - Custom Response. PR [2193](https://github.com/tiangolo/fastapi/pull/2193) by [Attsun1031](https://github.com/Attsun1031).
  * 🌐 Add Chinese translation for Benchmarks. PR [2119](https://github.com/tiangolo/fastapi/pull/2119) by [spaceack](https://github.com/spaceack).
  * 🌐 Add Chinese translation for Tutorial - Body - Nested Models. PR [1609](https://github.com/tiangolo/fastapi/pull/1609) by [waynerv](https://github.com/waynerv).
  * 🌐 Add Chinese translation for Advanced - Custom Response. PR [1459](https://github.com/tiangolo/fastapi/pull/1459) by [RunningIkkyu](https://github.com/RunningIkkyu).
  * 🌐 Add Chinese translation for Advanced - Return a Response Directly. PR [1452](https://github.com/tiangolo/fastapi/pull/1452) by [RunningIkkyu](https://github.com/RunningIkkyu).
  * 🌐 Add Chinese translation for Advanced - Additional Status Codes. PR [1451](https://github.com/tiangolo/fastapi/pull/1451) by [RunningIkkyu](https://github.com/RunningIkkyu).
  * 🌐 Add Chinese translation for Advanced - Path Operation Advanced Configuration. PR [1447](https://github.com/tiangolo/fastapi/pull/1447) by [RunningIkkyu](https://github.com/RunningIkkyu).
  * 🌐 Add Chinese translation for Advanced User Guide - Intro. PR [1445](https://github.com/tiangolo/fastapi/pull/1445) by [RunningIkkyu](https://github.com/RunningIkkyu).
  
  Internal
  
  * 🔧 Update TestDriven link to course in sponsors section. PR [2435](https://github.com/tiangolo/fastapi/pull/2435) by [tiangolo](https://github.com/tiangolo).
  * 🍱 Update sponsor logos. PR [2418](https://github.com/tiangolo/fastapi/pull/2418) by [tiangolo](https://github.com/tiangolo).
  * 💚 Fix disabling install of Material for MkDocs Insiders in forks, strike 1 ⚾. PR [2340](https://github.com/tiangolo/fastapi/pull/2340) by [tiangolo](https://github.com/tiangolo).
  * 🐛 Fix disabling Material for MkDocs Insiders install in forks. PR [2339](https://github.com/tiangolo/fastapi/pull/2339) by [tiangolo](https://github.com/tiangolo).
  * ✨ Add silver sponsor WeTransfer. PR [2338](https://github.com/tiangolo/fastapi/pull/2338) by [tiangolo](https://github.com/tiangolo).
  * ✨ Set up and enable Material for MkDocs Insiders for the docs. PR [2325](https://github.com/tiangolo/fastapi/pull/2325) by [tiangolo](https://github.com/tiangolo).

0.61.2

Fixes
  
  * 📌 Relax Swagger UI version pin. PR [2089](https://github.com/tiangolo/fastapi/pull/2089) by [jmriebold](https://github.com/jmriebold).
  * 🐛 Fix bug overriding custom HTTPException and RequestValidationError from exception_handlers. PR [1924](https://github.com/tiangolo/fastapi/pull/1924) by [uriyyo](https://github.com/uriyyo).
  * ✏️ Fix typo on dependencies utils and cleanup unused variable. PR [1912](https://github.com/tiangolo/fastapi/pull/1912) by [Kludex](https://github.com/Kludex).
  
  Docs
  
  * ✏️  Fix typo in Tutorial - Path Parameters. PR [2231](https://github.com/tiangolo/fastapi/pull/2231) by [mariacamilagl](https://github.com/mariacamilagl).
  * ✏ Fix a stylistic error in docs. PR [2206](https://github.com/tiangolo/fastapi/pull/2206) by [ddobrinskiy](https://github.com/ddobrinskiy).
  * ✏ Fix capitalizaiton typo in docs. PR [2204](https://github.com/tiangolo/fastapi/pull/2204) by [imba-tjd](https://github.com/imba-tjd).
  * ✏ Fix typo in docs. PR [2179](https://github.com/tiangolo/fastapi/pull/2179) by [ammarasmro](https://github.com/ammarasmro).
  * 📝 Update/fix links in docs to use HTTPS. PR [2165](https://github.com/tiangolo/fastapi/pull/2165) by [imba-tjd](https://github.com/imba-tjd).
  * ✏ Fix typos and add rewording in docs. PR [2159](https://github.com/tiangolo/fastapi/pull/2159) by [nukopy](https://github.com/nukopy).
  * 📝 Fix code consistency in examples for Tutorial - User Guide - Path Parameters. PR [2158](https://github.com/tiangolo/fastapi/pull/2158) by [nukopy](https://github.com/nukopy).
  * 📝 Fix renamed parameter `content_type` typo. PR [2135](https://github.com/tiangolo/fastapi/pull/2135) by [TeoZosa](https://github.com/TeoZosa).
  * ✏ Fix minor typos in docs. PR [2122](https://github.com/tiangolo/fastapi/pull/2122) by [TeoZosa](https://github.com/TeoZosa).
  * ✏ Fix typos in docs and source examples. PR [2102](https://github.com/tiangolo/fastapi/pull/2102) by [AdrianDeAnda](https://github.com/AdrianDeAnda).
  * ✏ Fix incorrect Celery URLs in docs. PR [2100](https://github.com/tiangolo/fastapi/pull/2100) by [CircleOnCircles](https://github.com/CircleOnCircles).
  * 📝 Simplify intro to Python Types, all currently supported Python versions include type hints 🎉. PR [2085](https://github.com/tiangolo/fastapi/pull/2085) by [ninjaaron](https://github.com/ninjaaron).
  * 📝 Fix example code with sets in Tutorial - Body - Nested Models 3. PR [2054](https://github.com/tiangolo/fastapi/pull/2054) by [hitrust](https://github.com/hitrust).
  * 📝 Fix example code with sets in Tutorial - Body - Nested Models 2. PR [2053](https://github.com/tiangolo/fastapi/pull/2053) by [hitrust](https://github.com/hitrust).
  * 📝 Fix example code with sets in Tutorial - Body - Nested Models. PR [2052](https://github.com/tiangolo/fastapi/pull/2052) by [hitrust](https://github.com/hitrust).
  * ✏ Fix typo in Benchmarks. PR [1995](https://github.com/tiangolo/fastapi/pull/1995) by [AlejoAsd](https://github.com/AlejoAsd).
  * 📝 Add note in CORS tutorial about allow_origins with ["*"] and allow_credentials. PR [1895](https://github.com/tiangolo/fastapi/pull/1895) by [dsmurrell](https://github.com/dsmurrell).
  * 📝 Add deployment to Deta, the first gold sponsor 🎉. PR [2303](https://github.com/tiangolo/fastapi/pull/2303) by [tiangolo](https://github.com/tiangolo).
  * 👥 Update FastAPI People. PR [2282](https://github.com/tiangolo/fastapi/pull/2282) by [github-actions[bot]](https://github.com/apps/github-actions).
  * ✏️ Fix uppercase in Tutorial - Query parameters. PR [2245](https://github.com/tiangolo/fastapi/pull/2245) by [mariacamilagl](https://github.com/mariacamilagl).
  * 📝 Add articles to External Links. PR [2247](https://github.com/tiangolo/fastapi/pull/2247) by [tiangolo](https://github.com/tiangolo).
  * ✏ Fix typo in Spanish tutorial index. PR [2020](https://github.com/tiangolo/fastapi/pull/2020) by [aviloncho](https://github.com/aviloncho).
  
  Translations
  
  * 🌐 Add Japanese translation for Advanced Tutorial - Response Directly. PR [2191](https://github.com/tiangolo/fastapi/pull/2191) by [Attsun1031](https://github.com/Attsun1031).
  * 📝 Add Japanese translation for Tutorial - Security - First Steps. PR [2153](https://github.com/tiangolo/fastapi/pull/2153) by [komtaki](https://github.com/komtaki).
  * 🌐 Add Japanese translation for Tutorial - Query Parameters and String Validations. PR [1901](https://github.com/tiangolo/fastapi/pull/1901) by [SwftAlpc](https://github.com/SwftAlpc).
  * 🌐 Add Portuguese translation for External Links. PR [1443](https://github.com/tiangolo/fastapi/pull/1443) by [Serrones](https://github.com/Serrones).
  * 🌐 Add Japanese translation for Tutorial - CORS. PR [2125](https://github.com/tiangolo/fastapi/pull/2125) by [tokusumi](https://github.com/tokusumi).
  * 🌐 Add Japanese translation for Contributing. PR [2067](https://github.com/tiangolo/fastapi/pull/2067) by [komtaki](https://github.com/komtaki).
  * 🌐 Add Japanese translation for Project Generation. PR [2050](https://github.com/tiangolo/fastapi/pull/2050) by [tokusumi](https://github.com/tokusumi).
  * 🌐 Add Japanese translation for Alternatives. PR [2043](https://github.com/tiangolo/fastapi/pull/2043) by [Attsun1031](https://github.com/Attsun1031).
  * 🌐 Add Japanese translation for History Design and Future. PR [2002](https://github.com/tiangolo/fastapi/pull/2002) by [komtaki](https://github.com/komtaki).
  * 🌐 Add Japanese translation for Benchmarks. PR [1992](https://github.com/tiangolo/fastapi/pull/1992) by [komtaki](https://github.com/komtaki).
  * 🌐 Add Japanese translation for Tutorial - Header Parameters. PR [1935](https://github.com/tiangolo/fastapi/pull/1935) by [SwftAlpc](https://github.com/SwftAlpc).
  * 🌐 Add Portuguese translation for Tutorial - First Steps. PR [1861](https://github.com/tiangolo/fastapi/pull/1861) by [jessicapaz](https://github.com/jessicapaz).
  * 🌐 Add Portuguese translation for Python Types. PR [1796](https://github.com/tiangolo/fastapi/pull/1796) by [izaguerreiro](https://github.com/izaguerreiro).
  * 🌐 Add Japanese translation for Help FastAPI. PR [1692](https://github.com/tiangolo/fastapi/pull/1692) by [tokusumi](https://github.com/tokusumi).
  * 🌐 Add Japanese translation for Tutorial - Body. PR [1683](https://github.com/tiangolo/fastapi/pull/1683) by [tokusumi](https://github.com/tokusumi).
  * 🌐 Add Japanese translation for Tutorial - Query Params. PR [1674](https://github.com/tiangolo/fastapi/pull/1674) by [tokusumi](https://github.com/tokusumi).
  * 🌐 Add Japanese translation for tutorial/path-params.md. PR [1671](https://github.com/tiangolo/fastapi/pull/1671) by [tokusumi](https://github.com/tokusumi).
  * 🌐 Add Japanese translation for tutorial/first-steps.md. PR [1658](https://github.com/tiangolo/fastapi/pull/1658) by [tokusumi](https://github.com/tokusumi).
  * 🌐 Add Japanese translation for tutorial/index.md. PR [1656](https://github.com/tiangolo/fastapi/pull/1656) by [tokusumi](https://github.com/tokusumi).
  * 🌐 Add translation to Portuguese for Project Generation. PR [1602](https://github.com/tiangolo/fastapi/pull/1602) by [Serrones](https://github.com/Serrones).
  * 🌐 Add Japanese translation for Features. PR [1625](https://github.com/tiangolo/fastapi/pull/1625) by [tokusumi](https://github.com/tokusumi).
  * 🌐 Initialize new language Korean for translations. PR [2018](https://github.com/tiangolo/fastapi/pull/2018) by [hard-coders](https://github.com/hard-coders).
  * 🌐 Add Portuguese translation of Deployment. PR [1374](https://github.com/tiangolo/fastapi/pull/1374) by [Serrones](https://github.com/Serrones).
  
  Internal
  
  * 🔥 Cleanup after upgrade for Docs Previews GitHub Action. PR [2248](https://github.com/tiangolo/fastapi/pull/2248) by [tiangolo](https://github.com/tiangolo).
  * 🐛 Fix CI docs preview, unzip docs. PR [2246](https://github.com/tiangolo/fastapi/pull/2246) by [tiangolo](https://github.com/tiangolo).
  * ✨ Add instant docs deploy previews for PRs from forks. PR [2244](https://github.com/tiangolo/fastapi/pull/2244) by [tiangolo](https://github.com/tiangolo).
  * ⚡️ Build docs for languages in parallel in subprocesses to speed up CI. PR [2242](https://github.com/tiangolo/fastapi/pull/2242) by [tiangolo](https://github.com/tiangolo).
  * 🐛 Fix docs order generation for partial translations. PR [2238](https://github.com/tiangolo/fastapi/pull/2238) by [tiangolo](https://github.com/tiangolo).
  * 👥 Update FastAPI People. PR [2202](https://github.com/tiangolo/fastapi/pull/2202) by [github-actions[bot]](https://github.com/apps/github-actions).
  * ♻️ Update FastAPI People GitHub Action to send the PR as github-actions. PR [2201](https://github.com/tiangolo/fastapi/pull/2201) by [tiangolo](https://github.com/tiangolo).
  * 🔧 Update FastAPI People GitHub Action config, run monthly. PR [2199](https://github.com/tiangolo/fastapi/pull/2199) by [tiangolo](https://github.com/tiangolo).
  * 🐛 Fix FastAPI People GitHub Action Docker dependency, strike 1 ⚾. PR [2198](https://github.com/tiangolo/fastapi/pull/2198) by [tiangolo](https://github.com/tiangolo).
  * 🐛 Fix FastAPI People GitHub Action Docker dependencies. PR [2197](https://github.com/tiangolo/fastapi/pull/2197) by [tiangolo](https://github.com/tiangolo).
  * 🐛 Fix FastAPI People GitHub Action when there's nothing to change. PR [2196](https://github.com/tiangolo/fastapi/pull/2196) by [tiangolo](https://github.com/tiangolo).
  * 👥 Add new section FastAPI People. PR [2195](https://github.com/tiangolo/fastapi/pull/2195) by [tiangolo](https://github.com/tiangolo).
  * ⬆️ Upgrade GitHub Action Latest Changes. PR [2190](https://github.com/tiangolo/fastapi/pull/2190) by [tiangolo](https://github.com/tiangolo).
  * ⬆️ Upgrade GitHub Action Label Approved. PR [2189](https://github.com/tiangolo/fastapi/pull/2189) by [tiangolo](https://github.com/tiangolo).
  * 🔧 Update GitHub Action Label Approved, run at 12:00. PR [2185](https://github.com/tiangolo/fastapi/pull/2185) by [tiangolo](https://github.com/tiangolo).
  * 👷 Upgrade GitHub Action Latest Changes. PR [2184](https://github.com/tiangolo/fastapi/pull/2184) by [tiangolo](https://github.com/tiangolo).
  * 👷 Set GitHub Action Label Approved to run daily, not every minute. PR [2163](https://github.com/tiangolo/fastapi/pull/2163) by [tiangolo](https://github.com/tiangolo).
  * 🔥 Remove pr-approvals GitHub Action as it's not compatible with forks. Use the new one. PR [2162](https://github.com/tiangolo/fastapi/pull/2162) by [tiangolo](https://github.com/tiangolo).
  * 👷 Add GitHub Action Latest Changes. PR [2160](https://github.com/tiangolo/fastapi/pull/2160).
  * 👷 Add GitHub Action Label Approved. PR [2161](https://github.com/tiangolo/fastapi/pull/2161).

0.61.1

Fixes
  
  * Fix issues using `jsonable_encoder` with SQLAlchemy models directly. PR [1987](https://github.com/tiangolo/fastapi/pull/1987).
  
  Docs
  
  * Fix typo in NoSQL docs. PR [1980](https://github.com/tiangolo/fastapi/pull/1980) by [facundojmaero](https://github.com/facundojmaero).
  
  Translations
  
  * Add translation for [main page to Japanese](https://fastapi.tiangolo.com/ja/) PR [1571](https://github.com/tiangolo/fastapi/pull/1571) by [ryuckel](https://github.com/ryuckel).
  * Initialize French translations. PR [1975](https://github.com/tiangolo/fastapi/pull/1975) by [JulianMaurin-BM](https://github.com/JulianMaurin-BM).
  * Initialize Turkish translations. PR [1905](https://github.com/tiangolo/fastapi/pull/1905) by [ycd](https://github.com/ycd).
  
  Internal
  
  * Improve docs maintainability by updating `hl_lines` syntax to use ranges. PR [1863](https://github.com/tiangolo/fastapi/pull/1863) by [la-mar](https://github.com/la-mar).

0.61.0

Features
  
  * Add support for injecting `HTTPConnection` (as `Request` and `WebSocket`). Useful for sharing app state in dependencies. PR [1827](https://github.com/tiangolo/fastapi/pull/1827) by [nsidnev](https://github.com/nsidnev).
  * Export `WebSocketDisconnect` and add example handling WebSocket disconnections to docs. PR [1822](https://github.com/tiangolo/fastapi/pull/1822) by [rkbeatss](https://github.com/rkbeatss).
  
  Breaking Changes
  
  * Require Pydantic > `1.0.0`.
  * Remove support for deprecated Pydantic `0.32.2`. This improves maintainability and allows new features.
  * In `FastAPI` and `APIRouter`:
  * Remove *path operation decorators* related/deprecated parameter `response_model_skip_defaults` (use `response_model_exclude_unset` instead).
  * Change *path operation decorators* parameter default for `response_model_exclude` from `set()` to `None` (as is in Pydantic).
  * In `encoders.jsonable_encoder`:
  * Remove deprecated `skip_defaults`, use instead `exclude_unset`.
  * Set default of `exclude` from `set()` to `None` (as is in Pydantic).
  * PR [1862](https://github.com/tiangolo/fastapi/pull/1862).
  * In `encoders.jsonable_encoder` remove parameter `sqlalchemy_safe`.
  * It was an early hack to allow returning SQLAlchemy models, but it was never documented, and the recommended way is using Pydantic's `orm_mode` as described in the tutorial: [SQL (Relational) Databases](https://fastapi.tiangolo.com/tutorial/sql-databases/).
  * PR [1864](https://github.com/tiangolo/fastapi/pull/1864).
  
  Docs
  
  * Add link to the course by TestDriven.io: [Test-Driven Development with FastAPI and Docker](https://testdriven.io/courses/tdd-fastapi/). PR [1860](https://github.com/tiangolo/fastapi/pull/1860).
  * Fix empty log message in docs example about handling errors. PR [1815](https://github.com/tiangolo/fastapi/pull/1815) by [manlix](https://github.com/manlix).
  * Reword text to reduce ambiguity while not being gender-specific. PR [1824](https://github.com/tiangolo/fastapi/pull/1824) by [Mause](https://github.com/Mause).
  
  Internal
  
  * Add Flake8 linting. Original PR [1774](https://github.com/tiangolo/fastapi/pull/1774) by [MashhadiNima](https://github.com/MashhadiNima).
  * Disable Gitter bot, as it's currently broken, and Gitter's response doesn't show the problem. PR [1853](https://github.com/tiangolo/fastapi/pull/1853).

0.60.2

* Fix typo in docs for query parameters. PR [1832](https://github.com/tiangolo/fastapi/pull/1832) by [ycd](https://github.com/ycd).
  * Add docs about [Async Tests](https://fastapi.tiangolo.com/advanced/async-tests/). PR [1619](https://github.com/tiangolo/fastapi/pull/1619) by [empicano](https://github.com/empicano).
  * Raise an exception when using form data (`Form`, `File`) without having `python-multipart` installed.
  * Up to now the application would run, and raise an exception only when receiving a request with form data, the new behavior, raising early, will prevent from deploying applications with broken dependencies.
  * It also detects if the correct package `python-multipart` is installed instead of the incorrect `multipart` (both importable as `multipart`).
  * PR [1851](https://github.com/tiangolo/fastapi/pull/1851) based on original PR [1627](https://github.com/tiangolo/fastapi/pull/1627) by [chrisngyn](https://github.com/chrisngyn), [YKo20010](https://github.com/YKo20010), [kx-chen](https://github.com/kx-chen).
  * Re-enable Gitter releases bot. PR [1831](https://github.com/tiangolo/fastapi/pull/1831).
  * Add link to async SQL databases tutorial from main SQL tutorial. PR [1813](https://github.com/tiangolo/fastapi/pull/1813) by [short2strings](https://github.com/short2strings).
  * Fix typo in tutorial about behind a proxy. PR [1807](https://github.com/tiangolo/fastapi/pull/1807) by [toidi](https://github.com/toidi).
  * Fix typo in Portuguese docs. PR [1795](https://github.com/tiangolo/fastapi/pull/1795) by [izaguerreiro](https://github.com/izaguerreiro).
  * Add translations setup for Ukrainian. PR [1830](https://github.com/tiangolo/fastapi/pull/1830).
  * Add external link [Build And Host Fast Data Science Applications Using FastAPI](https://towardsdatascience.com/build-and-host-fast-data-science-applications-using-fastapi-823be8a1d6a0). PR [1786](https://github.com/tiangolo/fastapi/pull/1786) by [Kludex](https://github.com/Kludex).
  * Fix encoding of Pydantic models that inherit from others models with custom `json_encoders`. PR [1769](https://github.com/tiangolo/fastapi/pull/1769) by [henrybetts](https://github.com/henrybetts).
  * Simplify and improve `jsonable_encoder`. PR [1754](https://github.com/tiangolo/fastapi/pull/1754) by [MashhadiNima](https://github.com/MashhadiNima).
  * Simplify internal code syntax in several points. PR [1753](https://github.com/tiangolo/fastapi/pull/1753) by [uriyyo](https://github.com/uriyyo).
  * Improve internal typing, declare `Optional` parameters. PR [1731](https://github.com/tiangolo/fastapi/pull/1731) by [MashhadiNima](https://github.com/MashhadiNima).
  * Add external link [Deploy FastAPI on Azure App Service](https://www.tutlinks.com/deploy-fastapi-on-azure/) to docs. PR [1726](https://github.com/tiangolo/fastapi/pull/1726) by [windson](https://github.com/windson).
  * Add link to Starlette docs about WebSocket testing. PR [1717](https://github.com/tiangolo/fastapi/pull/1717) by [hellocoldworld](https://github.com/hellocoldworld).
  * Refactor generating dependant, merge for loops. PR [1714](https://github.com/tiangolo/fastapi/pull/1714) by [Bloodielie](https://github.com/Bloodielie).
  * Update example for templates with Jinja to include HTML media type. PR [1690](https://github.com/tiangolo/fastapi/pull/1690) by [frafra](https://github.com/frafra).
  * Fix typos in docs for security. PR [1678](https://github.com/tiangolo/fastapi/pull/1678) by [nilslindemann](https://github.com/nilslindemann).
  * Fix typos in docs for dependencies. PR [1675](https://github.com/tiangolo/fastapi/pull/1675) by [nilslindemann](https://github.com/nilslindemann).
  * Fix type annotation for `**extra` parameters in `FastAPI`. PR [1659](https://github.com/tiangolo/fastapi/pull/1659) by [bharel](https://github.com/bharel).
  * Bump MkDocs Material to fix docs in browsers with dark mode. PR [1789](https://github.com/tiangolo/fastapi/pull/1789) by [adriencaccia](https://github.com/adriencaccia).
  * Remove docs preview comment from each commit. PR [1826](https://github.com/tiangolo/fastapi/pull/1826).
  * Update GitHub context extraction for Gitter notification bot. PR [1766](https://github.com/tiangolo/fastapi/pull/1766).

0.60.1 not secure

* Add debugging logs for GitHub actions to introspect GitHub hidden context. PR [1764](https://github.com/tiangolo/fastapi/pull/1764).
  * Use OS preference theme for online docs. PR [1760](https://github.com/tiangolo/fastapi/pull/1760) by [adriencaccia](https://github.com/adriencaccia).
  * Upgrade Starlette to version `0.13.6` to handle a vulnerability when using static files in Windows. PR [1759](https://github.com/tiangolo/fastapi/pull/1759) by [jamesag26](https://github.com/jamesag26).
  * Pin Swagger UI temporarily, waiting for a fix for [swagger-api/swagger-ui6249](https://github.com/swagger-api/swagger-ui/issues/6249). PR [1763](https://github.com/tiangolo/fastapi/pull/1763).
  * Update GitHub Actions, use commit from PR for docs preview, not commit from pre-merge. PR [1761](https://github.com/tiangolo/fastapi/pull/1761).
  * Update GitHub Actions, refactor Gitter bot. PR [1746](https://github.com/tiangolo/fastapi/pull/1746).

0.60.0 not secure

* Add GitHub Action to watch for missing preview docs and trigger a preview deploy. PR [1740](https://github.com/tiangolo/fastapi/pull/1740).
  * Add custom GitHub Action to get artifact with docs preview. PR [1739](https://github.com/tiangolo/fastapi/pull/1739).
  * Add new GitHub Actions to preview docs from PRs. PR [1738](https://github.com/tiangolo/fastapi/pull/1738).
  * Add XML test coverage to support GitHub Actions. PR [1737](https://github.com/tiangolo/fastapi/pull/1737).
  * Update badges and remove Travis now that GitHub Actions is the main CI. PR [1736](https://github.com/tiangolo/fastapi/pull/1736).
  * Add GitHub Actions for CI, move from Travis. PR [1735](https://github.com/tiangolo/fastapi/pull/1735).
  * Add support for adding OpenAPI schema for GET requests with a body. PR [1626](https://github.com/tiangolo/fastapi/pull/1626) by [victorphoenix3](https://github.com/victorphoenix3).

0.59.0 not secure

* Fix typo in docstring for OAuth2 utils. PR [1621](https://github.com/tiangolo/fastapi/pull/1621) by [tomarv2](https://github.com/tomarv2).
  * Update JWT docs to use Python-jose instead of PyJWT. Initial PR [1610](https://github.com/tiangolo/fastapi/pull/1610) by [asheux](https://github.com/asheux).
  * Fix/re-enable search bar in docs. PR [1703](https://github.com/tiangolo/fastapi/pull/1703).
  * Auto-generate a "server" in OpenAPI `servers` when there's a `root_path` instead of prefixing all the `paths`:
  * Add a new parameter for `FastAPI` classes: `root_path_in_servers` to disable the auto-generation of `servers`.
  * New docs about `root_path` and `servers` in [Additional Servers](https://fastapi.tiangolo.com/advanced/behind-a-proxy/additional-servers).
  * Update OAuth2 examples to use a relative URL for `tokenUrl="token"` to make sure those examples keep working as-is even when behind a reverse proxy.
  * Initial PR [1596](https://github.com/tiangolo/fastapi/pull/1596) by [rkbeatss](https://github.com/rkbeatss).
  * Fix typo/link in External Links. PR [1702](https://github.com/tiangolo/fastapi/pull/1702).
  * Update handling of [External Links](https://fastapi.tiangolo.com/external-links/) to use a data file and allow translating the headers without becoming obsolete quickly when new links are added. PR [https://github.com/tiangolo/fastapi/pull/1701](https://github.com/tiangolo/fastapi/pull/1701).
  * Add external link [Machine learning model serving in Python using FastAPI and Streamlit](https://davidefiocco.github.io/2020/06/27/streamlit-fastapi-ml-serving.html) to docs. PR [1669](https://github.com/tiangolo/fastapi/pull/1669) by [davidefiocco](https://github.com/davidefiocco).
  * Add note in docs on order in Pydantic Unions. PR [1591](https://github.com/tiangolo/fastapi/pull/1591) by [kbanc](https://github.com/kbanc).
  * Improve support for tests in editor. PR [1699](https://github.com/tiangolo/fastapi/pull/1699).
  * Pin dependencies. PR [1697](https://github.com/tiangolo/fastapi/pull/1697).
  * Update isort to version 5.x.x. PR [1670](https://github.com/tiangolo/fastapi/pull/1670) by [asheux](https://github.com/asheux).

0.58.1 not secure

* Add link in docs to Pydantic data types. PR [1612](https://github.com/tiangolo/fastapi/pull/1612) by [tayoogunbiyi](https://github.com/tayoogunbiyi).
  * Fix link in warning logs for `openapi_prefix`. PR [1611](https://github.com/tiangolo/fastapi/pull/1611) by [bavaria95](https://github.com/bavaria95).
  * Fix bad link in docs. PR [1603](https://github.com/tiangolo/fastapi/pull/1603) by [molto0504](https://github.com/molto0504).
  * Add Vim temporary files to `.gitignore` for contributors using Vim. PR [1590](https://github.com/tiangolo/fastapi/pull/1590) by [asheux](https://github.com/asheux).
  * Fix typo in docs for sub-applications. PR [1578](https://github.com/tiangolo/fastapi/pull/1578) by [schlpbch](https://github.com/schlpbch).
  * Use `Optional` in all the examples in the docs. Original PR [1574](https://github.com/tiangolo/fastapi/pull/1574) by [chrisngyn](https://github.com/chrisngyn), [kx-chen](https://github.com/kx-chen), [YKo20010](https://github.com/YKo20010). Updated and merged PR [1644](https://github.com/tiangolo/fastapi/pull/1644).
  * Update tests and handling of `response_model_by_alias`. PR [1642](https://github.com/tiangolo/fastapi/pull/1642).
  * Add translation to Chinese for [Body - Fields - 请求体 - 字段](https://fastapi.tiangolo.com/zh/tutorial/body-fields/). PR [1569](https://github.com/tiangolo/fastapi/pull/1569) by [waynerv](https://github.com/waynerv).
  * Update Chinese translation of main page. PR [1564](https://github.com/tiangolo/fastapi/pull/1564) by [waynerv](https://github.com/waynerv).
  * Add translation to Chinese for [Body - Multiple Parameters - 请求体 - 多个参数](https://fastapi.tiangolo.com/zh/tutorial/body-multiple-params/). PR [1532](https://github.com/tiangolo/fastapi/pull/1532) by [waynerv](https://github.com/waynerv).
  * Add translation to Chinese for [Path Parameters and Numeric Validations - 路径参数和数值校验](https://fastapi.tiangolo.com/zh/tutorial/path-params-numeric-validations/). PR [1506](https://github.com/tiangolo/fastapi/pull/1506) by [waynerv](https://github.com/waynerv).
  * Add GitHub action to auto-label approved PRs (mainly for translations). PR [1638](https://github.com/tiangolo/fastapi/pull/1638).

0.58.0 not secure

* Deep merge OpenAPI responses to preserve all the additional metadata. PR [1577](https://github.com/tiangolo/fastapi/pull/1577).
  * Mention in docs that only main app events are run (not sub-apps). PR [1554](https://github.com/tiangolo/fastapi/pull/1554) by [amacfie](https://github.com/amacfie).
  * Fix body validation error response, do not include body variable when it is not embedded. PR [1553](https://github.com/tiangolo/fastapi/pull/1553) by [amacfie](https://github.com/amacfie).
  * Fix testing OAuth2 security scopes when using dependency overrides. PR [1549](https://github.com/tiangolo/fastapi/pull/1549) by [amacfie](https://github.com/amacfie).
  * Fix Model for JSON Schema keyword `not` as a JSON Schema instead of a list. PR [1548](https://github.com/tiangolo/fastapi/pull/1548) by [v-do](https://github.com/v-do).
  * Add support for OpenAPI `servers`. PR [1547](https://github.com/tiangolo/fastapi/pull/1547) by [mikaello](https://github.com/mikaello).

0.57.0 not secure

* Remove broken link from "External Links". PR [1565](https://github.com/tiangolo/fastapi/pull/1565) by [victorphoenix3](https://github.com/victorphoenix3).
  * Update/fix docs for [WebSockets with dependencies](https://fastapi.tiangolo.com/advanced/websockets/using-depends-and-others). Original PR [1540](https://github.com/tiangolo/fastapi/pull/1540) by [ChihSeanHsu](https://github.com/ChihSeanHsu).
  * Add support for Python's `http.HTTPStatus` in `status_code` parameters. PR [1534](https://github.com/tiangolo/fastapi/pull/1534) by [retnikt](https://github.com/retnikt).
  * When using Pydantic models with `__root__`, use the internal value in `jsonable_encoder`. PR [1524](https://github.com/tiangolo/fastapi/pull/1524) by [patrickkwang](https://github.com/patrickkwang).
  * Update docs for path parameters. PR [1521](https://github.com/tiangolo/fastapi/pull/1521) by [yankeexe](https://github.com/yankeexe).
  * Update docs for first steps, links and rewording. PR [1518](https://github.com/tiangolo/fastapi/pull/1518) by [yankeexe](https://github.com/yankeexe).
  * Enable `showCommonExtensions` in Swagger UI to show additional validations like `maxLength`, etc. PR [1466](https://github.com/tiangolo/fastapi/pull/1466) by [TiewKH](https://github.com/TiewKH).
  * Make `OAuth2PasswordRequestFormStrict` importable directly from `fastapi.security`. PR [1462](https://github.com/tiangolo/fastapi/pull/1462) by [RichardHoekstra](https://github.com/RichardHoekstra).
  * Add docs about [Default response class](https://fastapi.tiangolo.com/advanced/custom-response/default-response-class). PR [1455](https://github.com/tiangolo/fastapi/pull/1455) by [TezRomacH](https://github.com/TezRomacH).
  * Add note in docs about additional parameters `response_model_exclude_defaults` and `response_model_exclude_none` in [Response Model](https://fastapi.tiangolo.com/tutorial/response-model/use-the-response_model_exclude_unset-parameter). PR [1427](https://github.com/tiangolo/fastapi/pull/1427) by [wshayes](https://github.com/wshayes).
  * Add note about [PyCharm Pydantic plugin](https://github.com/koxudaxi/pydantic-pycharm-plugin) to docs. PR [1420](https://github.com/tiangolo/fastapi/pull/1420) by [koxudaxi](https://github.com/koxudaxi).
  * Update and clarify testing function name. PR [1395](https://github.com/tiangolo/fastapi/pull/1395) by [chenl](https://github.com/chenl).
  * Fix duplicated headers created by indirect dependencies that use the request directly. PR [1386](https://github.com/tiangolo/fastapi/pull/1386) by [obataku](https://github.com/obataku) from tests by [scottsmith2gmail](https://github.com/scottsmith2gmail).
  * Upgrade Starlette version to `0.13.4`. PR [1361](https://github.com/tiangolo/fastapi/pull/1361) by [rushton](https://github.com/rushton).
  * Improve error handling and feedback for requests with invalid JSON. PR [1354](https://github.com/tiangolo/fastapi/pull/1354) by [aviramha](https://github.com/aviramha).
  * Add support for declaring metadata for tags in OpenAPI. New docs at [Tutorial - Metadata and Docs URLs - Metadata for tags](https://fastapi.tiangolo.com/tutorial/metadata/metadata-for-tags). PR [1348](https://github.com/tiangolo/fastapi/pull/1348) by [thomas-maschler](https://github.com/thomas-maschler).
  * Add basic setup for Russian translations. PR [1566](https://github.com/tiangolo/fastapi/pull/1566).
  * Remove obsolete Chinese articles after adding official community translations. PR [1510](https://github.com/tiangolo/fastapi/pull/1510) by [waynerv](https://github.com/waynerv).
  * Add `__repr__` for *path operation function* parameter helpers (like `Query`, `Depends`, etc) to simplify debugging. PR [1560](https://github.com/tiangolo/fastapi/pull/1560) by [rkbeatss](https://github.com/rkbeatss) and [victorphoenix3](https://github.com/victorphoenix3).

0.56.1 not secure

* Add link to advanced docs from tutorial. PR [1512](https://github.com/tiangolo/fastapi/pull/1512) by [kx-chen](https://github.com/kx-chen).
  * Remove internal unnecessary f-strings. PR [1526](https://github.com/tiangolo/fastapi/pull/1526) by [kotamatsuoka](https://github.com/kotamatsuoka).
  * Add translation to Chinese for [Query Parameters and String Validations - 查询参数和字符串校验](https://fastapi.tiangolo.com/zh/tutorial/query-params-str-validations/). PR [1500](https://github.com/tiangolo/fastapi/pull/1500) by [waynerv](https://github.com/waynerv).
  * Add translation to Chinese for [Request Body - 请求体](https://fastapi.tiangolo.com/zh/tutorial/body/). PR [1492](https://github.com/tiangolo/fastapi/pull/1492) by [waynerv](https://github.com/waynerv).
  * Add translation to Chinese for [Help FastAPI - Get Help - 帮助 FastAPI - 获取帮助](https://fastapi.tiangolo.com/zh/help-fastapi/). PR [1465](https://github.com/tiangolo/fastapi/pull/1465) by [waynerv](https://github.com/waynerv).
  * Add translation to Chinese for [Query Parameters - 查询参数](https://fastapi.tiangolo.com/zh/tutorial/query-params/). PR [1454](https://github.com/tiangolo/fastapi/pull/1454) by [waynerv](https://github.com/waynerv).
  * Add translation to Chinese for [Contributing - 开发 - 贡献](https://fastapi.tiangolo.com/zh/contributing/). PR [1460](https://github.com/tiangolo/fastapi/pull/1460) by [waynerv](https://github.com/waynerv).
  * Add translation to Chinese for [Path Parameters - 路径参数](https://fastapi.tiangolo.com/zh/tutorial/path-params/). PR [1453](https://github.com/tiangolo/fastapi/pull/1453) by [waynerv](https://github.com/waynerv).
  * Add official Microsoft project generator for [serving spaCy with FastAPI and Azure Cognitive Skills](https://github.com/microsoft/cookiecutter-spacy-fastapi) to [Project Generators](https://fastapi.tiangolo.com/project-generation/). PR [1390](https://github.com/tiangolo/fastapi/pull/1390) by [kabirkhan](https://github.com/kabirkhan).
  * Update docs in [Python Types Intro](https://fastapi.tiangolo.com/python-types/) to include info about `Optional`. Original PR [1377](https://github.com/tiangolo/fastapi/pull/1377) by [yaegassy](https://github.com/yaegassy).
  * Fix support for callable class dependencies with `yield`. PR [1365](https://github.com/tiangolo/fastapi/pull/1365) by [mrosales](https://github.com/mrosales).
  * Fix/remove incorrect error logging when a client sends invalid payloads. PR [1351](https://github.com/tiangolo/fastapi/pull/1351) by [dbanty](https://github.com/dbanty).
  * Add translation to Chinese for [First Steps - 第一步](https://fastapi.tiangolo.com/zh/tutorial/first-steps/). PR [1323](https://github.com/tiangolo/fastapi/pull/1323) by [waynerv](https://github.com/waynerv).
  * Fix generating OpenAPI for apps using callbacks with routers including Pydantic models. PR [1322](https://github.com/tiangolo/fastapi/pull/1322) by [nsidnev](https://github.com/nsidnev).
  * Optimize internal regex performance in `get_path_param_names()`. PR [1243](https://github.com/tiangolo/fastapi/pull/1243) by [heckad](https://github.com/heckad).
  * Remove `*,` from functions in docs where it's not needed. PR [1239](https://github.com/tiangolo/fastapi/pull/1239) by [pankaj-giri](https://github.com/pankaj-giri).
  * Start translations for Italian. PR [1557](https://github.com/tiangolo/fastapi/pull/1557) by [csr](https://github.com/csr).

0.56.0 not secure

* Add support for ASGI `root_path`:
  * Use `root_path` internally for mounted applications, so that OpenAPI and the docs UI works automatically without extra configurations and parameters.
  * Add new `root_path` parameter for `FastAPI` applications to provide it in cases where it can be set with the command line (e.g. for Uvicorn and Hypercorn, with the parameter `--root-path`).
  * Deprecate `openapi_prefix` parameter in favor of the new `root_path` parameter.
  * Add new/updated docs for [Sub Applications - Mounts](https://fastapi.tiangolo.com/advanced/sub-applications/), without `openapi_prefix` (as it is now handled automatically).
  * Add new/updated docs for [Behind a Proxy](https://fastapi.tiangolo.com/advanced/behind-a-proxy/), including how to setup a local testing proxy with Traefik and using `root_path`.
  * Update docs for [Extending OpenAPI](https://fastapi.tiangolo.com/advanced/extending-openapi/) with the new `openapi_prefix` parameter passed (internally generated from `root_path`).
  * Original PR [1199](https://github.com/tiangolo/fastapi/pull/1199) by [iksteen](https://github.com/iksteen).
  * Update new issue templates and docs: [Help FastAPI - Get Help](https://fastapi.tiangolo.com/help-fastapi/). PR [1531](https://github.com/tiangolo/fastapi/pull/1531).
  * Update GitHub action issue-manager. PR [1520](https://github.com/tiangolo/fastapi/pull/1520).
  * Add new links:
  * **English articles**:
  * [Real-time Notifications with Python and Postgres](https://wuilly.com/2019/10/real-time-notifications-with-python-and-postgres/) by [Guillermo Cruz](https://wuilly.com/).
  * [Microservice in Python using FastAPI](https://dev.to/paurakhsharma/microservice-in-python-using-fastapi-24cc)  by [Paurakh Sharma Humagain](https://twitter.com/PaurakhSharma).
  * [Build simple API service with Python FastAPI — Part 1](https://dev.to/cuongld2/build-simple-api-service-with-python-fastapi-part-1-581o) by [cuongld2](https://dev.to/cuongld2).
  * [FastAPI + Zeit.co = 🚀](https://paulsec.github.io/posts/fastapi_plus_zeit_serverless_fu/) by [Paul Sec](https://twitter.com/PaulWebSec).
  * [Build a web API from scratch with FastAPI - the workshop](https://dev.to/tiangolo/build-a-web-api-from-scratch-with-fastapi-the-workshop-2ehe) by [Sebastián Ramírez (tiangolo)](https://twitter.com/tiangolo).
  * [Build a Secure Twilio Webhook with Python and FastAPI](https://www.twilio.com/blog/build-secure-twilio-webhook-python-fastapi)  by [Twilio](https://www.twilio.com).
  * [Using FastAPI with Django](https://www.stavros.io/posts/fastapi-with-django/)  by [Stavros Korokithakis](https://twitter.com/Stavros).
  * [Introducing Dispatch](https://netflixtechblog.com/introducing-dispatch-da4b8a2a8072) by [Netflix](https://netflixtechblog.com/).
  * **Podcasts**:
  * [Build The Next Generation Of Python Web Applications With FastAPI - Episode 259 - interview to Sebastían Ramírez (tiangolo)](https://www.pythonpodcast.com/fastapi-web-application-framework-episode-259/) by [Podcast.`__init__`](https://www.pythonpodcast.com/).
  * **Talks**:
  * [PyConBY 2020: Serve ML models easily with FastAPI](https://www.youtube.com/watch?v=z9K5pwb0rt8) by [Sebastián Ramírez (tiangolo)](https://twitter.com/tiangolo).
  * [[VIRTUAL] Py.Amsterdam's flying Software Circus: Intro to FastAPI](https://www.youtube.com/watch?v=PnpTY1f4k2U) by [Sebastián Ramírez (tiangolo)](https://twitter.com/tiangolo).
  * PR [1467](https://github.com/tiangolo/fastapi/pull/1467).
  * Add translation to Chinese for [Python Types Intro - Python 类型提示简介](https://fastapi.tiangolo.com/zh/python-types/). PR [1197](https://github.com/tiangolo/fastapi/pull/1197) by [waynerv](https://github.com/waynerv).

0.55.1 not secure

* Fix handling of enums with their own schema in path parameters. To support [samuelcolvin/pydantic1432](https://github.com/samuelcolvin/pydantic/pull/1432) in FastAPI. PR [1463](https://github.com/tiangolo/fastapi/pull/1463).

0.55.0 not secure

* Allow enums to allow them to have their own schemas in OpenAPI. To support [samuelcolvin/pydantic1432](https://github.com/samuelcolvin/pydantic/pull/1432) in FastAPI. PR [1461](https://github.com/tiangolo/fastapi/pull/1461).
  * Add links for funding through [GitHub sponsors](https://github.com/sponsors/tiangolo). PR [1425](https://github.com/tiangolo/fastapi/pull/1425).
  * Update issue template for for questions. PR [1344](https://github.com/tiangolo/fastapi/pull/1344) by [retnikt](https://github.com/retnikt).
  * Update warning about storing passwords in docs. PR [1336](https://github.com/tiangolo/fastapi/pull/1336) by [skorokithakis](https://github.com/skorokithakis).
  * Fix typo. PR [1326](https://github.com/tiangolo/fastapi/pull/1326) by [chenl](https://github.com/chenl).
  * Add translation to Portuguese for [Alternatives, Inspiration and Comparisons - Alternativas, Inspiração e Comparações](https://fastapi.tiangolo.com/pt/alternatives/). PR [1325](https://github.com/tiangolo/fastapi/pull/1325) by [Serrones](https://github.com/Serrones).
  * Fix 2 typos in docs. PR [1324](https://github.com/tiangolo/fastapi/pull/1324) by [waynerv](https://github.com/waynerv).
  * Update CORS docs, fix correct default of `max_age=600`. PR [1301](https://github.com/tiangolo/fastapi/pull/1301) by [derekbekoe](https://github.com/derekbekoe).
  * Add translation of [main page to Portuguese](https://fastapi.tiangolo.com/pt/). PR [1300](https://github.com/tiangolo/fastapi/pull/1300) by [Serrones](https://github.com/Serrones).
  * Re-word and clarify docs for extra info in fields. PR [1299](https://github.com/tiangolo/fastapi/pull/1299) by [chris-allnutt](https://github.com/chris-allnutt).
  * Make sure the `*` in short features in the docs is consistent (after `.`) in all languages. PR [1424](https://github.com/tiangolo/fastapi/pull/1424).
  * Update order of execution for `get_db` in SQLAlchemy tutorial. PR [1293](https://github.com/tiangolo/fastapi/pull/1293) by [bcb](https://github.com/bcb).
  * Fix typos in Async docs. PR [1423](https://github.com/tiangolo/fastapi/pull/1423).

0.54.2 not secure

* Add translation to Spanish for [Concurrency and async / await - Concurrencia y async / await](https://fastapi.tiangolo.com/es/async/). PR [1290](https://github.com/tiangolo/fastapi/pull/1290) by [alvaropernas](https://github.com/alvaropernas).
  * Remove obsolete vote link. PR [1289](https://github.com/tiangolo/fastapi/pull/1289) by [donhui](https://github.com/donhui).
  * Allow disabling docs UIs by just disabling OpenAPI with `openapi_url=None`. New example in docs: [Advanced: Conditional OpenAPI](https://fastapi.tiangolo.com/advanced/conditional-openapi/). PR [1421](https://github.com/tiangolo/fastapi/pull/1421).
  * Add translation to Portuguese for [Benchmarks - Comparações](https://fastapi.tiangolo.com/pt/benchmarks/). PR [1274](https://github.com/tiangolo/fastapi/pull/1274) by [Serrones](https://github.com/Serrones).
  * Add translation to Portuguese for [Tutorial - User Guide - Intro - Tutorial - Guia de Usuário - Introdução](https://fastapi.tiangolo.com/pt/tutorial/). PR [1259](https://github.com/tiangolo/fastapi/pull/1259) by [marcosmmb](https://github.com/marcosmmb).
  * Allow using Unicode in MkDocs for translations. PR [1419](https://github.com/tiangolo/fastapi/pull/1419).
  * Add translation to Spanish for [Advanced User Guide - Intro - Guía de Usuario Avanzada - Introducción](https://fastapi.tiangolo.com/es/advanced/). PR [1250](https://github.com/tiangolo/fastapi/pull/1250) by [jfunez](https://github.com/jfunez).
  * Add translation to Portuguese for [History, Design and Future - História, Design e Futuro](https://fastapi.tiangolo.com/pt/history-design-future/). PR [1249](https://github.com/tiangolo/fastapi/pull/1249) by [marcosmmb](https://github.com/marcosmmb).
  * Add translation to Portuguese for [Features - Recursos](https://fastapi.tiangolo.com/pt/features/). PR [1248](https://github.com/tiangolo/fastapi/pull/1248) by [marcosmmb](https://github.com/marcosmmb).
  * Add translation to Spanish for [Tutorial - User Guide - Intro - Tutorial - Guía de Usuario - Introducción](https://fastapi.tiangolo.com/es/tutorial/). PR [1244](https://github.com/tiangolo/fastapi/pull/1244) by [MartinEliasQ](https://github.com/MartinEliasQ).
  * Add translation to Chinese for [Deployment - 部署](https://fastapi.tiangolo.com/zh/deployment/). PR [1203](https://github.com/tiangolo/fastapi/pull/1203) by [RunningIkkyu](https://github.com/RunningIkkyu).
  * Add translation to Chinese for [Tutorial - User Guide - Intro - 教程 - 用户指南 - 简介](https://fastapi.tiangolo.com/zh/tutorial/). PR [1202](https://github.com/tiangolo/fastapi/pull/1202) by [waynerv](https://github.com/waynerv).
  * Add translation to Chinese for [Features - 特性](https://fastapi.tiangolo.com/zh/features/). PR [1192](https://github.com/tiangolo/fastapi/pull/1192) by [Dustyposa](https://github.com/Dustyposa).
  * Add translation for [main page to Chinese](https://fastapi.tiangolo.com/zh/) PR [1191](https://github.com/tiangolo/fastapi/pull/1191) by [waynerv](https://github.com/waynerv).
  * Update docs for project generation. PR [1287](https://github.com/tiangolo/fastapi/pull/1287).
  * Add Spanish translation for [Introducción a los Tipos de Python (Python Types Intro)](https://fastapi.tiangolo.com/es/python-types/). PR [1237](https://github.com/tiangolo/fastapi/pull/1237) by [mariacamilagl](https://github.com/mariacamilagl).
  * Add Spanish translation for [Características (Features)](https://fastapi.tiangolo.com/es/features/). PR [1220](https://github.com/tiangolo/fastapi/pull/1220) by [mariacamilagl](https://github.com/mariacamilagl).

0.54.1 not secure

* Update database test setup. PR [1226](https://github.com/tiangolo/fastapi/pull/1226).
  * Improve test debugging by showing response text in failing tests. PR [1222](https://github.com/tiangolo/fastapi/pull/1222) by [samuelcolvin](https://github.com/samuelcolvin).

0.54.0 not secure

* Fix grammatical mistakes in async docs. PR [1188](https://github.com/tiangolo/fastapi/pull/1188) by [mickeypash](https://github.com/mickeypash).
  * Add support for `response_model_exclude_defaults` and `response_model_exclude_none`:
  * Deprecate the parameter `include_none` in `jsonable_encoder` and add the inverted `exclude_none`, to keep in sync with Pydantic.
  * PR [1166](https://github.com/tiangolo/fastapi/pull/1166) by [voegtlel](https://github.com/voegtlel).
  * Add example about [Testing a Database](https://fastapi.tiangolo.com/advanced/testing-database/). Initial PR [1144](https://github.com/tiangolo/fastapi/pull/1144) by [duganchen](https://github.com/duganchen).
  * Update docs for [Development - Contributing: Translations](https://fastapi.tiangolo.com/contributing/translations) including note about reviewing translation PRs. [1215](https://github.com/tiangolo/fastapi/pull/1215).
  * Update log style in README.md for GitHub Markdown compatibility. PR [1200](https://github.com/tiangolo/fastapi/pull/1200) by [geekgao](https://github.com/geekgao).
  * Add Python venv `env` to `.gitignore`. PR [1212](https://github.com/tiangolo/fastapi/pull/1212) by [cassiobotaro](https://github.com/cassiobotaro).
  * Start Portuguese translations. PR [1210](https://github.com/tiangolo/fastapi/pull/1210) by [cassiobotaro](https://github.com/cassiobotaro).
  * Update docs for Pydantic's `Settings` using a dependency with `lru_cache()`. PR [1214](https://github.com/tiangolo/fastapi/pull/1214).
  * Add first translation to Spanish [FastAPI](https://fastapi.tiangolo.com/es/). PR [1201](https://github.com/tiangolo/fastapi/pull/1201) by [mariacamilagl](https://github.com/mariacamilagl).
  * Add docs about [Settings and Environment Variables](https://fastapi.tiangolo.com/advanced/settings/). Initial PR [1118](https://github.com/tiangolo/fastapi/pull/1118) by [alexmitelman](https://github.com/alexmitelman).

0.53.2 not secure

* Fix automatic embedding of body fields for dependencies and sub-dependencies. Original PR [1079](https://github.com/tiangolo/fastapi/pull/1079) by [Toad2186](https://github.com/Toad2186).
  * Fix dependency overrides in WebSocket testing. PR [1122](https://github.com/tiangolo/fastapi/pull/1122) by [amitlissack](https://github.com/amitlissack).
  * Fix docs script to ensure languages are always sorted. PR [1189](https://github.com/tiangolo/fastapi/pull/1189).
  * Start translations for Chinese. PR [1187](https://github.com/tiangolo/fastapi/pull/1187) by [RunningIkkyu](https://github.com/RunningIkkyu).
  * Add docs for [Schema Extra - Example](https://fastapi.tiangolo.com/tutorial/schema-extra-example/). PR [1185](https://github.com/tiangolo/fastapi/pull/1185).

0.53.1 not secure

* Fix included example after translations refactor. PR [1182](https://github.com/tiangolo/fastapi/pull/1182).
  * Add docs example for `example` in `Field`. Docs at [Body - Fields: JSON Schema extras](https://fastapi.tiangolo.com/tutorial/body-fields/json-schema-extras). PR [1106](https://github.com/tiangolo/fastapi/pull/1106) by [JohnPaton](https://github.com/JohnPaton).
  * Fix using recursive models in `response_model`. PR [1164](https://github.com/tiangolo/fastapi/pull/1164) by [voegtlel](https://github.com/voegtlel).
  * Add docs for [Pycharm Debugging](https://fastapi.tiangolo.com/tutorial/debugging/). PR [1096](https://github.com/tiangolo/fastapi/pull/1096) by [youngquan](https://github.com/youngquan).
  * Fix typo in docs. PR [1148](https://github.com/tiangolo/fastapi/pull/1148) by [PLNech](https://github.com/PLNech).
  * Update Windows development environment instructions. PR [1179](https://github.com/tiangolo/fastapi/pull/1179).

0.53.0 not secure

* Update test coverage badge. PR [1175](https://github.com/tiangolo/fastapi/pull/1175).
  * Add `orjson` to `pip install fastapi[all]`. PR [1161](https://github.com/tiangolo/fastapi/pull/1161) by [michael0liver](https://github.com/michael0liver).
  * Fix included example for `GZipMiddleware`. PR [1138](https://github.com/tiangolo/fastapi/pull/1138) by [arimbr](https://github.com/arimbr).
  * Fix class name in docstring for `OAuth2PasswordRequestFormStrict`. PR [1126](https://github.com/tiangolo/fastapi/pull/1126) by [adg-mh](https://github.com/adg-mh).
  * Clarify function name in example in docs. PR [1121](https://github.com/tiangolo/fastapi/pull/1121) by [tmsick](https://github.com/tmsick).
  * Add external link [Apache Kafka producer and consumer with FastAPI and aiokafka](https://iwpnd.pw/articles/2020-03/apache-kafka-fastapi-geostream) to docs. PR [1112](https://github.com/tiangolo/fastapi/pull/1112) by [iwpnd](https://github.com/iwpnd).
  * Fix serialization when using `by_alias` or `exclude_unset` and returning data with Pydantic models. PR [1074](https://github.com/tiangolo/fastapi/pull/1074) by [juhovh-aiven](https://github.com/juhovh-aiven).
  * Add Gitter chat to docs. PR [1061](https://github.com/tiangolo/fastapi/pull/1061) by [aakashnand](https://github.com/aakashnand).
  * Update and simplify translations docs. PR [1171](https://github.com/tiangolo/fastapi/pull/1171).
  * Update development of FastAPI docs, set address to `127.0.0.1` to improve Windows support. PR [1169](https://github.com/tiangolo/fastapi/pull/1169) by [mariacamilagl](https://github.com/mariacamilagl).
  * Add support for docs translations. New docs: [Development - Contributing: Docs: Translations](https://fastapi.tiangolo.com/contributing/translations). PR [1168](https://github.com/tiangolo/fastapi/pull/1168).
  * Update terminal styles in docs and add note about [**Typer**, the FastAPI of CLIs](https://typer.tiangolo.com/). PR [1139](https://github.com/tiangolo/fastapi/pull/1139).

0.52.0 not secure

* Add new high-performance JSON response class using `orjson`. New docs: [Custom Response - HTML, Stream, File, others: `ORJSONResponse`](https://fastapi.tiangolo.com/advanced/custom-response/use-orjsonresponse). PR [1065](https://github.com/tiangolo/fastapi/pull/1065).

0.51.0 not secure

* Re-export utils from Starlette:
  * This allows using things like `from fastapi.responses import JSONResponse` instead of `from starlette.responses import JSONResponse`.
  * It's mainly syntax sugar, a convenience for developer experience.
  * Now `Request`, `Response`, `WebSocket`, `status` can be imported directly from `fastapi` as in `from fastapi import Response`. This is because those are frequently used, to use the request directly, to set headers and cookies, to get status codes, etc.
  * Documentation changes in many places, but new docs and noticeable improvements:
  * [Custom Response - HTML, Stream, File, others](https://fastapi.tiangolo.com/advanced/custom-response/).
  * [Advanced Middleware](https://fastapi.tiangolo.com/advanced/middleware/).
  * [Including WSGI - Flask, Django, others](https://fastapi.tiangolo.com/advanced/wsgi/).
  * PR [1064](https://github.com/tiangolo/fastapi/pull/1064).

0.50.0 not secure

* Add link to Release Notes from docs about pinning versions for deployment. PR [1058](https://github.com/tiangolo/fastapi/pull/1058).
  * Upgrade code to use the latest version of Starlette, including:
  * Several bug fixes.
  * Optional redirects of slashes, with or without ending in `/`.
  * Events for routers, `"startup"`, and `"shutdown"`.
  * PR [1057](https://github.com/tiangolo/fastapi/pull/1057).
  * Add docs about pinning FastAPI versions for deployment: [Deployment: FastAPI versions](https://fastapi.tiangolo.com/deployment/fastapi-versions). PR [1056](https://github.com/tiangolo/fastapi/pull/1056).

0.49.2 not secure

* Fix links in release notes. PR [1052](https://github.com/tiangolo/fastapi/pull/1052) by [sattosan](https://github.com/sattosan).
  * Fix typo in release notes. PR [1051](https://github.com/tiangolo/fastapi/pull/1051) by [sattosan](https://github.com/sattosan).
  * Refactor/clarify `serialize_response` parameter name to avoid confusion. PR [1031](https://github.com/tiangolo/fastapi/pull/1031) by [patrickmckenna](https://github.com/patrickmckenna).
  * Refactor calling each a path operation's handler function in an isolated function, to simplify profiling. PR [1027](https://github.com/tiangolo/fastapi/pull/1027) by [sm-Fifteen](https://github.com/sm-Fifteen).
  * Add missing dependencies for testing. PR [1026](https://github.com/tiangolo/fastapi/pull/1026) by [sm-Fifteen](https://github.com/sm-Fifteen).
  * Fix accepting valid types for response models, including Python types like `List[int]`. PR [1017](https://github.com/tiangolo/fastapi/pull/1017) by [patrickmckenna](https://github.com/patrickmckenna).
  * Fix format in SQL tutorial. PR [1015](https://github.com/tiangolo/fastapi/pull/1015) by [vegarsti](https://github.com/vegarsti).

0.49.1 not secure

* Fix path operation duplicated parameters when used in dependencies and the path operation function. PR [994](https://github.com/tiangolo/fastapi/pull/994) by [merowinger92](https://github.com/merowinger92).
  * Update Netlify previews deployment GitHub action as the fix is already merged and there's a new release. PR [1047](https://github.com/tiangolo/fastapi/pull/1047).
  * Move mypy configurations to config file. PR [987](https://github.com/tiangolo/fastapi/pull/987) by [hukkinj1](https://github.com/hukkinj1).
  * Temporary fix to Netlify previews not deployable from PRs from forks. PR [1046](https://github.com/tiangolo/fastapi/pull/1046) by [mariacamilagl](https://github.com/mariacamilagl).

0.49.0 not secure

* Fix encoding of `pathlib` paths in `jsonable_encoder`. PR [978](https://github.com/tiangolo/fastapi/pull/978) by [patrickmckenna](https://github.com/patrickmckenna).
  * Add articles to [External Links](https://fastapi.tiangolo.com/external-links/): [PythonのWeb frameworkのパフォーマンス比較 (Django, Flask, responder, FastAPI, japronto)](https://qiita.com/bee2/items/0ad260ab9835a2087dae) and [[FastAPI] Python製のASGI Web フレームワーク FastAPIに入門する](https://qiita.com/bee2/items/75d9c0d7ba20e7a4a0e9). PR [974](https://github.com/tiangolo/fastapi/pull/974) by [tokusumi](https://github.com/tokusumi).
  * Fix broken links in docs. PR [949](https://github.com/tiangolo/fastapi/pull/949) by [tsotnikov](https://github.com/tsotnikov).
  * Fix small typos. PR [941](https://github.com/tiangolo/fastapi/pull/941) by [NikitaKolesov](https://github.com/NikitaKolesov).
  * Update and clarify docs for dependencies with `yield`. PR [986](https://github.com/tiangolo/fastapi/pull/986).
  * Add Mermaid JS support for diagrams in docs. Add first diagrams to [Dependencies: First Steps](https://fastapi.tiangolo.com/tutorial/dependencies/) and [Dependencies with `yield` and `HTTPException`](https://fastapi.tiangolo.com/tutorial/dependencies/dependencies-with-yield/dependencies-with-yield-and-httpexception). PR [985](https://github.com/tiangolo/fastapi/pull/985).
  * Update CI to run docs deployment in GitHub actions. PR [983](https://github.com/tiangolo/fastapi/pull/983).
  * Allow `callable`s in *path operation functions*, like functions modified with `functools.partial`. PR [977](https://github.com/tiangolo/fastapi/pull/977).

0.48.0 not secure

* Run linters first in tests to error out faster. PR [948](https://github.com/tiangolo/fastapi/pull/948).
  * Log warning about `email-validator` only when used. PR [946](https://github.com/tiangolo/fastapi/pull/946).
  * Simplify [Peewee docs](https://fastapi.tiangolo.com/advanced/sql-databases-peewee/) with double dependency with `yield`. PR [947](https://github.com/tiangolo/fastapi/pull/947).
  * Add article [External Links](https://fastapi.tiangolo.com/external-links/): [Create and Deploy FastAPI app to Heroku](https://www.tutlinks.com/create-and-deploy-fastapi-app-to-heroku/). PR [942](https://github.com/tiangolo/fastapi/pull/942) by [windson](https://github.com/windson).
  * Update description of Sanic, as it is now ASGI too. PR [932](https://github.com/tiangolo/fastapi/pull/932) by [raphaelauv](https://github.com/raphaelauv).
  * Fix typo in main page. PR [920](https://github.com/tiangolo/fastapi/pull/920) by [mMarzeta](https://github.com/mMarzeta).
  * Fix parsing of possibly invalid bodies. PR [918](https://github.com/tiangolo/fastapi/pull/918) by [dmontagu](https://github.com/dmontagu).
  * Fix typo [916](https://github.com/tiangolo/fastapi/pull/916) by [adursun](https://github.com/adursun).
  * Allow `Any` type for enums in OpenAPI. PR [906](https://github.com/tiangolo/fastapi/pull/906) by [songzhi](https://github.com/songzhi).
  * Add article to [External Links](https://fastapi.tiangolo.com/external-links/): [How to continuously deploy a FastAPI to AWS Lambda with AWS SAM](https://iwpnd.pw/articles/2020-01/deploy-fastapi-to-aws-lambda). PR [901](https://github.com/tiangolo/fastapi/pull/901) by [iwpnd](https://github.com/iwpnd).
  * Add note about using Body parameters without Pydantic. PR [900](https://github.com/tiangolo/fastapi/pull/900) by [pawamoy](https://github.com/pawamoy).
  * Fix Pydantic field clone logic. PR [899](https://github.com/tiangolo/fastapi/pull/899) by [deuce2367](https://github.com/deuce2367).
  * Fix link in middleware docs. PR [893](https://github.com/tiangolo/fastapi/pull/893) by [linchiwei123](https://github.com/linchiwei123).
  * Rename default API title from "Fast API" to "FastAPI" for consistency. PR [890](https://github.com/tiangolo/fastapi/pull/890).

0.47.1 not secure

* Fix model filtering in `response_model`, cloning sub-models. PR [889](https://github.com/tiangolo/fastapi/pull/889).
  * Fix FastAPI serialization of Pydantic models using ORM mode blocking the event loop. PR [888](https://github.com/tiangolo/fastapi/pull/888).

0.47.0 not secure

* Refactor documentation to make a simpler and shorter [Tutorial - User Guide](https://fastapi.tiangolo.com/tutorial/) and an additional [Advanced User Guide](https://fastapi.tiangolo.com/advanced/) with all the additional docs. PR [887](https://github.com/tiangolo/fastapi/pull/887).
  * Tweak external links, Markdown format, typos. PR [881](https://github.com/tiangolo/fastapi/pull/881).
  * Fix bug in tutorial handling HTTP Basic Auth `username` and `password`. PR [865](https://github.com/tiangolo/fastapi/pull/865) by [isaevpd](https://github.com/isaevpd).
  * Fix handling form *path operation* parameters declared with pure classes like `list`, `tuple`, etc. PR [856](https://github.com/tiangolo/fastapi/pull/856) by [nsidnev](https://github.com/nsidnev).
  * Add request `body` to `RequestValidationError`, new docs: [Use the `RequestValidationError` body](https://fastapi.tiangolo.com/tutorial/handling-errors/use-the-requestvalidationerror-body). Initial PR [853](https://github.com/tiangolo/fastapi/pull/853) by [aviramha](https://github.com/aviramha).
  * Update [External Links](https://fastapi.tiangolo.com/external-links/) with new links and dynamic GitHub projects with `fastapi` topic. PR [850](https://github.com/tiangolo/fastapi/pull/850).
  * Fix Peewee `contextvars` handling in docs: [SQL (Relational) Databases with Peewee](https://fastapi.tiangolo.com/tutorial/sql-databases-peewee/). PR [879](https://github.com/tiangolo/fastapi/pull/879).
  * Setup development environment with Python's Venv and Flit, instead of requiring the extra Pipenv duplicating dependencies. Updated docs: [Development - Contributing](https://fastapi.tiangolo.com/contributing/). PR [877](https://github.com/tiangolo/fastapi/pull/877).
  * Update docs for [HTTP Basic Auth](https://fastapi.tiangolo.com/tutorial/security/http-basic-auth/) to improve security against timing attacks. Initial PR [807](https://github.com/tiangolo/fastapi/pull/807) by [zwass](https://github.com/zwass).