]> git.ipfire.org Git - thirdparty/fastapi/fastapi.git/commit
✨ Add support for `from pydantic.v1 import BaseModel`, mixed Pydantic v1 and v2 model...
authorSebastián Ramírez <tiangolo@gmail.com>
Sat, 11 Oct 2025 16:45:54 +0000 (18:45 +0200)
committerGitHub <noreply@github.com>
Sat, 11 Oct 2025 16:45:54 +0000 (18:45 +0200)
commitd34918abf00c93ac592c5d1d1c55650d8c1b92ec
tree35d8df1e469857aa845cfc3915f3f8f74a0f74f9
parent352dbefc634b21cff94663be1ab0a1aa5dbd6ed5
✨ Add support for `from pydantic.v1 import BaseModel`, mixed Pydantic v1 and v2 models in the same app (#14168)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
46 files changed:
docs/en/docs/how-to/migrate-from-pydantic-v1-to-pydantic-v2.md [new file with mode: 0644]
docs/en/mkdocs.yml
docs_src/pydantic_v1_in_v2/tutorial001_an.py [new file with mode: 0644]
docs_src/pydantic_v1_in_v2/tutorial001_an_py310.py [new file with mode: 0644]
docs_src/pydantic_v1_in_v2/tutorial002_an.py [new file with mode: 0644]
docs_src/pydantic_v1_in_v2/tutorial002_an_py310.py [new file with mode: 0644]
docs_src/pydantic_v1_in_v2/tutorial003_an.py [new file with mode: 0644]
docs_src/pydantic_v1_in_v2/tutorial003_an_py310.py [new file with mode: 0644]
docs_src/pydantic_v1_in_v2/tutorial004_an.py [new file with mode: 0644]
docs_src/pydantic_v1_in_v2/tutorial004_an_py310.py [new file with mode: 0644]
docs_src/pydantic_v1_in_v2/tutorial004_an_py39.py [new file with mode: 0644]
fastapi/_compat.py [deleted file]
fastapi/_compat/__init__.py [new file with mode: 0644]
fastapi/_compat/main.py [new file with mode: 0644]
fastapi/_compat/model_field.py [new file with mode: 0644]
fastapi/_compat/shared.py [new file with mode: 0644]
fastapi/_compat/v1.py [new file with mode: 0644]
fastapi/_compat/v2.py [new file with mode: 0644]
fastapi/datastructures.py
fastapi/dependencies/utils.py
fastapi/encoders.py
fastapi/openapi/utils.py
fastapi/routing.py
fastapi/temp_pydantic_v1_params.py [new file with mode: 0644]
fastapi/utils.py
tests/test_compat.py
tests/test_compat_params_v1.py [new file with mode: 0644]
tests/test_get_model_definitions_formfeed_escape.py
tests/test_openapi_separate_input_output_schemas.py
tests/test_pydantic_v1_v2_01.py [new file with mode: 0644]
tests/test_pydantic_v1_v2_list.py [new file with mode: 0644]
tests/test_pydantic_v1_v2_mixed.py [new file with mode: 0644]
tests/test_pydantic_v1_v2_multifile/__init__.py [new file with mode: 0644]
tests/test_pydantic_v1_v2_multifile/main.py [new file with mode: 0644]
tests/test_pydantic_v1_v2_multifile/modelsv1.py [new file with mode: 0644]
tests/test_pydantic_v1_v2_multifile/modelsv2.py [new file with mode: 0644]
tests/test_pydantic_v1_v2_multifile/modelsv2b.py [new file with mode: 0644]
tests/test_pydantic_v1_v2_multifile/test_multifile.py [new file with mode: 0644]
tests/test_pydantic_v1_v2_noneable.py [new file with mode: 0644]
tests/test_response_model_as_return_annotation.py
tests/test_tutorial/test_pydantic_v1_in_v2/__init__.py [new file with mode: 0644]
tests/test_tutorial/test_pydantic_v1_in_v2/test_tutorial001.py [new file with mode: 0644]
tests/test_tutorial/test_pydantic_v1_in_v2/test_tutorial002.py [new file with mode: 0644]
tests/test_tutorial/test_pydantic_v1_in_v2/test_tutorial003.py [new file with mode: 0644]
tests/test_tutorial/test_pydantic_v1_in_v2/test_tutorial004.py [new file with mode: 0644]
tests/utils.py