Browse Source

🔥 Remove model_rebuild compat with Pydantic v1

pull/14575/head
Sebastián Ramírez 7 months ago
parent
commit
dc9342a635
  1. 1
      fastapi/_compat/__init__.py
  2. 9
      fastapi/_compat/main.py
  3. 4
      fastapi/_compat/v2.py
  4. 7
      fastapi/openapi/models.py

1
fastapi/_compat/__init__.py

@ -11,7 +11,6 @@ from .main import _is_model_class as _is_model_class
from .main import _is_model_field as _is_model_field
from .main import _is_undefined as _is_undefined
from .main import _model_dump as _model_dump
from .main import _model_rebuild as _model_rebuild
from .main import copy_field_info as copy_field_info
from .main import create_body_model as create_body_model
from .main import evaluate_forwardref as evaluate_forwardref

9
fastapi/_compat/main.py

@ -158,15 +158,6 @@ def serialize_sequence_value(*, field: ModelField, value: Any) -> Sequence[Any]:
return v2.serialize_sequence_value(field=field, value=value) # type: ignore[arg-type]
def _model_rebuild(model: type[BaseModel]) -> None:
if lenient_issubclass(model, may_v1.BaseModel):
from fastapi._compat import v1
v1._model_rebuild(model)
else:
v2._model_rebuild(model)
def get_compat_model_name_map(fields: list[ModelField]) -> ModelNameMap:
v1_model_fields = [
field for field in fields if isinstance(field, may_v1.ModelField)

4
fastapi/_compat/v2.py

@ -216,10 +216,6 @@ def get_annotation_from_field_info(
return annotation
def _model_rebuild(model: type[BaseModel]) -> None:
model.model_rebuild()
def _model_dump(
model: BaseModel, mode: Literal["json", "python"] = "json", **kwargs: Any
) -> Any:

7
fastapi/openapi/models.py

@ -6,7 +6,6 @@ from fastapi._compat import (
CoreSchema,
GetJsonSchemaHandler,
JsonSchemaValue,
_model_rebuild,
with_info_plain_validator_function,
)
from fastapi.logger import logger
@ -434,6 +433,6 @@ class OpenAPI(BaseModelWithConfig):
externalDocs: Optional[ExternalDocumentation] = None
_model_rebuild(Schema)
_model_rebuild(Operation)
_model_rebuild(Encoding)
Schema.model_rebuild()
Operation.model_rebuild()
Encoding.model_rebuild()

Loading…
Cancel
Save