♻️ Simplify internals, remove Pydantic v1 only logic, no longer needed (#14857)

This commit is contained in:
Sebastián Ramírez
2026-02-06 11:04:24 -08:00
committed by GitHub
parent ac8362c447
commit cf55bade7e
5 changed files with 19 additions and 112 deletions

View File

@@ -9,11 +9,14 @@ from fastapi import routing
from fastapi._compat import (
ModelField,
Undefined,
get_compat_model_name_map,
get_definitions,
get_schema_from_model_field,
lenient_issubclass,
)
from fastapi._compat.v2 import (
get_flat_models_from_fields,
get_model_name_map,
)
from fastapi.datastructures import DefaultPlaceholder
from fastapi.dependencies.models import Dependant
from fastapi.dependencies.utils import (
@@ -512,7 +515,8 @@ def get_openapi(
webhook_paths: dict[str, dict[str, Any]] = {}
operation_ids: set[str] = set()
all_fields = get_fields_from_routes(list(routes or []) + list(webhooks or []))
model_name_map = get_compat_model_name_map(all_fields)
flat_models = get_flat_models_from_fields(all_fields, known_models=set())
model_name_map = get_model_name_map(flat_models)
field_mapping, definitions = get_definitions(
fields=all_fields,
model_name_map=model_name_map,