fix(deps): update dependency fastapi to ^0.128.0
This MR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| fastapi (changelog) | dependencies | minor |
^0.112.0 -> ^0.128.0
|
Release Notes
fastapi/fastapi (fastapi)
v0.128.0
Breaking Changes
-
➖ Drop support forpydantic.v1. MR #14609 by @tiangolo.
Internal
-
✅ Run performance tests only on Pydantic v2. MR #14608 by @tiangolo.
v0.127.1
Refactors
-
🔊 Add a customFastAPIDeprecationWarning. MR #14605 by @tiangolo.
Docs
-
📝 Add documentary to website. MR #14600 by @tiangolo.
Translations
-
🌐 Update translations for de (update-outdated). MR #14602 by @nilslindemann. -
🌐 Update translations for de (update-outdated). MR #14581 by @nilslindemann.
Internal
-
🔧 Update pre-commit to use local Ruff instead of hook. MR #14604 by @tiangolo. -
✅ Add missing tests for code examples. MR #14569 by @YuriiMotov. -
👷 Removelintjob fromtestCI workflow. MR #14593 by @YuriiMotov. -
👷 Update secrets check. MR #14592 by @tiangolo. -
👷 Run CodSpeed tests in parallel to other tests to speed up CI. MR #14586 by @tiangolo. -
🔨 Update scripts and pre-commit to autofix files. MR #14585 by @tiangolo.
v0.127.0
Breaking Changes
-
🔊 Add deprecation warnings when usingpydantic.v1. MR #14583 by @tiangolo.
Translations
-
🔧 Add LLM prompt file for Korean, generated from the existing translations. MR #14546 by @tiangolo. -
🔧 Add LLM prompt file for Japanese, generated from the existing translations. MR #14545 by @tiangolo.
Internal
-
⬆️ Upgrade OpenAI model for translations to gpt-5.2. MR #14579 by @tiangolo.
v0.126.0
Upgrades
-
➖ Drop support for Pydantic v1, keeping short temporary support for Pydantic v2'spydantic.v1. MR #14575 by @tiangolo.- The minimum version of Pydantic installed is now
pydantic >=2.7.0. - The
standarddependencies now includepydantic-settings >=2.0.0andpydantic-extra-types >=2.0.0.
- The minimum version of Pydantic installed is now
Docs
-
📝 Fix duplicated variable indocs_src/python_types/tutorial005_py39.py. MR #14565 by @paras-verma7454.
Translations
-
🔧 Add LLM prompt file for Ukrainian, generated from the existing translations. MR #14548 by @tiangolo.
Internal
-
🔧 Tweak pre-commit to allow committing release-notes. MR #14577 by @tiangolo. -
⬆️ Use prek as a pre-commit alternative. MR #14572 by @tiangolo. -
👷 Add performance tests with CodSpeed. MR #14558 by @tiangolo.
v0.125.0
Breaking Changes
-
🔧 Drop support for Python 3.8. MR #14563 by @tiangolo.- This would actually not be a breaking change as no code would really break. Any Python 3.8 installer would just refuse to install the latest version of FastAPI and would only install 0.124.4. Only marking it as a "breaking change" to make it visible.
Refactors
-
♻️ Upgrade internal syntax to Python 3.9+🎉 . MR #14564 by @tiangolo.
Docs
-
⚰️ Remove Python 3.8 from CI and remove Python 3.8 examples from source docs. MR #14559 by @YuriiMotov and @tiangolo.
Translations
-
🌐 Update translations for pt (add-missing). MR #14539 by @tiangolo. -
🔧 Add LLM prompt file for French, generated from the existing French docs. MR #14544 by @tiangolo. -
🌐 Sync Portuguese docs (pages found with script). MR #14554 by @YuriiMotov. -
🌐 Sync Spanish docs (outdated pages found with script). MR #14553 by @YuriiMotov. -
🌐 Sync German docs. MR #14519 by @nilslindemann. -
🔥 Remove inactive/scarce translations to Vietnamese. MR #14543 by @tiangolo. -
🔥 Remove inactive/scarce translations to Persian. MR #14542 by @tiangolo. -
🔥 Remove translation to emoji to simplify the new setup with LLM autotranslations. MR #14541 by @tiangolo. -
🌐 Update translations for pt (update-outdated). MR #14537 by @tiangolo. -
🌐 Update translations for es (update-outdated). MR #14532 by @tiangolo. -
🌐 Update translations for es (add-missing). MR #14533 by @tiangolo. -
🌐 Remove translations for removed docs. MR #14516 by @tiangolo.
Internal
-
⬆️ Bumpmarkdown-include-variantsfrom 0.0.7 to 0.0.8. MR #14556 by @YuriiMotov. -
🔧 Temporarily disable translations still in progress, being migrated to the new LLM setup. MR #14555 by @YuriiMotov. -
🔧 Update test workflow config, remove commented code. MR #14540 by @tiangolo. -
👷 Configure coverage, error on main tests, don't wait for Smokeshow. MR #14536 by @tiangolo. -
👷 Run Smokeshow always, even on test failures. MR #14538 by @tiangolo. -
👷 Make Pydantic versions customizable in CI. MR #14535 by @tiangolo. -
👷 Fix checkout GitHub Action fetch-depth for LLM translations, enable cron monthly. MR #14531 by @tiangolo. -
👷 Fix Typer command for CI LLM translations. MR #14530 by @tiangolo. -
👷 Update LLM translation CI, add language matrix and extra commands, prepare for scheduled run. MR #14529 by @tiangolo. -
👷 Update github-actions user for GitHub Actions workflows. MR #14528 by @tiangolo. -
➕ Add requirements for translations. MR #14515 by @tiangolo.
v0.124.4
Fixes
-
🐛 Fix parameter aliases. MR #14371 by @YuriiMotov.
v0.124.3
Fixes
-
🐛 Fix support for tagged union with discriminator inside ofAnnotatedwithBody(). MR #14512 by @tiangolo.
Refactors
-
✅ Add set of tests for request parameters and alias. MR #14358 by @YuriiMotov.
Docs
-
📝 Tweak links format. MR #14505 by @tiangolo. -
📝 Update docs about re-raising validation errors, do not include string as is to not leak information. MR #14487 by @tiangolo. -
🔥 Remove external links section. MR #14486 by @tiangolo.
Translations
-
🌐 Sync Russian docs. MR #14509 by @YuriiMotov. -
🌐 Sync German docs. MR #14488 by @nilslindemann.
Internal
-
👷 Tweak coverage to not pass Smokeshow max file size limit. MR #14507 by @tiangolo. -
✅ Expand test matrix to include Windows and MacOS. MR #14171 by @svlandeg.
v0.124.2
Fixes
-
🐛 Fix support forif TYPE_CHECKING, non-evaluated stringified annotations. MR #14485 by @tiangolo.
v0.124.1
Fixes
-
🐛 Fix handling arbitrary types when usingarbitrary_types_allowed=True. MR #14482 by @tiangolo.
Docs
-
📝 Add variants for code examples in "Advanced User Guide". MR #14413 by @YuriiMotov. -
📝 Update tech stack in project generation docs. MR #14472 by @alejsdev.
Internal
-
✅ Add test for Pydantic v2, dataclasses, UUID, and__annotations__. MR #14477 by @tiangolo.
v0.124.0
Features
-
🚸 Improve tracebacks by adding endpoint metadata. MR #14306 by @savannahostrowski.
Internal
-
✏️ Fix typo inscripts/mkdocs_hooks.py. MR #14457 by @yujiteshima.
v0.123.10
Fixes
-
🐛 Fix using class (not instance) dependency that has__call__method. MR #14458 by @YuriiMotov. -
🐛 Fixseparate_input_output_schemas=Falsewithcomputed_field. MR #14453 by @YuriiMotov.
v0.123.9
Fixes
-
🐛 Fix OAuth2 scopes in OpenAPI in extra corner cases, parent dependency with scopes, sub-dependency security scheme without scopes. MR #14459 by @tiangolo.
v0.123.8
Fixes
-
🐛 Fix OpenAPI security scheme OAuth2 scopes declaration, deduplicate security schemes with different scopes. MR #14455 by @tiangolo.
v0.123.7
Fixes
v0.123.6
Fixes
-
🐛 Fix support for functools wraps and partial combined, for async and regular functions and classes in path operations and dependencies. MR #14448 by @tiangolo.
v0.123.5
Features
-
✨ Allow using dependables withfunctools.partial(). MR #9753 by @lieryan. -
✨ Add support for wrapped functions (e.g.@functools.wraps()) used with forward references. MR #5077 by @lucaswiman. -
✨ Handle wrapped dependencies. MR #9555 by @phy1729.
Fixes
Refactors
-
🔥 Remove dangling extra condiitonal no longer needed. MR #14435 by @tiangolo. -
♻️ Refactor internals, updateis_coroutinecheck to reuse internal supported variants (unwrap, check class). MR #14434 by @tiangolo.
Translations
-
🌐 Sync German docs. MR #14367 by @nilslindemann.
v0.123.4
Fixes
-
🐛 Fix OpenAPI schema support for computed fields when usingseparate_input_output_schemas=False. MR #13207 by @vgrafe.
Docs
-
📝 Fix docstring ofserversparameter. MR #14405 by @YuriiMotov.
v0.123.3
Fixes
-
🐛 Fix Query\Header\Cookie parameter model alias. MR #14360 by @YuriiMotov. -
🐛 Fix optional sequence handling inserialize sequence valuewith Pydantic V2. MR #14297 by @YuriiMotov.
v0.123.2
Fixes
-
🐛 Fix unformatted{type_}in FastAPIError. MR #14416 by @Just-Helpful. -
🐛 Fix parsing extra non-body parameter list. MR #14356 by @YuriiMotov. -
🐛 Fix parsing extraFormparameter list. MR #14303 by @YuriiMotov. -
🐛 Fix support for form values with empty strings interpreted as missing (Noneif that's the default), for compatibility with HTML forms. MR #13537 by @MarinPostma.
Docs
-
📝 Add tip on how to installpipin case ofNo module named piperror invirtual-environments.md. MR #14211 by @zadevhub. -
📝 Update Primary Key notes for the SQL databases tutorial to avoid confusion. MR #14120 by @FlaviusRaducu. -
📝 Clarify estimation note in documentation. MR #14070 by @SaisakthiM.
v0.123.1
Fixes
-
🐛 Avoid accessing non-existing "$ref" key for Pydantic v2 compat remapping. MR #14361 by @svlandeg. -
🐛 FixTypeErrorwhen encoding a decimal with aNaNorInfinityvalue. MR #12935 by @kentwelcome.
Internal
-
🐛 Fix Windows UnicodeEncodeError in CLI test. MR #14295 by @hemanth-thirthahalli. -
🔧 Update sponsors: add Greptile. MR #14429 by @tiangolo. -
👥 Update FastAPI GitHub topic repositories. MR #14426 by @tiangolo. -
⬆️ Bump markdown-include-variants from 0.0.6 to 0.0.7. MR #14423 by @YuriiMotov. -
👥 Update FastAPI People - Sponsors. MR #14422 by @tiangolo. -
👥 Update FastAPI People - Contributors and Translators. MR #14420 by @tiangolo.
v0.123.0
Fixes
-
🐛 Cache dependencies that don't use scopes and don't have sub-dependencies with scopes. MR #14419 by @tiangolo.
v0.122.1
Fixes
-
🐛 Fix hierarchical security scope propagation. MR #5624 by @kristjanvalur.
Docs
-
💅 Update CSS to explicitly use emoji font. MR #14415 by @tiangolo.
Internal
-
⬆️ Bump markdown-include-variants from 0.0.5 to 0.0.6. MR #14418 by @YuriiMotov.
v0.122.0
Fixes
-
🐛 Use401status code in security classes when credentials are missing. MR #13786 by @YuriiMotov.- If your code depended on these classes raising the old (less correct)
403status code, check the new docs about how to override the classes, to use the same old behavior: Use Old 403 Authentication Error Status Codes.
- If your code depended on these classes raising the old (less correct)
Internal
-
🔧 Configure labeler to exclude files that start from underscore forlang-alllabel. MR #14213 by @YuriiMotov. -
👷 Add pre-commit config with local script for permalinks. MR #14398 by @tiangolo. -
💄 Use font Fira Code to fix display of Rich panels in docs in Windows. MR #14387 by @tiangolo. -
👷 Add custom pre-commit CI. MR #14397 by @tiangolo. -
⬆️ Bump actions/checkout from 5 to 6. MR #14381 by @dependabot[bot]. -
👷 Upgradelatest-changesGitHub Action and pinactions/checkout@v5. MR #14403 by @svlandeg. -
🛠️ Addadd-permalinksandadd-permalinks-pagetoscripts/docs.py. MR #14033 by @YuriiMotov. -
🔧 Upgrade Material for MkDocs and remove insiders. MR #14375 by @tiangolo.
v0.121.3
0.121.3
Refactors
-
♻️ Make the result ofDepends()andSecurity()hashable, as a workaround for other tools interacting with these internal parts. MR #14372 by @tiangolo.
Upgrades
-
⬆️ Bump Starlette to <0.51.0. MR #14282 by @musicinmybrain.
Docs
-
📝 Add missing hash part. MR #14369 by @nilslindemann. -
📝 Fix typos in code comments. MR #14364 by @Edge-Seven. -
📝 Add docs for using FastAPI Cloud. MR #14359 by @tiangolo.
v0.121.2
Fixes
-
🐛 Fix handling of JSON Schema attributes named "$ref". MR #14349 by @tiangolo.
Docs
-
📝 Add EuroPython talk & podcast episode with Sebastián Ramírez. MR #14260 by @clytaemnestra. -
✏️ Fix links and add missing permalink in docs. MR #14217 by @YuriiMotov.
Translations
-
🌐 Update Portuguese translations with LLM prompt. MR #14228 by @ceb10n. -
🔨 Add Portuguese translations LLM prompt. MR #14208 by @ceb10n. -
🌐 Sync Russian docs. MR #14331 by @YuriiMotov. -
🌐 Sync German docs. MR #14317 by @nilslindemann.
v0.121.1
Fixes
-
🐛 FixDepends(func, scope='function')for top level (parameterless) dependencies. MR #14301 by @luzzodev.
Docs
-
📝 Upate docs for advanced dependencies withyield, noting the changes in 0.121.0, addingscope. MR #14287 by @tiangolo.
Internal
-
⬆️ Bump ruff from 0.13.2 to 0.14.3. MR #14276 by @dependabot[bot]. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #14289 by @pre-commit-ci[bot].
v0.121.0
Features
-
✨ Add support for dependencies with scopes, supportscope="request"for dependencies withyieldthat exit before the response is sent. MR #14262 by @tiangolo.
Internal
-
👥 Update FastAPI People - Contributors and Translators. MR #14273 by @tiangolo. -
👥 Update FastAPI People - Sponsors. MR #14274 by @tiangolo. -
👥 Update FastAPI GitHub topic repositories. MR #14280 by @tiangolo. -
⬆️ Bump mkdocs-macros-plugin from 1.4.0 to 1.4.1. MR #14277 by @dependabot[bot]. -
⬆️ Bump mkdocstrings[python] from 0.26.1 to 0.30.1. MR #14279 by @dependabot[bot].
v0.120.4
Fixes
-
🐛 Fix security schemes in OpenAPI when added at the top level app. MR #14266 by @YuriiMotov.
v0.120.3
Refactors
-
♻️ Reduce internal cyclic recursion in dependencies, from 2 functions calling each other to 1 calling itself. MR #14256 by @tiangolo. -
♻️ Refactor internals of dependencies, simplify code and removeget_param_sub_dependant. MR #14255 by @tiangolo. -
♻️ Refactor internals of dependencies, simplify using dataclasses. MR #14254 by @tiangolo.
Docs
-
📝 Update note for untranslated pages. MR #14257 by @YuriiMotov.
v0.120.2
Fixes
-
🐛 Fix separation of schemas with nested models introduced in 0.119.0. MR #14246 by @tiangolo.
Internal
-
🔧 Add sponsor: SerpApi. MR #14248 by @tiangolo. -
⬆️ Bump actions/download-artifact from 5 to 6. MR #14236 by @dependabot[bot]. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #14237 by @pre-commit-ci[bot]. -
⬆️ Bump actions/upload-artifact from 4 to 5. MR #14235 by @dependabot[bot].
v0.120.1
Upgrades
-
⬆️ Bump Starlette to <0.50.0. MR #14234 by @YuriiMotov.
Internal
-
🔧 Addlicenseandlicense-filestopyproject.toml, removeLicensefromclassifiers. MR #14230 by @YuriiMotov.
v0.120.0
There are no major nor breaking changes in this release.
The internal reference documentation now uses annotated_doc.Doc instead of typing_extensions.Doc, this adds a new (very small) dependency on annotated-doc, a package made just to provide that Doc documentation utility class.
I would expect typing_extensions.Doc to be deprecated and then removed at some point from typing_extensions, for that reason there's the new annotated-doc micro-package. If you are curious about this, you can read more in the repo for annotated-doc.
This new version 0.120.0 only contains that transition to the new home package for that utility class Doc.
Translations
-
🌐 Sync German docs. MR #14188 by @nilslindemann.
Internal
-
➕ Migrate internal reference documentation fromtyping_extensions.Doctoannotated_doc.Doc. MR #14222 by @tiangolo. -
🛠️ Update German LLM prompt and test file. MR #14189 by @nilslindemann. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #14181 by @pre-commit-ci[bot].
v0.119.1
Fixes
-
🐛 Fix internal Pydantic v1 compatibility (warnings) for Python 3.14 and Pydantic 2.12.1. MR #14186 by @svlandeg.
Docs
Internal
-
🔧 Add sponsor Requestly. MR #14205 by @tiangolo. -
🔧 Configure reminder forwaitinglabel inissue-manager. MR #14156 by @YuriiMotov.
v0.119.0
FastAPI now (temporarily) supports both Pydantic v2 models and pydantic.v1 models at the same time in the same app, to make it easier for any FastAPI apps still using Pydantic v1 to gradually but quickly migrate to Pydantic v2.
from fastapi import FastAPI
from pydantic import BaseModel as BaseModelV2
from pydantic.v1 import BaseModel
class Item(BaseModel):
name: str
description: str | None = None
class ItemV2(BaseModelV2):
title: str
summary: str | None = None
app = FastAPI()
@​app.post("/items/", response_model=ItemV2)
def create_item(item: Item):
return {"title": item.name, "summary": item.description}
Adding this feature was a big effort with the main objective of making it easier for the few applications still stuck in Pydantic v1 to migrate to Pydantic v2.
And with this, support for Pydantic v1 is now deprecated and will be removed from FastAPI in a future version soon.
Note: have in mind that the Pydantic team already stopped supporting Pydantic v1 for recent versions of Python, starting with Python 3.14.
You can read in the docs more about how to Migrate from Pydantic v1 to Pydantic v2.
Features
-
✨ Add support forfrom pydantic.v1 import BaseModel, mixed Pydantic v1 and v2 models in the same app. MR #14168 by @tiangolo.
v0.118.3
Upgrades
-
⬆️ Add support for Python 3.14. MR #14165 by @svlandeg.
v0.118.2
Fixes
-
🐛 Fix tagged discriminated union not recognized as body field. MR #12942 by @frankie567.
Internal
-
⬆️ Bump astral-sh/setup-uv from 6 to 7. MR #14167 by @dependabot[bot].
v0.118.1
Upgrades
- 👽️ Ensure compatibility with Pydantic 2.12.0. MR #14036 by @cjwatson.
Docs
-
📝 Add External Link: Getting started with logging in FastAPI. MR #14152 by @itssimon.
Translations
-
🔨 Add Russian translations LLM prompt. MR #13936 by @tiangolo. -
🌐 Sync German docs. MR #14149 by @nilslindemann. -
🌐 Add Russian translations for missing pages (LLM-generated). MR #14135 by @YuriiMotov. -
🌐 Update Russian translations for existing pages (LLM-generated). MR #14123 by @YuriiMotov. -
🌐 Remove configuration files for inactive translations. MR #14130 by @tiangolo.
Internal
-
🔨 Move local coverage logic to its own script. MR #14166 by @tiangolo. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #14161 by @pre-commit-ci[bot]. -
⬆️ Bump griffe-typingdoc from 0.2.8 to 0.2.9. MR #14144 by @dependabot[bot]. -
⬆️ Bump mkdocs-macros-plugin from 1.3.9 to 1.4.0. MR #14145 by @dependabot[bot]. -
⬆️ Bump markdown-include-variants from 0.0.4 to 0.0.5. MR #14146 by @dependabot[bot]. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #14126 by @pre-commit-ci[bot]. -
👥 Update FastAPI GitHub topic repositories. MR #14150 by @tiangolo. -
👥 Update FastAPI People - Sponsors. MR #14139 by @tiangolo. -
👥 Update FastAPI People - Contributors and Translators. MR #14138 by @tiangolo. -
⬆️ Bump ruff from 0.12.7 to 0.13.2. MR #14147 by @dependabot[bot]. -
⬆️ Bump sqlmodel from 0.0.24 to 0.0.25. MR #14143 by @dependabot[bot]. -
⬆️ Bump tiangolo/issue-manager from 0.5.1 to 0.6.0. MR #14148 by @dependabot[bot]. -
👷 Update docs previews comment, single comment, add failure status. MR #14129 by @tiangolo. -
🔨 Modifymkdocs_hooks.pyto addtitleto page's metadata (remove permalinks in social cards). MR #14125 by @YuriiMotov.
v0.118.0
0.118.0
Fixes
-
🐛 Fix support forStreamingResponses with dependencies withyieldorUploadFiles, close after the response is done. MR #14099 by @tiangolo.
Before FastAPI 0.118.0, if you used a dependency with yield, it would run the exit code after the path operation function returned but right before sending the response.
This change also meant that if you returned a StreamingResponse, the exit code of the dependency with yield would have been already run.
For example, if you had a database session in a dependency with yield, the StreamingResponse would not be able to use that session while streaming data because the session would have already been closed in the exit code after yield.
This behavior was reverted in 0.118.0, to make the exit code after yield be executed after the response is sent.
You can read more about it in the docs for Advanced Dependencies - Dependencies with yield, HTTPException, except and Background Tasks. Including what you could do if you wanted to close a database session earlier, before returning the response to the client.
Docs
-
📝 Updatetutorial/security/oauth2-jwt/to usepwdlibwith Argon2 instead ofpasslib. MR #13917 by @Neizvestnyj. -
✏️ Fix typos in OAuth2 password request forms. MR #14112 by @alv2017. -
📝 Update contributing guidelines for installing requirements. MR #14095 by @alejsdev.
Translations
-
🌐 Sync German docs. MR #14098 by @nilslindemann.
Internal
-
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #14103 by @pre-commit-ci[bot]. -
♻️ Refactor sponsor image handling. MR #14102 by @alejsdev. -
🐛 Fix sponsor display issue by hiding element on image error. MR #14097 by @alejsdev. -
🐛 Hide sponsor badge when sponsor image is not displayed. MR #14096 by @alejsdev.
v0.117.1
Fixes
-
🐛 Fix validation error whenFileis declared afterFormparameter. MR #11194 by @thomasleveil.
v0.117.0
Features
-
✨ AllowNoneas return type for bodiless responses. MR #9425 by @hofrob. -
✨ Allow array values for OpenAPI schematypefield. MR #13639 by @sammasak. -
✨ Add OpenAPIexternal_docsparameter toFastAPI. MR #13713 by @cmtoro.
Fixes
-
⚡ Fixdefault_factoryfor response model field with Pydantic V1. MR #9704 by @vvanglro. -
🐛 Fix inconsistent processing of model docstring formfeed char with Pydantic V1. MR #6039 by @MaxwellPayne. -
🐛 Fixjsonable_encoderaltersjson_encodersof Pydantic v1 objects. MR #4972 by @aboubacs. -
🐛 Reenableallow_arbitrary_typeswhen only 1 argument is used on the API endpoint. MR #13694 by @rmawatson. -
🐛 Fixinspect.getcoroutinefunction()can break testing withunittest.mock.patch(). MR #14022 by @secrett2633.
Refactors
-
♻️ Createdependency-cachedict insolve_dependenciesonly ifNone(don't re-create if empty). MR #13689 by @bokshitsky. -
✅ Enable test case for duplicated headers intest_tutorial/test_header_params/test_tutorial003.py. MR #13864 by @Amogha-ark. -
📌 Pinhttpxto>=0.23.0,<1.0.0. MR #14086 by @YuriiMotov.
Docs
-
📝 Add note about Cookies and JavaScript ontutorial/cookie-params.md. MR #13510 by @Kludex. -
📝 Remove outdated formatting frompath-params-numeric-validations.mdfor languagesen,esanduk.. MR #14059 by @svlandeg. -
📝 Fix and Improve English Documentation. MR #14048 by @nilslindemann.
Translations
-
📝 Update prompts and German translation. MR #14015 by @nilslindemann.
Internal
-
✅ Simplify tests for response_model. MR #14062 by @dynamicy. -
🚨 Install pydantic.mypy plugin. MR #14081 by @svlandeg. -
✅ Add LLM test file. MR #14049 by @nilslindemann. -
🔨 Update translations script. MR #13968 by @YuriiMotov. -
🛠️ Updatedocs.py generate-readmecommand to remove permalinks from headers. MR #14055 by @YuriiMotov. -
⬆️ Update mypy to 1.14.1. MR #12970 by @tamird.
v0.116.2
Upgrades
-
⬆️ Upgrade Starlette supported version range to >=0.40.0,<0.49.0. MR #14077 by @musicinmybrain.
Docs
-
📝 Add documentation for Behind a Proxy - Proxy Forwarded Headers, using--forwarded-allow-ips="*". MR #14028 by @tiangolo. -
📝 Add deprecation info block aboutdict()indocs/tutorial/body.md. MR #13906 by @jomkv. -
📝 Fix Twitter to be X (Twitter) everywhere in documentation. MR #13809 by @valentinDruzhinin. -
🐛 Prevent scroll-to-top on restart/fast buttons intermynal.js. MR #13714 by @Ashish-Pandey62. -
📝 Update testing events documentation. MR #13259 by @z0z0r4. -
📝 Remove obsoleteurlfield in error responses in docs. MR #13655 by @Taoup. -
📝 Bring thescopeclaim in line with the standard indocs_src/security/tutorial005.py. MR #11189 by @DurandA. -
📝 Update TrustedHostMiddleware Documentation. MR #11441 by @soulee-dev. -
📝 Remove links to site callbackhell.com that doesn't exist anymore. MR #14006 by @dennybiasiolli. -
📝 Add permalinks to headers in English docs. MR #13993 by @YuriiMotov. -
📝 Updatedocs/en/docs/advanced/generate-clients.md. MR #13793 by @mrlubos. -
📝 Add discussion template for new language translation requests. MR #13535 by @alejsdev.
Translations
-
📝 Fix code include for Pydantic models example indocs/zh/docs/python-types.md. MR #13997 by @anfreshman. -
🌐 Update Portuguese Translation fordocs/pt/docs/async.md. MR #13863 by @EdmilsonRodrigues. -
📝 Fix highlight line indocs/ja/docs/tutorial/body.md. MR #13927 by @KoyoMiyazaki. -
🌐 Add Persian translation fordocs/fa/docs/environment-variables.md. MR #13923 by @Mohammad222PR. -
🌐 Add Persian translation fordocs/fa/docs/python-types.md. MR #13524 by @Mohammad222PR. -
🌐 Update Portuguese Translation fordocs/pt/docs/project-generation.md. MR #13875 by @EdmilsonRodrigues. -
🌐 Add Persian translation fordocs/fa/docs/async.md. MR #13541 by @Mohammad222PR. -
🌐 Add Bangali translation fordocs/bn/about/index.md. MR #13882 by @sajjadrahman56.
Internal
-
⬆️ Bump pyjwt from 2.8.0 to 2.9.0. MR #13960 by @dependabot[bot]. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #14080 by @pre-commit-ci[bot]. -
⬆️ Bump actions/setup-python from 5 to 6. MR #14042 by @dependabot[bot]. -
⬆️ Bump actions/labeler from 5 to 6. MR #14046 by @dependabot[bot]. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #14056 by @pre-commit-ci[bot]. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #14035 by @pre-commit-ci[bot]. -
⬆️ Bump pypa/gh-action-pypi-publish from 1.12.4 to 1.13.0. MR #14041 by @dependabot[bot]. -
👥 Update FastAPI People - Contributors and Translators. MR #14029 by @tiangolo. -
👥 Update FastAPI People - Sponsors. MR #14030 by @tiangolo. -
👥 Update FastAPI GitHub topic repositories. MR #14031 by @tiangolo. -
👥 Update FastAPI People - Experts. MR #14034 by @tiangolo. -
👷 Detect and label merge conflicts on MRs automatically. MR #14045 by @svlandeg. -
🔧 Update sponsors: remove Platform.sh. MR #14027 by @tiangolo. -
🔧 Update sponsors: remove Mobb. MR #14026 by @tiangolo. -
🛠️ Updatemkdocs_hooksto handle headers with permalinks when building docs. MR #14025 by @tiangolo. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #14016 by @pre-commit-ci[bot]. -
⬆️ Bumpmkdocs-macros-pluginfrom 1.3.7 to 1.3.9. MR #14003 by @YuriiMotov. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13999 by @pre-commit-ci[bot]. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13983 by @pre-commit-ci[bot]. -
⬆️ Bump actions/checkout from 4 to 5. MR #13986 by @dependabot[bot]. -
🔧 Update Speakeasy sponsor graphic. MR #13971 by @chailandau. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13969 by @pre-commit-ci[bot]. -
⬆️ Bump actions/download-artifact from 4 to 5. MR #13975 by @dependabot[bot]. -
👥 Update FastAPI People - Experts. MR #13963 by @tiangolo. -
⬆️ Bump ruff from 0.11.2 to 0.12.7. MR #13957 by @dependabot[bot]. -
⬆️ Bump cairosvg from 2.7.1 to 2.8.2. MR #13959 by @dependabot[bot]. -
⬆️ Bump pydantic-ai from 0.0.30 to 0.4.10. MR #13958 by @dependabot[bot]. -
👥 Update FastAPI GitHub topic repositories. MR #13962 by @tiangolo. -
⬆️ Bump mkdocs-material from 9.6.15 to 9.6.16. MR #13961 by @dependabot[bot]. -
⬆️ Bump tiangolo/latest-changes from 0.3.2 to 0.4.0. MR #13952 by @dependabot[bot]. -
👥 Update FastAPI People - Sponsors. MR #13956 by @tiangolo. -
👥 Update FastAPI People - Contributors and Translators. MR #13955 by @tiangolo. -
🔧 Update sponsors: Databento link and sponsors_badge data. MR #13954 by @tiangolo. -
🔧 Update sponsors: Add Railway. MR #13953 by @tiangolo. -
⚒️ Update translate script, update prompt to minimize generated diff. MR #13947 by @YuriiMotov. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13943 by @pre-commit-ci[bot]. -
⚒️ Tweak translate script and CI. MR #13939 by @tiangolo. -
👷 Add CI to translate with LLMs. MR #13937 by @tiangolo. -
⚒️ Update translate script, show and update outdated translations. MR #13933 by @tiangolo. -
🔨 Refactor translate script with extra feedback (prints). MR #13932 by @tiangolo. -
🔨 Update translations script to remove old (removed) files. MR #13928 by @tiangolo. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13894 by @pre-commit-ci[bot]. -
⬆️ Update httpx requirement to >=0.23.0,<0.29.0. MR #13114 by @yan12125. -
🔧 Update sponsors: Add Mobb. MR #13916 by @tiangolo. -
👥 Update FastAPI People - Experts. MR #13889 by @tiangolo. -
🔨 Update FastAPI People sleep interval, use external settings. MR #13888 by @tiangolo.
v0.116.1
Upgrades
-
⬆️ Upgrade Starlette supported version range to>=0.40.0,<0.48.0. MR #13884 by @tiangolo.
Docs
-
📝 Add notification about impending changes in Translations todocs/en/docs/contributing.md. MR #13886 by @YuriiMotov.
Internal
-
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13871 by @pre-commit-ci[bot].
v0.116.0
Features
-
✨ Add support for deploying to FastAPI Cloud withfastapi deploy. MR #13870 by @tiangolo.
Installing fastapi[standard] now includes fastapi-cloud-cli.
This will allow you to deploy to FastAPI Cloud with the fastapi deploy command.
If you want to install fastapi with the standard dependencies but without fastapi-cloud-cli, you can install instead fastapi[standard-no-fastapi-cloud-cli].
Translations
-
🌐 Add Russian translation fordocs/ru/docs/advanced/response-directly.md. MR #13801 by @NavesSapnis. -
🌐 Add Russian translation fordocs/ru/docs/advanced/additional-status-codes.md. MR #13799 by @NavesSapnis. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/body-updates.md. MR #13804 by @valentinDruzhinin.
Internal
-
⬆️ Bump pillow from 11.1.0 to 11.3.0. MR #13852 by @dependabot[bot]. -
👥 Update FastAPI People - Sponsors. MR #13846 by @tiangolo. -
👥 Update FastAPI GitHub topic repositories. MR #13848 by @tiangolo. -
⬆️ Bump mkdocs-material from 9.6.1 to 9.6.15. MR #13849 by @dependabot[bot]. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13843 by @pre-commit-ci[bot]. -
👥 Update FastAPI People - Contributors and Translators. MR #13845 by @tiangolo.
v0.115.14
Fixes
-
🐛 Fix support for unions when usingForm. MR #13827 by @patrick91.
Docs
-
✏️ Fix grammar mistake indocs/en/docs/advanced/response-directly.md. MR #13800 by @NavesSapnis. -
📝 Update Speakeasy URL to Speakeasy Sandbox. MR #13697 by @ndimares.
Translations
-
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/response-model.md. MR #13792 by @valentinDruzhinin. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/security/index.md. MR #13805 by @valentinDruzhinin. -
✏️ Fix typo indocs/ja/docs/tutorial/encoder.md. MR #13815 by @ruzia. -
✏️ Fix typo indocs/ja/docs/tutorial/handling-errors.md. MR #13814 by @ruzia. -
✏️ Fix typo indocs/ja/docs/tutorial/body-fields.md. MR #13802 by @ruzia. -
🌐 Add Russian translation fordocs/ru/docs/advanced/index.md. MR #13797 by @NavesSapnis.
Internal
-
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13823 by @pre-commit-ci[bot].
v0.115.13
Fixes
-
🐛 Fix truncating the model's description with form feed (\f) character for Pydantic V2. MR #13698 by @YuriiMotov.
Refactors
-
✨ AddrefreshUrlparameter inOAuth2PasswordBearer. MR #11460 by @snosratiershad. -
🚸 Set format to password for fieldspasswordandclient_secretinOAuth2PasswordRequestForm, make docs show password fields for passwords. MR #11032 by @Thodoris1999. -
✅ Simplify tests forsettings. MR #13505 by @valentinDruzhinin. -
✅ Simplify tests forvalidate_response_recursive. MR #13507 by @valentinDruzhinin.
Upgrades
-
⬆️ Update ReDoc to version 2.x. MR #9700 by @joakimnordling.
Docs
-
📝 Add annotations to HTTP middleware example. MR #11530 by @Kilo59. -
📝 Clarify in CORS docs that wildcards and credentials are mutually exclusive. MR #9829 by @dfioravanti. -
✏️ Fix typo in docstring. MR #13532 by @comp64. -
📝 Clarify guidance on usingasync defwithoutawait. MR #13642 by @swastikpradhan1999. -
📝 Update exclude-parameters-from-openapi documentation links. MR #13600 by @timonrieger. -
📝 Clarify the middleware execution order in docs. MR #13699 by @YuriiMotov. -
🍱 Update Drawio diagrams SVGs, single file per diagram, sans-serif font. MR #13706 by @tiangolo. -
📝 Update docs for "Help FastAPI", simplify and reduce "sponsor" section. MR #13670 by @tiangolo. -
📝 Remove unnecessary bullet from docs. MR #13641 by @Adamowoc. -
✏️ Fix syntax error indocs/en/docs/tutorial/handling-errors.md. MR #13623 by @gsheni. -
📝 Fix typo in documentation. MR #13599 by @Taoup. -
📝 Fix liblab client generation doc link. MR #13571 by @EFord36. -
✏️ Fix talk information typo. MR #13544 by @blueswen. -
📝 Add External Link: Taiwanese talk on FastAPI with observability . MR #13527 by @blueswen.
Translations
-
🌐 Add Russian Translation fordocs/ru/docs/advanced/response-change-status-code.md. MR #13791 by @NavesSapnis. -
🌐 Add Persian translation fordocs/fa/docs/learn/index.md. MR #13518 by @Mohammad222PR. -
🌐 Add Korean translation fordocs/ko/docs/advanced/sub-applications.md. MR #4543 by @NinaHwang. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/schema-extra-example.md. MR #13769 by @valentinDruzhinin. -
✏️ Remove redundant words in docs/zh/docs/python-types.md. MR #13774 by @CharleeWa. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/query-param-models.md. MR #13748 by @valentinDruzhinin. -
🌐 Add Bengali translation fordocs/bn/docs/environment-variables.md. MR #13629 by @SakibSibly. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/query-params-str-validations.mdpage. MR #13546 by @valentinDruzhinin. -
🌐 Add Russian translation fordocs/ru/docs/tutorial/cookie-param-models.md. MR #13616 by @EgorOnishchuk. -
🌐 Add Korean translation fordocs/ko/docs/tutorial/extra-models.md. MR #13063 by @timothy-jeong. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/path-params-numeric-validations.mdpage. MR #13548 by @valentinDruzhinin. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/middleware.mdpage. MR #13520 by @valentinDruzhinin. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/background-tasks.mdpage. MR #13502 by @valentinDruzhinin. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/cors.mdpage. MR #13519 by @valentinDruzhinin. -
🌐 Update Korean translation fordocs/ko/docs/advanced/events.md. MR #13487 by @bom1215. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/handling-errors.mdpage. MR #13420 by @valentinDruzhinin. -
🌐 Add Russian translation fordocs/ru/docs/tutorial/request-form-models.md. MR #13552 by @EgorOnishchuk. -
📝 Fix internal anchor link in Spanish deployment docs. MR #13737 by @fabianfalon. -
🌐 Update Korean translation fordocs/ko/docs/virtual-environments.md. MR #13630 by @sungchan1. -
🌐 Add Russian translation fordocs/ru/docs/tutorial/header-param-models.md. MR #13526 by @minaton-ru. -
🌐 Update Chinese translation fordocs/zh/docs/tutorial/index.md. MR #13374 by @Zhongheng-Cheng. -
🌐 Update Chinese translation fordocs/zh/docs/deployment/manually.md. MR #13324 by @Zhongheng-Cheng. -
🌐 Update Chinese translation fordocs/zh/docs/deployment/server-workers.md. MR #13292 by @Zhongheng-Cheng. -
🌐 Update Chinese translation fordocs/zh/docs/tutorial/first-steps.md. MR #13348 by @Zhongheng-Cheng.
Internal
-
🔨 Resolve Pydantic deprecation warnings in internal script. MR #13696 by @emmanuel-ferdman. -
🔧 Update sponsors: remove Porter. MR #13783 by @tiangolo. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13781 by @pre-commit-ci[bot]. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13757 by @pre-commit-ci[bot]. -
⬆️ Bump griffe-typingdoc from 0.2.7 to 0.2.8. MR #13751 by @dependabot[bot]. -
🍱 Update sponsors: Dribia badge size. MR #13773 by @tiangolo. -
🔧 Update sponsors: add Dribia. MR #13771 by @tiangolo. -
⬆️ Bump typer from 0.15.3 to 0.16.0. MR #13752 by @dependabot[bot]. -
👥 Update FastAPI GitHub topic repositories. MR #13754 by @tiangolo. -
👥 Update FastAPI People - Sponsors. MR #13750 by @tiangolo. -
👥 Update FastAPI People - Contributors and Translators. MR #13749 by @tiangolo. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13736 by @pre-commit-ci[bot]. -
🔧 Update sponsors: Add InterviewPal. MR #13728 by @tiangolo. -
🔧 Remove Google Analytics. MR #13727 by @tiangolo. -
🔧 Update sponsors: remove MongoDB. MR #13725 by @tiangolo. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13711 by @pre-commit-ci[bot]. -
🔧 Update sponsors: add Subtotal. MR #13701 by @tiangolo. -
🔧 Update sponsors: remove deepset / Haystack. MR #13700 by @tiangolo. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13688 by @pre-commit-ci[bot]. -
👥 Update FastAPI People - Experts. MR #13671 by @tiangolo. -
⬆️ Bump typer from 0.12.5 to 0.15.3. MR #13666 by @dependabot[bot]. -
⬆️ Bump sqlmodel from 0.0.23 to 0.0.24. MR #13665 by @dependabot[bot]. -
🔧 Update Sponsors: Zuplo logo and alt text. MR #13645 by @martyndavies. -
👥 Update FastAPI GitHub topic repositories. MR #13667 by @tiangolo. -
🔧 Update links for LinkedIn and bottom. MR #13669 by @tiangolo. -
🔧 Update sponsors: remove Bump.sh and Coherence. MR #13668 by @tiangolo. -
👥 Update FastAPI People - Sponsors. MR #13664 by @tiangolo. -
👥 Update FastAPI People - Contributors and Translators. MR #13662 by @tiangolo. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13656 by @pre-commit-ci[bot]. -
✅ Useinline-snapshotto support different Pydantic versions in the test suite. MR #12534 by @15r10nk. -
⬆️ Bump astral-sh/setup-uv from 5 to 6. MR #13648 by @dependabot[bot]. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13634 by @pre-commit-ci[bot]. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13619 by @pre-commit-ci[bot]. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #13594 by @pre-commit-ci[bot]. -
👥 Update FastAPI People - Experts. MR #13568 by @tiangolo. -
👥 Update FastAPI GitHub topic repositories. MR #13565 by @tiangolo. -
👥 Update FastAPI People - Sponsors. MR #13559 by @tiangolo. -
👥 Update FastAPI People - Contributors and Translators. MR #13558 by @tiangolo. -
⬆️ Bump dirty-equals from 0.8.0 to 0.9.0. MR #13561 by @dependabot[bot]. -
🔧 Clean updocs/en/mkdocs.ymlconfiguration file. MR #13542 by @svlandeg. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #12986 by @pre-commit-ci[bot].
v0.115.12
Fixes
-
🐛 Fixconvert_underscores=Falsefor header Pydantic models. MR #13515 by @tiangolo.
Docs
-
📝 Updatedocs/en/docs/tutorial/middleware.md. MR #13444 by @Rishat-F. -
👥 Update FastAPI People - Experts. MR #13493 by @tiangolo.
Translations
-
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/metadata.mdpage. MR #13459 by @valentinDruzhinin. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/response-status-code.mdpage. MR #13462 by @valentinDruzhinin. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/cookie-param-models.mdpage. MR #13460 by @valentinDruzhinin. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/header-param-models.mdpage. MR #13461 by @valentinDruzhinin. -
🌐 Add Japanese translation fordocs/ja/docs/virtual-environments.md. MR #13304 by @k94-ishi. -
🌐 Add Korean translation fordocs/ko/docs/tutorial/security/oauth2-jwt.md. MR #13333 by @yes0ng. -
🌐 Add Vietnamese translation fordocs/vi/docs/deployment/cloud.md. MR #13407 by @ptt3199.
Internal
-
⬆️ Bump pydantic-ai from 0.0.15 to 0.0.30. MR #13438 by @dependabot[bot]. -
⬆️ Bump sqlmodel from 0.0.22 to 0.0.23. MR #13437 by @dependabot[bot]. -
⬆️ Bump black from 24.10.0 to 25.1.0. MR #13436 by @dependabot[bot]. -
⬆️ Bump ruff to 0.9.4. MR #13299 by @dependabot[bot]. -
🔧 Update sponsors: pause TestDriven. MR #13446 by @tiangolo.
v0.115.11
Fixes
-
🐛 Add docs examples and tests (support) forAnnotatedcustom validations, likeAfterValidator, revert #13440. MR #13442 by @tiangolo.
Translations
Internal
-
👥 Update FastAPI GitHub topic repositories. MR #13439 by @tiangolo. -
👥 Update FastAPI People - Contributors and Translators. MR #13432 by @tiangolo. -
👥 Update FastAPI People - Sponsors. MR #13433 by @tiangolo.
v0.115.10
Fixes
Upgrades
-
⬆️ Bump Starlette to allow up to 0.46.0:>=0.40.0,<0.47.0. MR #13426 by @musicinmybrain.
Translations
-
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/debugging.md. MR #13370 by @valentinDruzhinin. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/query-params.md. MR #13362 by @valentinDruzhinin. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/path-params.md. MR #13354 by @valentinDruzhinin. -
🌐 Add Japanese translation fordocs/ja/docs/tutorial/cookie-param-models.md. MR #13330 by @k94-ishi. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/body-multiple-params.md. MR #13408 by @valentinDruzhinin. -
🌐 Add Japanese translation fordocs/ja/docs/tutorial/query-param-models.md. MR #13323 by @k94-ishi. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/body-nested-models.md. MR #13409 by @valentinDruzhinin. -
🌐 Add Vietnamese translation fordocs/vi/docs/deployment/versions.md. MR #13406 by @ptt3199. -
🌐 Add Vietnamese translation fordocs/vi/docs/deployment/index.md. MR #13405 by @ptt3199. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/request-forms.md. MR #13383 by @valentinDruzhinin. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/testing.md. MR #13371 by @valentinDruzhinin.
v0.115.9
Fixes
-
🐛 Ensure thatHTTPDigestonly raises an exception whenauto_error is True. MR #2939 by @arthurio.
Refactors
-
✅ Simplify tests forquery_params_str_validations. MR #13218 by @alv2017. -
✅ Simplify tests forapp_testing. MR #13220 by @alv2017. -
✅ Simplify tests fordependency_testing. MR #13223 by @alv2017.
Docs
-
🍱 Update sponsors: CodeRabbit logo. MR #13424 by @tiangolo. -
🩺 Unify the badges across all tutorial translations. MR #13329 by @svlandeg. -
📝 Fix typos in virtual environments documentation. MR #13396 by @bullet-ant. -
🐛 Fix issue with Swagger theme change example in the official tutorial. MR #13289 by @Zerohertz. -
📝 Add more precise description of HTTP status code range in docs. MR #13347 by @DanielYang59. -
🔥 Remove manual type annotations in JWT tutorial to avoid typing expectations (JWT doesn't provide more types). MR #13378 by @tiangolo. -
📝 Update docs for Query Params and String Validations, remove obsolete Ellipsis docs (...). MR #13377 by @tiangolo. -
✏️ Remove duplicate title in docsbody-multiple-params. MR #13345 by @DanielYang59. -
📝 Fix test badge. MR #13313 by @esadek.
Translations
-
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/header-params.md. MR #13381 by @valentinDruzhinin. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/request-files.md. MR #13395 by @valentinDruzhinin. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/request-form-models.md. MR #13384 by @valentinDruzhinin. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/request-forms-and-files.md. MR #13386 by @valentinDruzhinin. -
🌐 Update Korean translation fordocs/ko/docs/help-fastapi.md. MR #13262 by @Zerohertz. -
🌐 Add Korean translation fordocs/ko/docs/advanced/custom-response.md. MR #13265 by @11kkw. -
🌐 Update Korean translation fordocs/ko/docs/tutorial/security/simple-oauth2.md. MR #13335 by @yes0ng. -
🌐 Add Russian translation fordocs/ru/docs/advanced/response-cookies.md. MR #13327 by @Stepakinoyan. -
🌐 Add Vietnamese translation fordocs/vi/docs/tutorial/static-files.md. MR #11291 by @ptt3199. -
🌐 Add Korean translation fordocs/ko/docs/tutorial/dependencies/dependencies-with-yield.md. MR #13257 by @11kkw. -
🌐 Add Vietnamese translation fordocs/vi/docs/virtual-environments.md. MR #13282 by @ptt3199. -
🌐 Add Ukrainian translation fordocs/uk/docs/tutorial/static-files.md. MR #13285 by @valentinDruzhinin. -
🌐 Add Vietnamese translation fordocs/vi/docs/environment-variables.md. MR #13287 by @ptt3199. -
🌐 Add Vietnamese translation fordocs/vi/docs/fastapi-cli.md. MR #13294 by @ptt3199. -
🌐 Add Ukrainian translation fordocs/uk/docs/features.md. MR #13308 by @valentinDruzhinin. -
🌐 Add Ukrainian translation fordocs/uk/docs/learn/index.md. MR #13306 by @valentinDruzhinin. -
🌐 Update Portuguese Translation fordocs/pt/docs/deployment/https.md. MR #13317 by @Joao-Pedro-P-Holanda. -
🌐 Update Portuguese Translation fordocs/pt/docs/index.md. MR #13328 by @ceb10n. -
🌐 Add Russian translation fordocs/ru/docs/advanced/websockets.md. MR #13279 by @Rishat-F.
Internal
-
✅ Fix a minor bug in the testtests/test_modules_same_name_body/test_main.py. MR #13411 by @alv2017. -
👷 Usewrangler-actionv3. MR #13415 by @joakimnordling. -
🔧 Update sponsors: add CodeRabbit. MR #13402 by @tiangolo. -
🔧 Update team: Add Ludovico. MR #13390 by @tiangolo. -
🔧 Update sponsors: Add LambdaTest. MR #13389 by @tiangolo. -
⬆️ Bump cloudflare/wrangler-action from 3.13 to 3.14. MR #13350 by @dependabot[bot]. -
⬆️ Bump mkdocs-material from 9.5.18 to 9.6.1. MR #13301 by @dependabot[bot]. -
⬆️ Bump pillow from 11.0.0 to 11.1.0. MR #13300 by @dependabot[bot]. -
👥 Update FastAPI People - Sponsors. MR #13295 by @tiangolo. -
👥 Update FastAPI People - Experts. MR #13303 by @tiangolo. -
👥 Update FastAPI GitHub topic repositories. MR #13302 by @tiangolo. -
👥 Update FastAPI People - Contributors and Translators. MR #13293 by @tiangolo. -
⬆️ Bump inline-snapshot from 0.18.1 to 0.19.3. MR #13298 by @dependabot[bot]. -
🔧 Update sponsors, add Permit. MR #13288 by @tiangolo.
v0.115.8
Fixes
-
🐛 FixOAuth2PasswordRequestFormandOAuth2PasswordRequestFormStrictfixedgrant_type"password" RegEx. MR #9783 by @skarfie123.
Refactors
-
✅ Simplify tests for body_multiple_params . MR #13237 by @alejsdev. -
♻️ Move duplicated code portion to a static method in theAPIKeyBasesuper class. MR #3142 by @ShahriyarR. -
✅ Simplify tests for request_files. MR #13182 by @alejsdev.
Docs
-
📝 Change the word "unwrap" to "unpack" indocs/en/docs/tutorial/extra-models.md. MR #13061 by @timothy-jeong. -
📝 Update Request Body'stutorial002to deal withtax=0case. MR #13230 by @togogh. -
👥 Update FastAPI People - Experts. MR #13269 by @tiangolo.
Translations
-
🌐 Add Japanese translation fordocs/ja/docs/environment-variables.md. MR #13226 by @k94-ishi. -
🌐 Add Russian translation fordocs/ru/docs/advanced/async-tests.md. MR #13227 by @Rishat-F. -
🌐 Update Russian translation fordocs/ru/docs/tutorial/dependencies/dependencies-in-path-operation-decorators.md. MR #13252 by @Rishat-F. -
🌐 Add Russian translation fordocs/ru/docs/tutorial/bigger-applications.md. MR #13154 by @alv2017.
Internal
-
⬆️ Add support for Python 3.13. MR #13274 by @tiangolo. -
⬆️ Upgrade AnyIO max version for tests, new range:>=3.2.1,<5.0.0. MR #13273 by @tiangolo. -
🔧 Update Sponsors badges. MR #13271 by @tiangolo. -
♻️ Fixnotify_translations.pyempty env var handling for MR label events vs workflow_dispatch. MR #13272 by @tiangolo. -
♻️ Refactor and movescripts/notify_translations.py, no need for a custom GitHub Action. MR #13270 by @tiangolo. -
🔨 Update FastAPI People Experts script, refactor and optimize data fetching to handle rate limits. MR #13267 by @tiangolo. -
⬆️ Bump pypa/gh-action-pypi-publish from 1.12.3 to 1.12.4. MR #13251 by @dependabot[bot].
v0.115.7
Upgrades
-
⬆️ Upgradepython-multipartto >=0.0.18. MR #13219 by @DanielKusyDev. -
⬆️ Bump Starlette to allow up to 0.45.0:>=0.40.0,<0.46.0. MR #13117 by @Kludex. -
⬆️ Upgradejinja2to >=3.1.5. MR #13194 by @DanielKusyDev.
Refactors
-
✅ Simplify tests for websockets. MR #13202 by @alejsdev. -
✅ Simplify tests for request_form_models . MR #13183 by @alejsdev. -
✅ Simplify tests for separate_openapi_schemas. MR #13201 by @alejsdev. -
✅ Simplify tests for security. MR #13200 by @alejsdev. -
✅ Simplify tests for schema_extra_example. MR #13197 by @alejsdev. -
✅ Simplify tests for request_model. MR #13195 by @alejsdev. -
✅ Simplify tests for request_forms_and_files. MR #13185 by @alejsdev. -
✅ Simplify tests for request_forms. MR #13184 by @alejsdev. -
✅ Simplify tests for path_query_params. MR #13181 by @alejsdev. -
✅ Simplify tests for path_operation_configurations. MR #13180 by @alejsdev. -
✅ Simplify tests for header_params. MR #13179 by @alejsdev. -
✅ Simplify tests for extra_models. MR #13178 by @alejsdev. -
✅ Simplify tests for extra_data_types. MR #13177 by @alejsdev. -
✅ Simplify tests for cookie_params. MR #13176 by @alejsdev. -
✅ Simplify tests for dependencies. MR #13174 by @alejsdev. -
✅ Simplify tests for body_updates. MR #13172 by @alejsdev. -
✅ Simplify tests for body_nested_models. MR #13171 by @alejsdev. -
✅ Simplify tests for body_multiple_params. MR #13170 by @alejsdev. -
✅ Simplify tests for body_fields. MR #13169 by @alejsdev. -
✅ Simplify tests for body. MR #13168 by @alejsdev. -
✅ Simplify tests for bigger_applications. MR #13167 by @alejsdev. -
✅ Simplify tests for background_tasks. MR #13166 by @alejsdev. -
✅ Simplify tests for additional_status_codes. MR #13149 by @tiangolo.
Docs
-
✏️ Update Strawberry integration docs. MR #13155 by @kinuax. -
🔥 Remove unused Peewee tutorial files. MR #13158 by @alejsdev. -
📝 Update image in body-nested-model docs. MR #11063 by @untilhamza. -
📝 Updatefastapi-cliUI examples in docs. MR #13107 by @Zhongheng-Cheng. -
👷 Add new GitHub Action to update contributors, translators, and translation reviewers. MR #13136 by @tiangolo. -
✏️ Fix typo indocs/en/docs/virtual-environments.md. MR #13124 by @tiangolo. -
✏️ Fix error indocs/en/docs/contributing.md. MR #12899 by @kingsubin. -
📝 Minor corrections indocs/en/docs/tutorial/sql-databases.md. MR #13081 by @alv2017. -
📝 Update includes indocs/ru/docs/tutorial/query-param-models.md. MR #12994 by @alejsdev. -
✏️ Fix typo in README installation instructions. MR #13011 by @dave-hay. -
📝 Update docs forfastapi-cli. MR #13031 by @tiangolo.
Translations
-
🌐 Update Portuguese Translation fordocs/pt/docs/tutorial/request-forms.md. MR #13216 by @Joao-Pedro-P-Holanda. -
🌐 Update Portuguese translation fordocs/pt/docs/advanced/settings.md. MR #13209 by @ceb10n. -
🌐 Add Portuguese translation fordocs/pt/docs/tutorial/security/oauth2-jwt.md. MR #13205 by @ceb10n. -
🌐 Add Indonesian translation fordocs/id/docs/index.md. MR #13191 by @gerry-sabar. -
🌐 Add Indonesian translation fordocs/id/docs/tutorial/static-files.md. MR #13092 by @guspan-tanadi. -
🌐 Add Portuguese translation fordocs/pt/docs/tutorial/security/get-current-user.md. MR #13188 by @ceb10n. -
🌐 Remove Wrong Portuguese translations location fordocs/pt/docs/advanced/benchmarks.md. MR #13187 by @ceb10n. -
🌐 Update Portuguese translations. MR #13156 by @nillvitor. -
🌐 Update Russian translation fordocs/ru/docs/tutorial/security/first-steps.md. MR #13159 by @Yarous. -
✏️ Delete unnecessary backspace indocs/ja/docs/tutorial/path-params-numeric-validations.md. MR #12238 by @FakeDocument. -
🌐 Update Chinese translation fordocs/zh/docs/fastapi-cli.md. MR #13102 by @Zhongheng-Cheng. -
🌐 Add new Spanish translations for all docs with new LLM-assisted system using PydanticAI. MR #13122 by @tiangolo. -
🌐 Update existing Spanish translations using the new LLM-assisted system using PydanticAI. MR #13118 by @tiangolo. -
🌐 Update Chinese translation fordocs/zh/docs/advanced/security/oauth2-scopes.md. MR #13110 by @ChenPu2002. -
🌐 Add Indonesian translation fordocs/id/docs/tutorial/path-params.md. MR #13086 by @gerry-sabar. -
🌐 Add Korean translation fordocs/ko/docs/tutorial/sql-databases.md. MR #13093 by @GeumBinLee. -
🌐 Update Chinese translation fordocs/zh/docs/async.md. MR #13095 by @Zhongheng-Cheng. -
🌐 Add Chinese translation fordocs/zh/docs/advanced/openapi-webhooks.md. MR #13091 by @Zhongheng-Cheng. -
🌐 Add Chinese translation fordocs/zh/docs/advanced/async-tests.md. MR #13074 by @Zhongheng-Cheng. -
🌐 Add Ukrainian translation fordocs/uk/docs/fastapi-cli.md. MR #13020 by @ykertytsky. -
🌐 Add Chinese translation fordocs/zh/docs/advanced/events.md. MR #12512 by @ZhibangYue. -
🌐 Add Russian translation for/docs/ru/docs/tutorial/sql-databases.md. MR #13079 by @alv2017. -
🌐 Update Chinese translation fordocs/zh/docs/advanced/testing-dependencies.md. MR #13066 by @Zhongheng-Cheng. -
🌐 Update Traditional Chinese translation fordocs/zh-hant/docs/tutorial/index.md. MR #13075 by @codingjenny. -
🌐 Add Chinese translation fordocs/zh/docs/tutorial/sql-databases.md. MR #13051 by @Zhongheng-Cheng. -
🌐 Update Chinese translation fordocs/zh/docs/tutorial/query-params-str-validations.md. MR #12928 by @Vincy1230. -
🌐 Add Chinese translation fordocs/zh/docs/tutorial/header-param-models.md. MR #13040 by @Zhongheng-Cheng. -
🌐 Update Chinese translation fordocs/zh/docs/tutorial/path-params.md. MR #12926 by @Vincy1230. -
🌐 Update Chinese translation fordocs/zh/docs/tutorial/first-steps.md. MR #12923 by @Vincy1230. -
🌐 Update Russian translation fordocs/ru/docs/deployment/docker.md. MR #13048 by @anklav24. -
🌐 Add Portuguese translation fordocs/pt/docs/advanced/generate-clients.md. MR #13030 by @vitumenezes. -
🌐 Add Indonesian translation fordocs/id/docs/tutorial/first-steps.md. MR #13042 by @gerry-sabar. -
🌐 Add Chinese translation fordocs/zh/docs/tutorial/cookie-param-models.md. MR #13038 by @Zhongheng-Cheng. -
🌐 Add Chinese translation fordocs/zh/docs/tutorial/request-form-models.md. MR #13045 by @Zhongheng-Cheng. -
🌐 Add Russian translation fordocs/ru/docs/virtual-environments.md. MR #13026 by @alv2017. -
🌐 Add Korean translation fordocs/ko/docs/tutorial/testing.md. MR #12968 by @jts8257. -
🌐 Add Korean translation fordocs/ko/docs/advanced/async-test.md. MR #12918 by @icehongssii. -
🌐 Add Russian translation fordocs/ru/docs/tutorial/security/oauth2-jwt.md. MR #10601 by @AlertRED. -
🌐 Add Russian translation fordocs/ru/docs/tutorial/security/simple-oauth2.md. MR #10599 by @AlertRED. -
🌐 Add Russian translation fordocs/ru/docs/tutorial/security/get-current-user.md. MR #10594 by @AlertRED. -
🌐 Add Traditional Chinese translation fordocs/zh-hant/docs/features.md. MR #12441 by @codingjenny. -
🌐 Add Traditional Chinese translation fordocs/zh-hant/docs/virtual-environments.md. MR #12791 by @Vincy1230. -
🌐 Add Korean translation fordocs/ko/docs/advanced/templates.md. MR #12726 by @Heumhub. -
🌐 Add Russian translation fordocs/ru/docs/fastapi-cli.md. MR #13041 by @alv2017. -
🌐 Add Korean translation fordocs/ko/docs/tutorial/cookie-param-models.md. MR #13000 by @hard-coders. -
🌐 Add Korean translation fordocs/ko/docs/tutorial/header-param-models.md. MR #13001 by @hard-coders. -
🌐 Add Korean translation fordocs/ko/docs/tutorial/request-form-models.md. MR #13002 by @hard-coders. -
🌐 Add Korean translation fordocs/ko/docs/tutorial/request-forms.md. MR #13003 by @hard-coders. -
🌐 Add Korean translation fordocs/ko/docs/resources/index.md. MR #13004 by @hard-coders. -
🌐 Add Korean translation fordocs/ko/docs/how-to/configure-swagger-ui.md. MR #12898 by @nahyunkeem. -
🌐 Add Korean translation todocs/ko/docs/advanced/additional-status-codes.md. MR #12715 by @nahyunkeem. -
🌐 Add Traditional Chinese translation fordocs/zh-hant/docs/tutorial/first-steps.md. MR #12467 by @codingjenny.
Internal
-
🔧 Add Pydantic 2 trove classifier. MR #13199 by @johnthagen. -
👥 Update FastAPI People - Sponsors. MR #13231 by @tiangolo. -
👷 Refactor FastAPI People Sponsors to use 2 tokens. MR #13228 by @tiangolo. -
👷 Update token for FastAPI People - Sponsors. MR #13225 by @tiangolo. -
👷 Add independent CI automation for FastAPI People - Sponsors. MR #13221 by @tiangolo. -
👷 Add retries to Smokeshow. MR #13151 by @tiangolo. -
🔧 Update Speakeasy sponsor graphic. MR #13147 by @chailandau. -
👥 Update FastAPI GitHub topic repositories. MR #13146 by @tiangolo. -
👷♀️ Add script for GitHub Topic Repositories and update External Links. MR #13135 by @alejsdev. -
👥 Update FastAPI People - Contributors and Translators. MR #13145 by @tiangolo. -
⬆️ Bump markdown-include-variants from 0.0.3 to 0.0.4. MR #13129 by @dependabot[bot]. -
⬆️ Bump inline-snapshot from 0.14.0 to 0.18.1. MR #13132 by @dependabot[bot]. -
⬆️ Bump mkdocs-macros-plugin from 1.0.5 to 1.3.7. MR #13133 by @dependabot[bot]. -
🔨 Add internal scripts to generate language translations with PydanticAI, include Spanish prompt. MR #13123 by @tiangolo. -
⬆️ Bump astral-sh/setup-uv from 4 to 5. MR #13096 by @dependabot[bot]. -
🔧 Update sponsors: rename CryptAPI to BlockBee. MR #13078 by @tiangolo. -
⬆️ Bump pypa/gh-action-pypi-publish from 1.12.2 to 1.12.3. MR #13055 by @dependabot[bot]. -
⬆️ Bump types-ujson from 5.7.0.1 to 5.10.0.20240515. MR #13018 by @dependabot[bot]. -
⬆️ Bump black from 24.3.0 to 24.10.0. MR #13014 by @dependabot[bot]. -
⬆️ Bump inline-snapshot from 0.13.0 to 0.14.0. MR #13017 by @dependabot[bot]. -
⬆️ Bump dirty-equals from 0.6.0 to 0.8.0. MR #13015 by @dependabot[bot]. -
⬆️ Bump cloudflare/wrangler-action from 3.12 to 3.13. MR #12996 by @dependabot[bot]. -
⬆️ Bump astral-sh/setup-uv from 3 to 4. MR #12982 by @dependabot[bot]. -
🔧 Remove duplicate actions/checkout innotify-translations.yml. MR #12915 by @tinyboxvk. -
🔧 Update team members. MR #13033 by @tiangolo. -
📝 Update sponsors: remove Codacy. MR #13032 by @tiangolo.
v0.115.6
Fixes
-
🐛 Preserve traceback when an exception is raised in sync dependency withyield. MR #5823 by @sombek.
Refactors
Docs
-
📝 Update includes format in docs with an automated script. MR #12950 by @tiangolo. -
📝 Update includes fordocs/de/docs/advanced/using-request-directly.md. MR #12685 by @alissadb. -
📝 Update includes fordocs/de/docs/how-to/conditional-openapi.md. MR #12689 by @alissadb.
Translations
-
🌐 Add Traditional Chinese translation fordocs/zh-hant/docs/async.md. MR #12990 by @ILoveSorasakiHina. -
🌐 Add Traditional Chinese translation fordocs/zh-hant/docs/tutorial/query-param-models.md. MR #12932 by @Vincy1230. -
🌐 Add Korean translation fordocs/ko/docs/advanced/testing-dependencies.md. MR #12992 by @Limsunoh. -
🌐 Add Korean translation fordocs/ko/docs/advanced/websockets.md. MR #12991 by @kwang1215. -
🌐 Add Portuguese translation fordocs/pt/docs/tutorial/response-model.md. MR #12933 by @AndreBBM. -
🌐 Add Korean translation fordocs/ko/docs/advanced/middlewares.md. MR #12753 by @nahyunkeem. -
🌐 Add Korean translation fordocs/ko/docs/advanced/openapi-webhooks.md. MR #12752 by @saeye. -
🌐 Add Chinese translation fordocs/zh/docs/tutorial/query-param-models.md. MR #12931 by @Vincy1230. -
🌐 Add Russian translation fordocs/ru/docs/tutorial/query-param-models.md. MR #12445 by @gitgernit. -
🌐 Add Korean translation fordocs/ko/docs/tutorial/query-param-models.md. MR #12940 by @jts8257. -
🔥 Remove obsolete tutorial translation to Chinese fordocs/zh/docs/tutorial/sql-databases.md, it references files that are no longer on the repo. MR #12949 by @tiangolo.
Internal
-
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #12954 by @pre-commit-ci[bot].
v0.115.5
Refactors
-
♻️ Update internal checks to support Pydantic 2.10. MR #12914 by @tiangolo.
Docs
-
📝 Update includes fordocs/en/docs/tutorial/body.md. MR #12757 by @gsheni. -
📝 Update includes indocs/en/docs/advanced/testing-dependencies.md. MR #12647 by @AyushSinghal1794. -
📝 Update includes fordocs/en/docs/tutorial/metadata.md. MR #12773 by @Nimitha-jagadeesha. -
📝 Updatedocs/en/docs/tutorial/dependencies/dependencies-with-yield.md. MR #12045 by @xuvjso. -
📝 Update includes fordocs/en/docs/tutorial/dependencies/global-dependencies.md. MR #12653 by @vishnuvskvkl. -
📝 Update includes fordocs/en/docs/tutorial/body-updates.md. MR #12712 by @davioc. -
📝 Remove mention of Celery in the project generators. MR #12742 by @david-caro. -
📝 Update includes indocs/en/docs/tutorial/header-param-models.md. MR #12814 by @zhaohan-dong. -
📝 Updatecontributing.mddocs, include note to not translate this page. MR #12841 by @tiangolo. -
📝 Update includes indocs/en/docs/tutorial/request-forms.md. MR #12648 by @vishnuvskvkl. -
📝 Update includes indocs/en/docs/tutorial/request-form-models.md. MR #12649 by @vishnuvskvkl. -
📝 Update includes indocs/en/docs/tutorial/security/oauth2-jwt.md. MR #12650 by @OCE1960. -
📝 Update includes indocs/vi/docs/tutorial/first-steps.md. MR #12754 by @MxPy. -
📝 Update includes fordocs/pt/docs/advanced/wsgi.md. MR #12769 by @Nimitha-jagadeesha. -
📝 Update includes fordocs/en/docs/tutorial/dependencies/dependencies-in-path-operation-decorators.md. MR #12815 by @handabaldeep. -
📝 Update includes fordocs/en/docs/tutorial/dependencies/classes-as-dependencies.md. MR #12813 by @handabaldeep. -
✏️ Fix error indocs/en/docs/tutorial/middleware.md. MR #12819 by @alejsdev. -
📝 Update includes fordocs/en/docs/tutorial/security/get-current-user.md. MR #12645 by @OCE1960. -
📝 Update includes fordocs/en/docs/tutorial/security/first-steps.md. MR #12643 by @OCE1960. -
📝 Update includes indocs/de/docs/advanced/additional-responses.md. MR #12821 by @zhaohan-dong. -
📝 Update includes indocs/en/docs/advanced/generate-clients.md. MR #12642 by @AyushSinghal1794. -
📝 Fix admonition double quotes with new syntax. MR #12835 by @tiangolo. -
📝 Update includes indocs/zh/docs/advanced/additional-responses.md. MR #12828 by @zhaohan-dong. -
📝 Update includes indocs/en/docs/tutorial/path-params-numeric-validations.md. MR #12825 by @zhaohan-dong. -
📝 Update includes fordocs/en/docs/advanced/testing-websockets.md. MR #12761 by @hamidrasti. -
📝 Update includes fordocs/en/docs/advanced/using-request-directly.md. MR #12760 by @hamidrasti. -
📝 Update includes fordocs/advanced/wsgi.md. MR #12758 by @hamidrasti. -
📝 Update includes indocs/de/docs/tutorial/middleware.md. MR #12729 by @paintdog. -
📝 Update includes fordocs/en/docs/tutorial/schema-extra-example.md. MR #12822 by @tiangolo. -
📝 Update includes indocs/fr/docs/advanced/additional-responses.md. MR #12634 by @fegmorte. -
📝 Update includes indocs/fr/docs/advanced/path-operation-advanced-configuration.md. MR #12633 by @kantandane. -
📝 Update includes indocs/fr/docs/advanced/response-directly.md. MR #12632 by @kantandane. -
📝 Update includes fordocs/en/docs/tutorial/header-params.md. MR #12640 by @vishnuvskvkl. -
📝 Update includes indocs/en/docs/tutorial/cookie-param-models.md. MR #12639 by @vishnuvskvkl. -
📝 Update includes fordocs/en/docs/tutorial/extra-models.md. MR #12638 by @vishnuvskvkl. -
📝 Update includes fordocs/en/docs/tutorial/cors.md. MR #12637 by @vishnuvskvkl. -
📝 Update includes fordocs/en/docs/tutorial/dependencies/sub-dependencies.md. MR #12810 by @handabaldeep. -
📝 Update includes indocs/en/docs/tutorial/body-nested-models.md. MR #12812 by @zhaohan-dong. -
📝 Update includes indocs/en/docs/tutorial/path-operation-configuration.md. MR #12809 by @AlexWendland. -
📝 Update includes indocs/en/docs/tutorial/request-files.md. MR #12818 by @zhaohan-dong. -
📝 Update includes fordocs/en/docs/tutorial/query-param-models.md. MR #12817 by @handabaldeep. -
📝 Update includes indocs/en/docs/tutorial/path-params.md. MR #12811 by @AlexWendland. -
📝 Update includes indocs/en/docs/tutorial/response-model.md. MR #12621 by @kantandane. -
📝 Update includes indocs/en/docs/advanced/websockets.md. MR #12606 by @vishnuvskvkl. -
📝 Updates include fordocs/en/docs/tutorial/cookie-params.md. MR #12808 by @handabaldeep. -
📝 Update includes indocs/en/docs/tutorial/middleware.md. MR #12807 by @AlexWendland. -
📝 Update includes indocs/en/docs/advanced/sub-applications.md. MR #12806 by @zhaohan-dong. -
📝 Update includes indocs/en/docs/advanced/response-headers.md. MR #12805 by @zhaohan-dong. -
📝 Update includes indocs/fr/docs/tutorial/first-steps.md. MR #12594 by @kantandane. -
📝 Update includes indocs/en/docs/advanced/response-cookies.md. MR #12804 by @zhaohan-dong. -
📝 Update includes indocs/en/docs/advanced/path-operation-advanced-configuration.md. MR #12802 by @zhaohan-dong. -
📝 Update includes fordocs/en/docs/advanced/response-directly.md. MR #12803 by @handabaldeep. -
📝 Update includes indocs/zh/docs/tutorial/background-tasks.md. MR #12798 by @zhaohan-dong. -
📝 Update includes fordocs/de/docs/tutorial/body-multiple-params.md. MR #12699 by @alissadb. -
📝 Update includes indocs/em/docs/tutorial/body-updates.md. MR #12799 by @AlexWendland. -
📝 Update includesdocs/en/docs/advanced/response-change-status-code.md. MR #12801 by @handabaldeep. -
📝 Update includesdocs/en/docs/advanced/openapi-callbacks.md. MR #12800 by @handabaldeep. -
📝 Update includes indocs/fr/docs/tutorial/body-multiple-params.md. MR #12598 by @kantandane. -
📝 Update includes indocs/en/docs/tutorial/body-multiple-params.md. MR #12593 by @Tashanam-Shahbaz. -
📝 Update includes indocs/pt/docs/tutorial/background-tasks.md. MR #12736 by @bhunao. -
📝 Update includes fordocs/en/docs/advanced/custom-response.md. MR #12797 by @handabaldeep. -
📝 Update includes fordocs/pt/docs/python-types.md. MR #12671 by @ceb10n. -
📝 Update includes fordocs/de/docs/python-types.md. MR #12660 by @alissadb. -
📝 Update includes fordocs/de/docs/advanced/dataclasses.md. MR #12658 by @alissadb. -
📝 Update includes indocs/fr/docs/tutorial/path-params.md. MR #12592 by @kantandane. -
📝 Update includes fordocs/de/docs/how-to/configure-swagger-ui.md. MR #12690 by @alissadb. -
📝 Update includes indocs/en/docs/advanced/security/oauth2-scopes.md. MR #12572 by @krishnamadhavan. -
📝 Update includes fordocs/en/docs/how-to/conditional-openapi.md. MR #12624 by @rabinlamadong. -
📝 Update includes indocs/en/docs/tutorial/dependencies/index.md. MR #12615 by @bharara. -
📝 Update includes indocs/en/docs/tutorial/response-status-code.md. MR #12620 by @kantandane. -
📝 Update includes indocs/en/docs/how-to/custom-docs-ui-assets.md. MR #12623 by @rabinlamadong. -
📝 Update includes indocs/en/docs/advanced/openapi-webhooks.md. MR #12605 by @salmantec. -
📝 Update includes indocs/en/docs/advanced/events.md. MR #12604 by @salmantec. -
📝 Update includes indocs/en/docs/advanced/dataclasses.md. MR #12603 by @salmantec. -
📝 Update includes indocs/es/docs/tutorial/cookie-params.md. MR #12602 by @antonyare93. -
📝 Update includes indocs/fr/docs/tutorial/path-params-numeric-validations.md. MR #12601 by @kantandane. -
📝 Update includes indocs/fr/docs/tutorial/background-tasks.md. MR #12600 by @kantandane. -
📝 Update includes indocs/en/docs/tutorial/encoder.md. MR #12597 by @tonyjly. -
📝 Update includes indocs/en/docs/how-to/custom-docs-ui-assets.md. MR #12557 by @philipokiokio. -
🎨 Adjust spacing. MR #12635 by @alejsdev. -
📝 Update includes indocs/en/docs/how-to/custom-request-and-route.md. MR #12560 by @philipokiokio.
Translations
-
🌐 Add Korean translation fordocs/ko/docs/advanced/testing-websockets.md. MR #12739 by @Limsunoh. -
🌐 Add Traditional Chinese translation fordocs/zh-hant/docs/environment-variables.md. MR #12785 by @Vincy1230. -
🌐 Add Chinese translation fordocs/zh/docs/environment-variables.md. MR #12784 by @Vincy1230. -
🌐 Add Korean translation forko/docs/advanced/response-headers.md. MR #12740 by @kwang1215. -
🌐 Add Chinese translation fordocs/zh/docs/virtual-environments.md. MR #12790 by @Vincy1230. -
🌐 Add Korean translation for/docs/ko/docs/environment-variables.md. MR #12526 by @Tolerblanc. -
🌐 Add Korean translation fordocs/ko/docs/history-design-future.md. MR #12646 by @saeye. -
🌐 Add Korean translation fordocs/ko/docs/advanced/advanced-dependencies.md. MR #12675 by @kim-sangah. -
🌐 Add Korean translation fordocs/ko/docs/how-to/conditional-openapi.md. MR #12731 by @sptcnl. -
🌐 Add Korean translation fordocs/ko/docs/advanced/using_request_directly.md. MR #12738 by @kwang1215. -
🌐 Add Korean translation fordocs/ko/docs/advanced/testing-events.md. MR #12741 by @9zimin9. -
🌐 Add Korean translation fordocs/ko/docs/security/index.md. MR #12743 by @kim-sangah. -
🌐 Add Portuguese translation fordocs/pt/docs/advanced/path-operation-advanced-configuration.md. MR #12762 by @Joao-Pedro-P-Holanda. -
🌐 Add Korean translation fordocs/ko/docs/advanced/wsgi.md. MR #12659 by @Limsunoh. -
🌐 Add Portuguese translation fordocs/pt/docs/advanced/websockets.md. MR #12703 by @devfernandoa. -
🌐 Add Portuguese translation fordocs/pt/docs/tutorial/security/simple-oauth2.md. MR #12520 by @LidiaDomingos. -
🌐 Add Korean translation fordocs/ko/docs/advanced/response-directly.md. MR #12674 by @9zimin9. -
🌐 Add Portuguese translation fordocs/pt/docs/advanced/middleware.md. MR #12704 by @devluisrodrigues. -
🌐 Add Portuguese translation fordocs/pt/docs/advanced/openapi-callbacks.md. MR #12705 by @devfernandoa. -
🌐 Add Portuguese translation fordocs/pt/docs/tutorial/request-files.md. MR #12706 by @devluisrodrigues. -
🌐 Add Portuguese Translation fordocs/pt/docs/advanced/custom-response.md. MR #12631 by @Joao-Pedro-P-Holanda. -
🌐 Add Portuguese translation fordocs/pt/docs/tutorial/metadata.md. MR #12538 by @LinkolnR. -
🌐 Add Korean translation fordocs/ko/docs/tutorial/metadata.md. MR #12541 by @kwang1215. -
🌐 Add Korean Translation fordocs/ko/docs/advanced/response-cookies.md. MR #12546 by @kim-sangah. -
🌐 Add Korean translation fordocs/ko/docs/fastapi-cli.md. MR #12515 by @dhdld. -
🌐 Add Korean Translation fordocs/ko/docs/advanced/response-change-status-code.md. MR #12547 by @9zimin9.
Internal
-
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #12907 by @pre-commit-ci[bot]. -
🔨 Update docs preview script to show previous version and English version. MR #12856 by @tiangolo. -
⬆️ Bump tiangolo/latest-changes from 0.3.1 to 0.3.2. MR #12794 by @dependabot[bot]. -
⬆️ Bump pypa/gh-action-pypi-publish from 1.12.0 to 1.12.2. MR #12788 by @dependabot[bot]. -
⬆️ Bump pypa/gh-action-pypi-publish from 1.11.0 to 1.12.0. MR #12781 by @dependabot[bot]. -
⬆️ Bump cloudflare/wrangler-action from 3.11 to 3.12. MR #12777 by @dependabot[bot]. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #12766 by @pre-commit-ci[bot]. -
⬆️ Bump pypa/gh-action-pypi-publish from 1.10.3 to 1.11.0. MR #12721 by @dependabot[bot]. -
⬆️ Update pre-commit requirement from <4.0.0,>=2.17.0 to >=2.17.0,<5.0.0. MR #12749 by @dependabot[bot]. -
⬆️ Bump typer from 0.12.3 to 0.12.5. MR #12748 by @dependabot[bot]. -
⬆️ Update flask requirement from <3.0.0,>=1.1.2 to >=1.1.2,<4.0.0. MR #12747 by @dependabot[bot]. -
⬆️ Bump pillow from 10.4.0 to 11.0.0. MR #12746 by @dependabot[bot]. -
⬆️ Update pytest requirement from <8.0.0,>=7.1.3 to >=7.1.3,<9.0.0. MR #12745 by @dependabot[bot]. -
🔧 Update sponsors: add Render. MR #12733 by @tiangolo. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #12707 by @pre-commit-ci[bot].
v0.115.4
Refactors
-
♻️ Update logic to import and checkpython-multipartfor compatibility with newer version. MR #12627 by @tiangolo.
Docs
-
📝 Update includes indocs/fr/docs/tutorial/body.md. MR #12596 by @kantandane. -
📝 Update includes indocs/fr/docs/tutorial/debugging.md. MR #12595 by @kantandane. -
📝 Update includes indocs/fr/docs/tutorial/query-params-str-validations.md. MR #12591 by @kantandane. -
📝 Update includes indocs/fr/docs/tutorial/query-params.md. MR #12589 by @kantandane. -
📝 Update includes indocs/en/tutorial/body-fields.md. MR #12588 by @lucaromagnoli. -
📝 Update includes indocs/de/docs/tutorial/response-status-code.md. MR #12585 by @abejaranoh. -
📝 Update includes indocs/en/docs/tutorial/body.md. MR #12586 by @lucaromagnoli. -
📝 Update includes indocs/en/docs/advanced/behind-a-proxy.md. MR #12583 by @imjuanleonard. -
📝 Update includes syntax fordocs/pl/docs/tutorial/first-steps.md. MR #12584 by @sebkozlo. -
📝 Update includes indocs/en/docs/advanced/middleware.md. MR #12582 by @montanarograziano. -
📝 Update includes indocs/en/docs/advanced/additional-status-codes.md. MR #12577 by @krishnamadhavan. -
📝 Update includes indocs/en/docs/advanced/advanced-dependencies.md. MR #12578 by @krishnamadhavan. -
📝 Update includes indocs/en/docs/advanced/additional-responses.md. MR #12576 by @krishnamadhavan. -
📝 Update includes indocs/en/docs/tutorial/static-files.md. MR #12575 by @lucaromagnoli. -
📝 Update includes indocs/en/docs/advanced/async-tests.md. MR #12568 by @krishnamadhavan. -
📝 Update includes indocs/pt/docs/advanced/behind-a-proxy.md. MR #12563 by @asmioglou. -
📝 Update includes indocs/de/docs/advanced/security/http-basic-auth.md. MR #12561 by @Nimitha-jagadeesha. -
📝 Update includes indocs/en/docs/tutorial/background-tasks.md. MR #12559 by @FarhanAliRaza. -
📝 Update includes indocs/fr/docs/python-types.md. MR #12558 by @Ismailtlem. -
📝 Update includes indocs/en/docs/how-to/graphql.md. MR #12564 by @philipokiokio. -
📝 Update includes indocs/en/docs/how-to/extending-openapi.md. MR #12562 by @philipokiokio. -
📝 Update includes fordocs/en/docs/how-to/configure-swagger-ui.md. MR #12556 by @tiangolo. -
📝 Update includes fordocs/en/docs/how-to/separate-openapi-schemas.md. MR #12555 by @tiangolo. -
📝 Update includes fordocs/en/docs/advanced/security/http-basic-auth.md. MR #12553 by @tiangolo. -
📝 Update includes indocs/en/docs/tutorial/first-steps.md. MR #12552 by @tiangolo. -
📝 Update includes indocs/en/docs/python-types.md. MR #12551 by @tiangolo. -
📝 Fix link in OAuth2 docs. MR #12550 by @tiangolo. -
📝 Add External Link: FastAPI do Zero. MR #12533 by @rennerocha. -
📝 Fix minor typos. MR #12516 by @kkirsche. -
🌐 Fix rendering issue in translations. MR #12509 by @alejsdev.
Translations
-
📝 Update includes indocs/de/docs/advanced/async-tests.md. MR #12567 by @imjuanleonard. -
🌐 Add Portuguese translation fordocs/pt/docs/tutorial/sql-databases.md. MR #12530 by @ilacftemp. -
🌐 Add Korean translation fordocs/ko/docs/benchmarks.md. MR #12540 by @Limsunoh. -
🌐 Add Portuguese translation fordocs/pt/docs/how-to/separate-openapi-schemas.md. MR #12518 by @ilacftemp. -
🌐 Update Traditional Chinese translation fordocs/zh-hant/docs/deployment/index.md. MR #12521 by @codingjenny. -
🌐 Update Traditional Chinese translation fordocs/zh-hant/docs/deployment/cloud.md. MR #12522 by @codingjenny. -
🌐 Update Traditional Chinese translation fordocs/zh-hant/docs/how-to/index.md. MR #12523 by @codingjenny. -
🌐 Update Traditional Chinese translation fordocs/zh-hant/docs/tutorial/index.md. MR #12524 by @codingjenny. -
🌐 Add Traditional Chinese translation fordocs/zh-hant/docs/how-to/index.md. MR #12468 by @codingjenny. -
🌐 Add Traditional Chinese translation fordocs/zh-hant/docs/tutorial/index.md. MR #12466 by @codingjenny. -
🌐 Add Portuguese translation fordocs/pt/docs/tutorial/header-param-models.md. MR #12437 by @Joao-Pedro-P-Holanda. -
🌐 Add Portuguese translation fordocs/pt/docs/how-to/extending-openapi.md. MR #12470 by @ilacftemp. -
🌐 Add Portuguese translation fordocs/pt/docs/advanced/dataclasses.md. MR #12475 by @leoscarlato. -
🌐 Add Portuguese translation fordocs/pt/docs/how-to/custom-request-and-route.md. MR #12483 by @devfernandoa.
Internal
-
⬆️ Bump cloudflare/wrangler-action from 3.9 to 3.11. MR #12544 by @dependabot[bot]. -
👷 Update GitHub Action to deploy docs previews to handle missing deploy comments. MR #12527 by @tiangolo. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #12505 by @pre-commit-ci[bot].
v0.115.3
Upgrades
Docs
-
📝 Fix broken link in docs. MR #12495 by @eltonjncorreia.
Translations
-
🌐 Add Traditional Chinese translation fordocs/zh-hant/docs/fastapi-cli.md. MR #12444 by @codingjenny. -
🌐 Add Traditional Chinese translation fordocs/zh-hant/docs/deployment/index.md. MR #12439 by @codingjenny. -
🌐 Add Portuguese translation fordocs/pt/docs/how-to/testing-database.md. MR #12472 by @GuilhermeRameh. -
🌐 Add Portuguese translation fordocs/pt/docs/how-to/custom-docs-ui-assets.md. MR #12473 by @devluisrodrigues. -
🌐 Add Portuguese translation fordocs/pt/docs/advanced/response-headers.md. MR #12458 by @leonardopaloschi. -
🌐 Add Traditional Chinese translation fordocs/zh-hant/docs/deployment/cloud.md. MR #12440 by @codingjenny. -
🌐 Update Portuguese translation fordocs/pt/docs/python-types.md. MR #12428 by @ceb10n. -
🌐 Add Russian translation fordocs/ru/docs/environment-variables.md. MR #12436 by @wisderfin. -
🌐 Add Traditional Chinese translation fordocs/zh-hant/docs/resources/index.md. MR #12443 by @codingjenny. -
🌐 Add Traditional Chinese translation fordocs/zh-hant/docs/about/index.md. MR #12438 by @codingjenny. -
🌐 Add Portuguese translation fordocs/pt/docs/tutorial/query-param-models.md. MR #12414 by @ceb10n. -
🌐 Remove Portuguese translation fordocs/pt/docs/deployment.md. MR #12427 by @ceb10n. -
🌐 Add Portuguese translation fordocs/pt/docs/tutorial/body-updates.md. MR #12381 by @andersonrocha0. -
🌐 Add Portuguese translation fordocs/pt/docs/advanced/response-cookies.md. MR #12417 by @Paulofalcao2002.
Internal
-
👷 Update issue manager workflow . MR #12457 by @alejsdev. -
🔧 Update team, include YuriiMotov🚀 . MR #12453 by @tiangolo. -
👷 Refactor label-approved, make it an internal script instead of an external GitHub Action. MR #12280 by @tiangolo. -
👷 Fix smokeshow, checkout files on CI. MR #12434 by @tiangolo. -
👷 Use uv in CI. MR #12281 by @tiangolo. -
⬆️ Update httpx requirement from <0.25.0,>=0.23.0 to >=0.23.0,<0.28.0. MR #11509 by @dependabot[bot].
v0.115.2
Upgrades
-
⬆️ Upgrade Starlette to>=0.37.2,<0.41.0. MR #12431 by @tiangolo.
v0.115.1
Fixes
-
🐛 Fix openapi generation with responses kwarg. MR #10895 by @flxdot. -
🐛 RemoveRequiredshadowing from fastapi using Pydantic v2. MR #12197 by @pachewise.
Refactors
-
♻️ Update type annotations for improvedpython-multipart. MR #12407 by @tiangolo.
Docs
-
✨ Add new tutorial for SQL databases with SQLModel. MR #12285 by @tiangolo. -
📝 Add External Link: How to profile a FastAPI asynchronous request. MR #12389 by @brouberol. -
🔧 Removebase_pathformdx_includeMarkdown extension in MkDocs. MR #12391 by @tiangolo. -
📝 Update link to Swagger UI configuration docs. MR #12264 by @makisukurisu. -
📝 Adding links for Playwright and Vite indocs/project-generation.md. MR #12274 by @kayqueGovetri. -
📝 Fix small typos in the documentation. MR #12213 by @svlandeg.
Translations
-
🌐 Add Portuguese translation fordocs/pt/docs/tutorial/cookie-param-models.md. MR #12298 by @ceb10n. -
🌐 Add Portuguese translation fordocs/pt/docs/how-to/graphql.md. MR #12215 by @AnandaCampelo. -
🌐 Add Portuguese translation fordocs/pt/docs/advanced/security/oauth2-scopes.md. MR #12263 by @ceb10n. -
🌐 Add Portuguese translation fordocs/pt/docs/deployment/concepts.md. MR #12219 by @marcelomarkus. -
🌐 Add Portuguese translation fordocs/pt/docs/how-to/conditional-openapi.md. MR #12221 by @marcelomarkus. -
🌐 Add Portuguese translation fordocs/pt/docs/advanced/response-directly.md. MR #12266 by @Joao-Pedro-P-Holanda. -
🌐 Update Portuguese translation fordocs/pt/docs/tutorial/cookie-params.md. MR #12297 by @ceb10n. -
🌐 Fix Korean translation fordocs/ko/docs/tutorial/index.md. MR #12278 by @kkotipy. -
🌐 Update Portuguese translation fordocs/pt/docs/advanced/security/http-basic-auth.md. MR #12275 by @andersonrocha0. -
🌐 Add Portuguese translation fordocs/pt/docs/deployment/cloud.md. MR #12217 by @marcelomarkus. -
✏️ Fix typo indocs/es/docs/python-types.md. MR #12235 by @JavierSanchezCastro. -
🌐 Add Dutch translation fordocs/nl/docs/environment-variables.md. MR #12200 by @maxscheijen. -
🌐 Add Portuguese translation fordocs/pt/docs/deployment/manually.md. MR #12210 by @JoaoGustavoRogel. -
🌐 Add Portuguese translation fordocs/pt/docs/deployment/server-workers.md. MR #12220 by @marcelomarkus. -
🌐 Add Portuguese translation fordocs/pt/docs/how-to/configure-swagger-ui.md. MR #12222 by @marcelomarkus.
Internal
-
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #12396 by @pre-commit-ci[bot]. -
🔨 Add script to generate variants of files. MR #12405 by @tiangolo. -
🔧 Add speakeasy-api tosponsors_badge.yml. MR #12404 by @tiangolo. -
➕ Add docs dependency: markdown-include-variants. MR #12399 by @tiangolo. -
📝 Fix extra mdx-base-path paths. MR #12397 by @tiangolo. -
👷 Tweak labeler to not override custom labels. MR #12398 by @tiangolo. -
👷 Update worfkow deploy-docs-notify URL. MR #12392 by @tiangolo. -
👷 Update Cloudflare GitHub Action. MR #12387 by @tiangolo. -
⬆️ Bump pypa/gh-action-pypi-publish from 1.10.1 to 1.10.3. MR #12386 by @dependabot[bot]. -
⬆️ Bump mkdocstrings[python] from 0.25.1 to 0.26.1. MR #12371 by @dependabot[bot]. -
⬆️ Bump griffe-typingdoc from 0.2.6 to 0.2.7. MR #12370 by @dependabot[bot]. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #12331 by @pre-commit-ci[bot]. -
🔧 Update sponsors, remove Fine.dev. MR #12271 by @tiangolo. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #12253 by @pre-commit-ci[bot]. -
✏️ Fix docstring typos in http security. MR #12223 by @albertvillanova.
v0.115.0
Highlights
Now you can declare Query, Header, and Cookie parameters with Pydantic models.
Query Parameter Models
Use Pydantic models for Query parameters:
from typing import Annotated, Literal
from fastapi import FastAPI, Query
from pydantic import BaseModel, Field
app = FastAPI()
class FilterParams(BaseModel):
limit: int = Field(100, gt=0, le=100)
offset: int = Field(0, ge=0)
order_by: Literal["created_at", "updated_at"] = "created_at"
tags: list[str] = []
@​app.get("/items/")
async def read_items(filter_query: Annotated[FilterParams, Query()]):
return filter_query
Read the new docs: Query Parameter Models.
Header Parameter Models
Use Pydantic models for Header parameters:
from typing import Annotated
from fastapi import FastAPI, Header
from pydantic import BaseModel
app = FastAPI()
class CommonHeaders(BaseModel):
host: str
save_data: bool
if_modified_since: str | None = None
traceparent: str | None = None
x_tag: list[str] = []
@​app.get("/items/")
async def read_items(headers: Annotated[CommonHeaders, Header()]):
return headers
Read the new docs: Header Parameter Models.
Cookie Parameter Models
Use Pydantic models for Cookie parameters:
from typing import Annotated
from fastapi import Cookie, FastAPI
from pydantic import BaseModel
app = FastAPI()
class Cookies(BaseModel):
session_id: str
fatebook_tracker: str | None = None
googall_tracker: str | None = None
@​app.get("/items/")
async def read_items(cookies: Annotated[Cookies, Cookie()]):
return cookies
Read the new docs: Cookie Parameter Models.
Forbid Extra Query (Cookie, Header) Parameters
Use Pydantic models to restrict extra values for Query parameters (also applies to Header and Cookie parameters).
To achieve it, use Pydantic's model_config = {"extra": "forbid"}:
from typing import Annotated, Literal
from fastapi import FastAPI, Query
from pydantic import BaseModel, Field
app = FastAPI()
class FilterParams(BaseModel):
model_config = {"extra": "forbid"}
limit: int = Field(100, gt=0, le=100)
offset: int = Field(0, ge=0)
order_by: Literal["created_at", "updated_at"] = "created_at"
tags: list[str] = []
@​app.get("/items/")
async def read_items(filter_query: Annotated[FilterParams, Query()]):
return filter_query
This applies to Query, Header, and Cookie parameters, read the new docs:
Features
-
✨ Add support for Pydantic models for parameters usingQuery,Cookie,Header. MR #12199 by @tiangolo.
Translations
-
🌐 Add Portuguese translation fordocs/pt/docs/advanced/security/http-basic-auth.md. MR #12195 by @ceb10n.
Internal
-
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #12204 by @pre-commit-ci[bot].
v0.114.2
Fixes
-
🐛 Fix form field regression withalias. MR #12194 by @Wurstnase.
Translations
-
🌐 Add Portuguese translation fordocs/pt/docs/tutorial/request-form-models.md. MR #12175 by @ceb10n. -
🌐 Add Chinese translation fordocs/zh/docs/project-generation.md. MR #12170 by @waketzheng. -
🌐 Add Dutch translation fordocs/nl/docs/python-types.md. MR #12158 by @maxscheijen.
Internal
-
💡 Add comments with instructions for Playwright screenshot scripts. MR #12193 by @tiangolo. -
➕ Add inline-snapshot for tests. MR #12189 by @tiangolo.
v0.114.1
Refactors
-
⚡ Improve performance in request body parsing with a cache for internal model fields. MR #12184 by @tiangolo.
Docs
-
📝 Remove duplicate line in docs fordocs/en/docs/environment-variables.md. MR #12169 by @prometek.
Translations
-
🌐 Add Portuguese translation fordocs/pt/docs/virtual-environments.md. MR #12163 by @marcelomarkus. -
🌐 Add Portuguese translation fordocs/pt/docs/environment-variables.md. MR #12162 by @marcelomarkus. -
🌐 Add Portuguese translation fordocs/pt/docs/tutorial/testing.md. MR #12164 by @marcelomarkus. -
🌐 Add Portuguese translation fordocs/pt/docs/tutorial/debugging.md. MR #12165 by @marcelomarkus. -
🌐 Add Korean translation fordocs/ko/docs/project-generation.md. MR #12157 by @BORA040126.
Internal
-
⬆️ Bump tiangolo/issue-manager from 0.5.0 to 0.5.1. MR #12173 by @dependabot[bot]. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #12176 by @pre-commit-ci[bot]. -
👷 Updateissue-manager.yml. MR #12159 by @tiangolo. -
✏️ Fix typo infastapi/params.py. MR #12143 by @surreal30.
v0.114.0
You can restrict form fields to only include those declared in a Pydantic model and forbid any extra field sent in the request using Pydantic's model_config = {"extra": "forbid"}:
from typing import Annotated
from fastapi import FastAPI, Form
from pydantic import BaseModel
app = FastAPI()
class FormData(BaseModel):
username: str
password: str
model_config = {"extra": "forbid"}
@​app.post("/login/")
async def login(data: Annotated[FormData, Form()]):
return data
Read the new docs: Form Models - Forbid Extra Form Fields.
Features
-
✨ Add support for forbidding extra form fields with Pydantic models. MR #12134 by @tiangolo.
Docs
-
📝 Update docs, Form Models section title, to match config name. MR #12152 by @tiangolo.
Internal
-
✅ Update internal tests for latest Pydantic, including CI tweaks to install the latest Pydantic. MR #12147 by @tiangolo.
v0.113.0
Now you can declare form fields with Pydantic models:
from typing import Annotated
from fastapi import FastAPI, Form
from pydantic import BaseModel
app = FastAPI()
class FormData(BaseModel):
username: str
password: str
@​app.post("/login/")
async def login(data: Annotated[FormData, Form()]):
return data
Read the new docs: Form Models.
Features
-
✨ Add support for Pydantic models inFormparameters. MR #12129 by @tiangolo.
Internal
-
🔧 Update sponsors: Coherence link. MR #12130 by @tiangolo.
v0.112.4
This release is mainly a big internal refactor to enable adding support for Pydantic models for Form fields, but that feature comes in the next release.
This release shouldn't affect apps using FastAPI in any way. You don't even have to upgrade to this version yet. It's just a checkpoint.
Refactors
-
♻️ Refactor deciding ifembedbody fields, do not overwrite fields, compute once per router, refactor internals in preparation for Pydantic models inForm,Queryand others. MR #12117 by @tiangolo.
Internal
- ⏪️ Temporarily revert "
✨ Add support for Pydantic models inFormparameters" to make a checkpoint release. MR #12128 by @tiangolo. -
✨ Add support for Pydantic models inFormparameters. MR #12127 by @tiangolo. Reverted to make a checkpoint release with only refactors.
v0.112.3
This release is mainly internal refactors, it shouldn't affect apps using FastAPI in any way. You don't even have to upgrade to this version yet. There are a few bigger releases coming right after.
Refactors
-
♻️ Refactor internalcheck_file_field(), rename toensure_multipart_is_installed()to clarify its purpose. MR #12106 by @tiangolo. -
♻️ Rename internalcreate_response_field()tocreate_model_field()as it's used for more than response models. MR #12103 by @tiangolo. -
♻️ Refactor and simplify internal data fromsolve_dependencies()using dataclasses. MR #12100 by @tiangolo. -
♻️ Refactor and simplify internalanalyze_param()to structure data with dataclasses instead of tuple. MR #12099 by @tiangolo. -
♻️ Refactor and simplify dependencies data structures with dataclasses. MR #12098 by @tiangolo.
Docs
-
📝 Add External Link: Techniques and applications of SQLAlchemy global filters in FastAPI. MR #12109 by @TheShubhendra. -
📝 Add note abouttime.perf_counter()in middlewares. MR #12095 by @tiangolo. -
📝 Tweak middleware code sampletime.time()totime.perf_counter(). MR #11957 by @domdent. -
🔧 Update sponsors: Coherence. MR #12093 by @tiangolo. -
📝 Fix async test example not to trigger DeprecationWarning. MR #12084 by @marcinsulikowski. -
📝 Updatedocs_src/path_params_numeric_validations/tutorial006.py. MR #11478 by @MuhammadAshiqAmeer. -
📝 Update comma indocs/en/docs/async.md. MR #12062 by @Alec-Gillis. -
📝 Update docs about serving FastAPI: ASGI servers, Docker containers, etc.. MR #12069 by @tiangolo. -
📝 Clarifyresponse_classparameter, validations, and returning a response directly. MR #12067 by @tiangolo. -
📝 Fix minor typos and issues in the documentation. MR #12063 by @svlandeg. -
📝 Add note in Docker docs about ensuring graceful shutdowns and lifespan events withCMDexec form. MR #11960 by @GPla.
Translations
-
🌐 Add Dutch translation fordocs/nl/docs/features.md. MR #12101 by @maxscheijen. -
🌐 Add Portuguese translation fordocs/pt/docs/advanced/testing-events.md. MR #12108 by @ceb10n. -
🌐 Add Portuguese translation fordocs/pt/docs/advanced/security/index.md. MR #12114 by @ceb10n. -
🌐 Add Dutch translation fordocs/nl/docs/index.md. MR #12042 by @svlandeg. -
🌐 Update Chinese translation fordocs/zh/docs/how-to/index.md. MR #12070 by @synthpop123.
Internal
-
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #12115 by @pre-commit-ci[bot]. -
⬆️ Bump pypa/gh-action-pypi-publish from 1.10.0 to 1.10.1. MR #12120 by @dependabot[bot]. -
⬆️ Bump pillow from 10.3.0 to 10.4.0. MR #12105 by @dependabot[bot]. -
💚 Setinclude-hidden-filestoTruewhen using theupload-artifactGH action. MR #12118 by @svlandeg. -
⬆️ Bump pypa/gh-action-pypi-publish from 1.9.0 to 1.10.0. MR #12112 by @dependabot[bot]. -
🔧 Update sponsors link: Coherence. MR #12097 by @tiangolo. -
🔧 Update labeler config to handle sponsorships data. MR #12096 by @tiangolo. -
🔧 Update sponsors, remove Kong. MR #12085 by @tiangolo. -
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #12076 by @pre-commit-ci[bot]. -
👷 Updatelatest-changesGitHub Action. MR #12073 by @tiangolo.
v0.112.2
Fixes
-
🐛 Fixallow_inf_nanoption for Param and Body classes. MR #11867 by @giunio-prc. -
🐛 Ensure thatapp.include_routermerges nested lifespans. MR #9630 by @Lancetnik.
Refactors
-
🎨 Fix typing annotation for semi-internalFastAPI.add_api_route(). MR #10240 by @ordinary-jamie. -
⬆️ Upgrade version of Ruff and reformat. MR #12032 by @tiangolo.
Docs
-
📝 Fix a typo indocs/en/docs/virtual-environments.md. MR #12064 by @aymenkrifa. -
📝 Add docs about Environment Variables and Virtual Environments. MR #12054 by @tiangolo. -
📝 Add Asyncer mention in async docs. MR #12037 by @tiangolo. -
📝 Move the Features docs to the top level to improve the main page menu. MR #12036 by @tiangolo. -
✏️ Fix import typo in reference example forSecurity. MR #11168 by @0shah0. -
📝 Highlight correct line in tutorialdocs/en/docs/tutorial/body-multiple-params.md. MR #11978 by @svlandeg. -
🔥 Remove Sentry link from Advanced Middleware docs. MR #12031 by @alejsdev. -
📝 Clarify management tasks for translations, multiples files in one MR. MR #12030 by @tiangolo. -
📝 Edit the link to the OpenAPI "Responses Object" and "Response Object" sections in the "Additional Responses in OpenAPI" section. MR #11996 by @VaitoSoi. -
🔨 Specifyemail-validatordependency with dash. MR #11515 by @jirikuncar. -
🌐 Add Spanish translation fordocs/es/docs/project-generation.md. MR #11947 by @alejsdev. -
📝 Fix minor typo. MR #12026 by @MicaelJarniac. -
📝 Several docs improvements, tweaks, and clarifications. MR #11390 by @nilslindemann. -
📝 Add missingcompresslevelparameter on docs forGZipMiddleware. MR #11350 by @junah201. -
📝 Fix inconsistent response code when item already exists in docs for testing. MR #11818 by @lokomilo. -
📝 Updatedocs/en/docs/tutorial/body.mdwith Python 3.10 union type example. MR #11415 by @rangzen.
Translations
-
🌐 Add Portuguese translation fordocs/pt/docs/tutorial/request_file.md. MR #12018 by @Joao-Pedro-P-Holanda. -
🌐 Add Japanese translation fordocs/ja/docs/learn/index.md. MR #11592 by @ukwhatn. -
📝 Update Spanish translation docs for consistency. MR #12044 by @alejsdev. -
🌐 Update Chinese translation fordocs/zh/docs/tutorial/dependencies/dependencies-with-yield.md. MR #12028 by @xuvjso. -
📝 Update FastAPI People, do not translate to have the most recent info. MR #12034 by @tiangolo. -
🌐 Update Urdu translation fordocs/ur/docs/benchmarks.md. MR #10046 by @AhsanSheraz.
Internal
-
⬆️ [pre-commit.ci] pre-commit autoupdate. MR #12046 by @pre-commit-ci[bot]. -
🔧 Update coverage config files. MR #12035 by @tiangolo. -
🔨 Standardize shebang across shell scripts. MR #11942 by @gitworkflows. -
⬆️ Update sqlalchemy requirement from <1.4.43,>=1.3.18 to >=1.3.18,<2.0.33. MR #11979 by @dependabot[bot]. -
🔊 Remove old ignore warnings. MR #11950 by @tiangolo. -
⬆️ Upgrade griffe-typingdoc for the docs. MR #12029 by @tiangolo. -
🙈 Add .coverage* to.gitignore. MR #11940 by @gitworkflows. -
⚙️ Record and show test coverage contexts (what test covers which line). MR #11518 by @slafs.
Configuration
- If you want to rebase/retry this MR, check this box
This MR has been generated by Renovate Bot.