← pod_r3_v1e

fastapi_14609

failed CONTEXT NO_PATCH UNSUBMITTED agent_error · 29 tool calls · 73 s · fastapi/fastapi

Task input

➖ Drop support for `pydantic.v1`

➖ Drop support for `pydantic.v1`

When trying to use a `pydantic.v1` model with FastAPI, an error is raised.

Tool calls (29)

#ToolArgumentsResult
1run_command
{
 "command": "grep -rn \"pydantic.v1\" ."
}
{"status": "ok", "stdout": "./tests/test_filter_pydantic_sub_model/app_pv1.py:5:from pydantic.v1 import BaseModel, validator\n./tests/test_compat_params_v1.py:1
full
{"status": "ok", "stdout": "./tests/test_filter_pydantic_sub_model/app_pv1.py:5:from pydantic.v1 import BaseModel, validator\n./tests/test_compat_params_v1.py:17:from fastapi.temp_pydantic_v1_params import (\n./tests/test_tutorial/test_pydantic_v1_in_v2/test_tutorial002.py:35:        mod = importlib.import_module(f\"docs_src.pydantic_v1_in_v2.{request.param}\")\n./tests/test_tutorial/test_pydantic_v1_in_v2/test_tutorial003.py:35:        mod = importlib.import_module(f\"docs_src.pydantic_v1_in_v2.{request.param}\")\n./tests/test_tutorial/test_pydantic_v1_in_v2/test_tutorial004.py:35:        mod = importlib.import_module(f\"docs_src.pydantic_v1_in_v2.{request.param}\")\n./tests/test_tutorial/test_pydantic_v1_in_v2/test_tutorial001.py:25:    mod = importlib.import_module(f\"docs_src.pydantic_v1_in_v2.{request.param}\")\n./tests/test_get_model_definitions_formfeed_escape.py:14:        pytest.param(\"pydantic-v1\", marks=needs_pydanticv1),\n./tests/test_get_model_definitions_formfeed_escape.py:19:    if request.param == \"pydantic-v1\":\n./tests/test_get_model_definitions_formfeed_escape.py:20:        from pydantic.v1 import BaseModel\n./tests/test_get_model_definitions_formfeed_escape.py:41:    if request.param == \"pydantic-v1\":\n./tests/test_pydantic_v1_v2_multifile/test_multifile.py:298:                                                \"$ref\": \"#/components/schemas/tests__test_pydantic_v1_v2_multifile__modelsv1__Item\"\n./tests/test_pydantic_v1_v2_multifile/test_multifile.py:313:                                            \"$ref\": \"#/components/schemas/tests__test_pydantic_v1_v2_multifile__modelsv2__Item\"\n./tests/test_pydantic_v1_v2_multifile/test_multifile.py:339:                                        \"$ref\": \"#/components/schemas/tests__test_pydantic_v1_v2_multifile__modelsv2__Item-Input\"\n./tests/test_pydantic_v1_v2_multifile/test_multifile.py:351:                                            \"$ref\": \"#/components/schemas/tests__test_pydantic_v1_v2_mul
2run_command
{
 "command": "grep -rn \"pydantic.v1\" fastapi | head -40"
}
{"status": "ok", "stdout": "fastapi/dependencies/utils.py:47:from fastapi._compat.shared import annotation_is_pydantic_v1\nfastapi/dependencies/utils.py:75:from
full
{"status": "ok", "stdout": "fastapi/dependencies/utils.py:47:from fastapi._compat.shared import annotation_is_pydantic_v1\nfastapi/dependencies/utils.py:75:from .. import temp_pydantic_v1_params\nfastapi/dependencies/utils.py:328:                \"pydantic.v1 is deprecated and will soon stop being supported by FastAPI.\"\nfastapi/dependencies/utils.py:334:            param_details.field.field_info, (params.Body, temp_pydantic_v1_params.Body)\nfastapi/dependencies/utils.py:403:                    temp_pydantic_v1_params.Param,\nfastapi/dependencies/utils.py:405:                    temp_pydantic_v1_params.Body,\nfastapi/dependencies/utils.py:494:            if annotation_is_pydantic_v1(use_annotation):\nfastapi/dependencies/utils.py:495:                field_info = temp_pydantic_v1_params.Body(  # type: ignore[assignment]\nfastapi/dependencies/utils.py:511:                field_info, (params.Path, temp_pydantic_v1_params.Path)\nfastapi/dependencies/utils.py:517:            isinstance(field_info, (params.Param, temp_pydantic_v1_params.Param))\nfastapi/dependencies/utils.py:526:        if isinstance(field_info, (params.Form, temp_pydantic_v1_params.Form)):\nfastapi/dependencies/utils.py:546:        elif isinstance(field_info, (params.Query, temp_pydantic_v1_params.Query)):\nfastapi/dependencies/utils.py:765:            isinstance(field.field_info, (params.Form, temp_pydantic_v1_params.Form))\nfastapi/dependencies/utils.py:835:        assert isinstance(field_info, (params.Param, temp_pydantic_v1_params.Param)), (\nfastapi/dependencies/utils.py:847:        assert isinstance(field_info, (params.Param, temp_pydantic_v1_params.Param)), (\nfastapi/dependencies/utils.py:896:        isinstance(first_field.field_info, (params.Form, temp_pydantic_v1_params.Form))\nfastapi/dependencies/utils.py:914:            isinstance(field_info, (params.File, temp_pydantic_v1_params.File))\nfastapi/dependencies/utils.py:921:            and isinstance(field_info, (params.File, temp_pydantic_v1_
3run_command
{
 "command": "ls -R fastapi/_compat/"
}
{"status": "ok", "stdout": "__init__.py\nmain.py\nmay_v1.py\nmodel_field.py\nshared.py\nv1.py\nv2.py\n", "stderr": "", "exit_code": 0}
full
{"status": "ok", "stdout": "__init__.py\nmain.py\nmay_v1.py\nmodel_field.py\nshared.py\nv1.py\nv2.py\n", "stderr": "", "exit_code": 0}
4run_command
{
 "command": "cat fastapi/_compat/shared.py"
}
{"status": "ok", "stdout": "import sys\nimport types\nimport typing\nfrom collections import deque\nfrom collections.abc import Mapping, Sequence\nfrom dataclas
full
{"status": "ok", "stdout": "import sys\nimport types\nimport typing\nfrom collections import deque\nfrom collections.abc import Mapping, Sequence\nfrom dataclasses import is_dataclass\nfrom typing import (\n    Annotated,\n    Any,\n    Union,\n)\n\nfrom fastapi._compat import may_v1\nfrom fastapi.types import UnionType\nfrom pydantic import BaseModel\nfrom pydantic.version import VERSION as PYDANTIC_VERSION\nfrom starlette.datastructures import UploadFile\nfrom typing_extensions import get_args, get_origin\n\n# Copy from Pydantic v2, compatible with v1\nif sys.version_info < (3, 10):\n    WithArgsTypes: tuple[Any, ...] = (typing._GenericAlias, types.GenericAlias)  # type: ignore[attr-defined]\nelse:\n    WithArgsTypes: tuple[Any, ...] = (\n        typing._GenericAlias,  # type: ignore[attr-defined]\n        types.GenericAlias,\n        types.UnionType,\n    )  # pyright: ignore[reportAttributeAccessIssue]\n\nPYDANTIC_VERSION_MINOR_TUPLE = tuple(int(x) for x in PYDANTIC_VERSION.split(\".\")[:2])\nPYDANTIC_V2 = PYDANTIC_VERSION_MINOR_TUPLE[0] == 2\n\n\nsequence_annotation_to_type = {\n    Sequence: list,\n    list: list,\n    tuple: tuple,\n    set: set,\n    frozenset: frozenset,\n    deque: deque,\n}\n\nsequence_types = tuple(sequence_annotation_to_type.keys())\n\nUrl: type[Any]\n\n\n# Copy of Pydantic v2, compatible with v1\ndef lenient_issubclass(\n    cls: Any, class_or_tuple: Union[type[Any], tuple[type[Any], ...], None]\n) -> bool:\n    try:\n        return isinstance(cls, type) and issubclass(cls, class_or_tuple)  # type: ignore[arg-type]\n    except TypeError:  # pragma: no cover\n        if isinstance(cls, WithArgsTypes):\n            return False\n        raise  # pragma: no cover\n\n\ndef _annotation_is_sequence(annotation: Union[type[Any], None]) -> bool:\n    if lenient_issubclass(annotation, (str, bytes)):\n        return False\n    return lenient_issubclass(annotation, sequence_types)\n\n\ndef field_annotation_is_sequence(annotation: Union[type[Any], 
5run_command
{
 "command": "cat fastapi/_compat/may_v1.py"
}
{"status": "ok", "stdout": "import sys\nfrom collections.abc import Sequence\nfrom typing import Any, Literal, Union\n\nfrom fastapi.types import ModelNameMap\n
full
{"status": "ok", "stdout": "import sys\nfrom collections.abc import Sequence\nfrom typing import Any, Literal, Union\n\nfrom fastapi.types import ModelNameMap\n\nif sys.version_info >= (3, 14):\n\n    class AnyUrl:\n        pass\n\n    class BaseConfig:\n        pass\n\n    class BaseModel:\n        pass\n\n    class Color:\n        pass\n\n    class CoreSchema:\n        pass\n\n    class ErrorWrapper:\n        pass\n\n    class FieldInfo:\n        pass\n\n    class GetJsonSchemaHandler:\n        pass\n\n    class JsonSchemaValue:\n        pass\n\n    class ModelField:\n        pass\n\n    class NameEmail:\n        pass\n\n    class RequiredParam:\n        pass\n\n    class SecretBytes:\n        pass\n\n    class SecretStr:\n        pass\n\n    class Undefined:\n        pass\n\n    class UndefinedType:\n        pass\n\n    class Url:\n        pass\n\n    from .v2 import ValidationError, create_model\n\n    def get_definitions(\n        *,\n        fields: list[ModelField],\n        model_name_map: ModelNameMap,\n        separate_input_output_schemas: bool = True,\n    ) -> tuple[\n        dict[\n            tuple[ModelField, Literal[\"validation\", \"serialization\"]], JsonSchemaValue\n        ],\n        dict[str, dict[str, Any]],\n    ]:\n        return {}, {}  # pragma: no cover\n\n\nelse:\n    from .v1 import AnyUrl as AnyUrl\n    from .v1 import BaseConfig as BaseConfig\n    from .v1 import BaseModel as BaseModel\n    from .v1 import Color as Color\n    from .v1 import CoreSchema as CoreSchema\n    from .v1 import ErrorWrapper as ErrorWrapper\n    from .v1 import FieldInfo as FieldInfo\n    from .v1 import GetJsonSchemaHandler as GetJsonSchemaHandler\n    from .v1 import JsonSchemaValue as JsonSchemaValue\n    from .v1 import ModelField as ModelField\n    from .v1 import NameEmail as NameEmail\n    from .v1 import RequiredParam as RequiredParam\n    from .v1 import SecretBytes as SecretBytes\n    from .v1 import SecretStr as SecretStr\n    from .v1 import Undef
6run_command
{
 "command": "grep -n \"annotation_is_pydantic_v1\" fastapi/_compat/shared.py"
}
{"status": "ok", "stdout": "182:def annotation_is_pydantic_v1(annotation: Any) -> bool:\n192: if annotation_is_pydantic_v1(sub_annotation):\n", "stderr": "", "e
full
{"status": "ok", "stdout": "182:def annotation_is_pydantic_v1(annotation: Any) -> bool:\n192:            if annotation_is_pydantic_v1(sub_annotation):\n", "stderr": "", "exit_code": 0}
7run_command
{
 "command": "sed -n '182,195p' fastapi/_compat/shared.py"
}
{"status": "ok", "stdout": "def annotation_is_pydantic_v1(annotation: Any) -> bool:\n if lenient_issubclass(annotation, may_v1.BaseModel):\n return True\n origi
full
{"status": "ok", "stdout": "def annotation_is_pydantic_v1(annotation: Any) -> bool:\n    if lenient_issubclass(annotation, may_v1.BaseModel):\n        return True\n    origin = get_origin(annotation)\n    if origin is Union or origin is UnionType:\n        for arg in get_args(annotation):\n            if lenient_issubclass(arg, may_v1.BaseModel):\n                return True\n    if field_annotation_is_sequence(annotation):\n        for sub_annotation in get_args(annotation):\n            if annotation_is_pydantic_v1(sub_annotation):\n                return True\n    return False\n", "stderr": "", "exit_code": 0}
8run_command
{
 "command": "cat fastapi/_compat/v1.py"
}
{"status": "ok", "stdout": "from collections.abc import Sequence\nfrom copy import copy\nfrom dataclasses import dataclass, is_dataclass\nfrom enum import Enum\
full
{"status": "ok", "stdout": "from collections.abc import Sequence\nfrom copy import copy\nfrom dataclasses import dataclass, is_dataclass\nfrom enum import Enum\nfrom typing import (\n    Any,\n    Callable,\n    Union,\n)\n\nfrom fastapi._compat import shared\nfrom fastapi.openapi.constants import REF_PREFIX as REF_PREFIX\nfrom fastapi.types import ModelNameMap\nfrom pydantic.v1 import BaseConfig as BaseConfig\nfrom pydantic.v1 import BaseModel as BaseModel\nfrom pydantic.v1 import ValidationError as ValidationError\nfrom pydantic.v1 import create_model as create_model\nfrom pydantic.v1.class_validators import Validator as Validator\nfrom pydantic.v1.color import Color as Color\nfrom pydantic.v1.error_wrappers import ErrorWrapper as ErrorWrapper\nfrom pydantic.v1.fields import (\n    SHAPE_FROZENSET,\n    SHAPE_LIST,\n    SHAPE_SEQUENCE,\n    SHAPE_SET,\n    SHAPE_SINGLETON,\n    SHAPE_TUPLE,\n    SHAPE_TUPLE_ELLIPSIS,\n)\nfrom pydantic.v1.fields import FieldInfo as FieldInfo\nfrom pydantic.v1.fields import ModelField as ModelField\nfrom pydantic.v1.fields import Undefined as Undefined\nfrom pydantic.v1.fields import UndefinedType as UndefinedType\nfrom pydantic.v1.networks import AnyUrl as AnyUrl\nfrom pydantic.v1.networks import NameEmail as NameEmail\nfrom pydantic.v1.schema import TypeModelSet as TypeModelSet\nfrom pydantic.v1.schema import field_schema, model_process_schema\nfrom pydantic.v1.schema import (\n    get_annotation_from_field_info as get_annotation_from_field_info,\n)\nfrom pydantic.v1.schema import (\n    get_flat_models_from_field as get_flat_models_from_field,\n)\nfrom pydantic.v1.schema import (\n    get_flat_models_from_fields as get_flat_models_from_fields,\n)\nfrom pydantic.v1.schema import get_model_name_map as get_model_name_map\nfrom pydantic.v1.types import SecretBytes as SecretBytes\nfrom pydantic.v1.types import SecretStr as SecretStr\nfrom pydantic.v1.typing import evaluate_forwardref as evaluate_forwardref\nfrom pydantic.v1.utils impo
9run_command
{
 "command": "grep -rn \"temp_pydantic_v1_params\" fastapi | head -20"
}
{"status": "ok", "stdout": "fastapi/dependencies/utils.py:75:from .. import temp_pydantic_v1_params\nfastapi/dependencies/utils.py:334: param_details.field.fiel
full
{"status": "ok", "stdout": "fastapi/dependencies/utils.py:75:from .. import temp_pydantic_v1_params\nfastapi/dependencies/utils.py:334:            param_details.field.field_info, (params.Body, temp_pydantic_v1_params.Body)\nfastapi/dependencies/utils.py:403:                    temp_pydantic_v1_params.Param,\nfastapi/dependencies/utils.py:405:                    temp_pydantic_v1_params.Body,\nfastapi/dependencies/utils.py:495:                field_info = temp_pydantic_v1_params.Body(  # type: ignore[assignment]\nfastapi/dependencies/utils.py:511:                field_info, (params.Path, temp_pydantic_v1_params.Path)\nfastapi/dependencies/utils.py:517:            isinstance(field_info, (params.Param, temp_pydantic_v1_params.Param))\nfastapi/dependencies/utils.py:526:        if isinstance(field_info, (params.Form, temp_pydantic_v1_params.Form)):\nfastapi/dependencies/utils.py:546:        elif isinstance(field_info, (params.Query, temp_pydantic_v1_params.Query)):\nfastapi/dependencies/utils.py:765:            isinstance(field.field_info, (params.Form, temp_pydantic_v1_params.Form))\nfastapi/dependencies/utils.py:835:        assert isinstance(field_info, (params.Param, temp_pydantic_v1_params.Param)), (\nfastapi/dependencies/utils.py:847:        assert isinstance(field_info, (params.Param, temp_pydantic_v1_params.Param)), (\nfastapi/dependencies/utils.py:896:        isinstance(first_field.field_info, (params.Form, temp_pydantic_v1_params.Form))\nfastapi/dependencies/utils.py:914:            isinstance(field_info, (params.File, temp_pydantic_v1_params.File))\nfastapi/dependencies/utils.py:921:            and isinstance(field_info, (params.File, temp_pydantic_v1_params.File))\nfastapi/dependencies/utils.py:1033:        isinstance(f.field_info, temp_pydantic_v1_params.File)\nfastapi/dependencies/utils.py:1036:        BodyFieldInfo: type[temp_pydantic_v1_params.Body] = temp_pydantic_v1_params.File  # type: ignore[no-redef]\nfastapi/dependencies/utils.py:1040:        isinstan
10run_command
{
 "command": "ls -l fastapi/temp_pydantic_v1_params.py"
}
{"status": "ok", "stdout": "-rw-r--r--@ 1 jp wheel 26152 Jul 15 08:53 fastapi/temp_pydantic_v1_params.py\n", "stderr": "", "exit_code": 0}
full
{"status": "ok", "stdout": "-rw-r--r--@ 1 jp  wheel  26152 Jul 15 08:53 fastapi/temp_pydantic_v1_params.py\n", "stderr": "", "exit_code": 0}
11run_command
{
 "command": "cat fastapi/temp_pydantic_v1_params.py | head -20"
}
{"status": "ok", "stdout": "import warnings\nfrom typing import Annotated, Any, Callable, Optional, Union\n\nfrom fastapi.exceptions import FastAPIDeprecationWa
full
{"status": "ok", "stdout": "import warnings\nfrom typing import Annotated, Any, Callable, Optional, Union\n\nfrom fastapi.exceptions import FastAPIDeprecationWarning\nfrom fastapi.openapi.models import Example\nfrom fastapi.params import ParamTypes\nfrom typing_extensions import deprecated\n\nfrom ._compat.may_v1 import FieldInfo, Undefined\n\n_Unset: Any = Undefined\n\n\nclass Param(FieldInfo):\n    in_: ParamTypes\n\n    def __init__(\n        self,\n        default: Any = Undefined,\n        *,\n", "stderr": "", "exit_code": 0}
12run_command
{
 "command": "grep -n \"pydantic.v1\" fastapi/_compat/v1.py"
}
{"status": "ok", "stdout": "14:from pydantic.v1 import BaseConfig as BaseConfig\n15:from pydantic.v1 import BaseModel as BaseModel\n16:from pydantic.v1 import V
full
{"status": "ok", "stdout": "14:from pydantic.v1 import BaseConfig as BaseConfig\n15:from pydantic.v1 import BaseModel as BaseModel\n16:from pydantic.v1 import ValidationError as ValidationError\n17:from pydantic.v1 import create_model as create_model\n18:from pydantic.v1.class_validators import Validator as Validator\n19:from pydantic.v1.color import Color as Color\n20:from pydantic.v1.error_wrappers import ErrorWrapper as ErrorWrapper\n21:from pydantic.v1.fields import (\n30:from pydantic.v1.fields import FieldInfo as FieldInfo\n31:from pydantic.v1.fields import ModelField as ModelField\n32:from pydantic.v1.fields import Undefined as Undefined\n33:from pydantic.v1.fields import UndefinedType as UndefinedType\n34:from pydantic.v1.networks import AnyUrl as AnyUrl\n35:from pydantic.v1.networks import NameEmail as NameEmail\n36:from pydantic.v1.schema import TypeModelSet as TypeModelSet\n37:from pydantic.v1.schema import field_schema, model_process_schema\n38:from pydantic.v1.schema import (\n41:from pydantic.v1.schema import (\n44:from pydantic.v1.schema import (\n47:from pydantic.v1.schema import get_model_name_map as get_model_name_map\n48:from pydantic.v1.types import SecretBytes as SecretBytes\n49:from pydantic.v1.types import SecretStr as SecretStr\n50:from pydantic.v1.typing import evaluate_forwardref as evaluate_forwardref\n51:from pydantic.v1.utils import lenient_issubclass as lenient_issubclass\n", "stderr": "", "exit_code": 0}
13run_command
{
 "command": "cat fastapi/_compat/may_v1.py"
}
{"status": "ok", "stdout": "import sys\nfrom collections.abc import Sequence\nfrom typing import Any, Literal, Union\n\nfrom fastapi.types import ModelNameMap\n
full
{"status": "ok", "stdout": "import sys\nfrom collections.abc import Sequence\nfrom typing import Any, Literal, Union\n\nfrom fastapi.types import ModelNameMap\n\nif sys.version_info >= (3, 14):\n\n    class AnyUrl:\n        pass\n\n    class BaseConfig:\n        pass\n\n    class BaseModel:\n        pass\n\n    class Color:\n        pass\n\n    class CoreSchema:\n        pass\n\n    class ErrorWrapper:\n        pass\n\n    class FieldInfo:\n        pass\n\n    class GetJsonSchemaHandler:\n        pass\n\n    class JsonSchemaValue:\n        pass\n\n    class ModelField:\n        pass\n\n    class NameEmail:\n        pass\n\n    class RequiredParam:\n        pass\n\n    class SecretBytes:\n        pass\n\n    class SecretStr:\n        pass\n\n    class Undefined:\n        pass\n\n    class UndefinedType:\n        pass\n\n    class Url:\n        pass\n\n    from .v2 import ValidationError, create_model\n\n    def get_definitions(\n        *,\n        fields: list[ModelField],\n        model_name_map: ModelNameMap,\n        separate_input_output_schemas: bool = True,\n    ) -> tuple[\n        dict[\n            tuple[ModelField, Literal[\"validation\", \"serialization\"]], JsonSchemaValue\n        ],\n        dict[str, dict[str, Any]],\n    ]:\n        return {}, {}  # pragma: no cover\n\n\nelse:\n    from .v1 import AnyUrl as AnyUrl\n    from .v1 import BaseConfig as BaseConfig\n    from .v1 import BaseModel as BaseModel\n    from .v1 import Color as Color\n    from .v1 import CoreSchema as CoreSchema\n    from .v1 import ErrorWrapper as ErrorWrapper\n    from .v1 import FieldInfo as FieldInfo\n    from .v1 import GetJsonSchemaHandler as GetJsonSchemaHandler\n    from .v1 import JsonSchemaValue as JsonSchemaValue\n    from .v1 import ModelField as ModelField\n    from .v1 import NameEmail as NameEmail\n    from .v1 import RequiredParam as RequiredParam\n    from .v1 import SecretBytes as SecretBytes\n    from .v1 import SecretStr as SecretStr\n    from .v1 import Undef
14run_command
{
 "command": "cat fastapi/_compat/v2.py"
}
{"status": "ok", "stdout": "import re\nimport warnings\nfrom collections.abc import Sequence\nfrom copy import copy, deepcopy\nfrom dataclasses import dataclass
full
{"status": "ok", "stdout": "import re\nimport warnings\nfrom collections.abc import Sequence\nfrom copy import copy, deepcopy\nfrom dataclasses import dataclass, is_dataclass\nfrom enum import Enum\nfrom typing import (\n    Annotated,\n    Any,\n    Union,\n    cast,\n)\n\nfrom fastapi._compat import may_v1, shared\nfrom fastapi.openapi.constants import REF_TEMPLATE\nfrom fastapi.types import IncEx, ModelNameMap, UnionType\nfrom pydantic import BaseModel, ConfigDict, Field, TypeAdapter, create_model\nfrom pydantic import PydanticSchemaGenerationError as PydanticSchemaGenerationError\nfrom pydantic import PydanticUndefinedAnnotation as PydanticUndefinedAnnotation\nfrom pydantic import ValidationError as ValidationError\nfrom pydantic._internal._schema_generation_shared import (  # type: ignore[attr-defined]\n    GetJsonSchemaHandler as GetJsonSchemaHandler,\n)\nfrom pydantic._internal._typing_extra import eval_type_lenient\nfrom pydantic._internal._utils import lenient_issubclass as lenient_issubclass\nfrom pydantic.fields import FieldInfo as FieldInfo\nfrom pydantic.json_schema import GenerateJsonSchema as GenerateJsonSchema\nfrom pydantic.json_schema import JsonSchemaValue as JsonSchemaValue\nfrom pydantic_core import CoreSchema as CoreSchema\nfrom pydantic_core import PydanticUndefined, PydanticUndefinedType\nfrom pydantic_core import Url as Url\nfrom typing_extensions import Literal, get_args, get_origin\n\ntry:\n    from pydantic_core.core_schema import (\n        with_info_plain_validator_function as with_info_plain_validator_function,\n    )\nexcept ImportError:  # pragma: no cover\n    from pydantic_core.core_schema import (\n        general_plain_validator_function as with_info_plain_validator_function,  # noqa: F401\n    )\n\nRequiredParam = PydanticUndefined\nUndefined = PydanticUndefined\nUndefinedType = PydanticUndefinedType\nevaluate_forwardref = eval_type_lenient\nValidator = Any\n\n# TODO: remove when dropping support for Pydantic < v2.12.3\n_Attrs =
15run_command
{
 "command": "ls -l fastapi/temp_pydantic_v1_params.py"
}
{"status": "ok", "stdout": "-rw-r--r--@ 1 jp wheel 26152 Jul 15 08:53 fastapi/temp_pydantic_v1_params.py\n", "stderr": "", "exit_code": 0}
full
{"status": "ok", "stdout": "-rw-r--r--@ 1 jp  wheel  26152 Jul 15 08:53 fastapi/temp_pydantic_v1_params.py\n", "stderr": "", "exit_code": 0}
16run_command
{
 "command": "grep -n \"pydantic.v1\" fastapi/temp_pydantic_v1_params.py"
}
{"status": "error", "error_type": "CommandError", "error_message": "", "details": {"stdout": "", "stderr": "", "exit_code": 1}}
full
{"status": "error", "error_type": "CommandError", "error_message": "", "details": {"stdout": "", "stderr": "", "exit_code": 1}}
17run_command
{
 "command": "grep -rn \"pydantic.v1\" fastapi | head -20"
}
{"status": "ok", "stdout": "fastapi/dependencies/utils.py:47:from fastapi._compat.shared import annotation_is_pydantic_v1\nfastapi/dependencies/utils.py:75:from
full
{"status": "ok", "stdout": "fastapi/dependencies/utils.py:47:from fastapi._compat.shared import annotation_is_pydantic_v1\nfastapi/dependencies/utils.py:75:from .. import temp_pydantic_v1_params\nfastapi/dependencies/utils.py:328:                \"pydantic.v1 is deprecated and will soon stop being supported by FastAPI.\"\nfastapi/dependencies/utils.py:334:            param_details.field.field_info, (params.Body, temp_pydantic_v1_params.Body)\nfastapi/dependencies/utils.py:403:                    temp_pydantic_v1_params.Param,\nfastapi/dependencies/utils.py:405:                    temp_pydantic_v1_params.Body,\nfastapi/dependencies/utils.py:494:            if annotation_is_pydantic_v1(use_annotation):\nfastapi/dependencies/utils.py:495:                field_info = temp_pydantic_v1_params.Body(  # type: ignore[assignment]\nfastapi/dependencies/utils.py:511:                field_info, (params.Path, temp_pydantic_v1_params.Path)\nfastapi/dependencies/utils.py:517:            isinstance(field_info, (params.Param, temp_pydantic_v1_params.Param))\nfastapi/dependencies/utils.py:526:        if isinstance(field_info, (params.Form, temp_pydantic_v1_params.Form)):\nfastapi/dependencies/utils.py:546:        elif isinstance(field_info, (params.Query, temp_pydantic_v1_params.Query)):\nfastapi/dependencies/utils.py:765:            isinstance(field.field_info, (params.Form, temp_pydantic_v1_params.Form))\nfastapi/dependencies/utils.py:835:        assert isinstance(field_info, (params.Param, temp_pydantic_v1_params.Param)), (\nfastapi/dependencies/utils.py:847:        assert isinstance(field_info, (params.Param, temp_pydantic_v1_params.Param)), (\nfastapi/dependencies/utils.py:896:        isinstance(first_field.field_info, (params.Form, temp_pydantic_v1_params.Form))\nfastapi/dependencies/utils.py:914:            isinstance(field_info, (params.File, temp_pydantic_v1_params.File))\nfastapi/dependencies/utils.py:921:            and isinstance(field_info, (params.File, temp_pydantic_v1_
18run_command
{
 "command": "grep -rn \"pydantic.v1\" fastapi/_compat/v1.py"
}
{"status": "ok", "stdout": "fastapi/_compat/v1.py:14:from pydantic.v1 import BaseConfig as BaseConfig\nfastapi/_compat/v1.py:15:from pydantic.v1 import BaseMode
full
{"status": "ok", "stdout": "fastapi/_compat/v1.py:14:from pydantic.v1 import BaseConfig as BaseConfig\nfastapi/_compat/v1.py:15:from pydantic.v1 import BaseModel as BaseModel\nfastapi/_compat/v1.py:16:from pydantic.v1 import ValidationError as ValidationError\nfastapi/_compat/v1.py:17:from pydantic.v1 import create_model as create_model\nfastapi/_compat/v1.py:18:from pydantic.v1.class_validators import Validator as Validator\nfastapi/_compat/v1.py:19:from pydantic.v1.color import Color as Color\nfastapi/_compat/v1.py:20:from pydantic.v1.error_wrappers import ErrorWrapper as ErrorWrapper\nfastapi/_compat/v1.py:21:from pydantic.v1.fields import (\nfastapi/_compat/v1.py:30:from pydantic.v1.fields import FieldInfo as FieldInfo\nfastapi/_compat/v1.py:31:from pydantic.v1.fields import ModelField as ModelField\nfastapi/_compat/v1.py:32:from pydantic.v1.fields import Undefined as Undefined\nfastapi/_compat/v1.py:33:from pydantic.v1.fields import UndefinedType as UndefinedType\nfastapi/_compat/v1.py:34:from pydantic.v1.networks import AnyUrl as AnyUrl\nfastapi/_compat/v1.py:35:from pydantic.v1.networks import NameEmail as NameEmail\nfastapi/_compat/v1.py:36:from pydantic.v1.schema import TypeModelSet as TypeModelSet\nfastapi/_compat/v1.py:37:from pydantic.v1.schema import field_schema, model_process_schema\nfastapi/_compat/v1.py:38:from pydantic.v1.schema import (\nfastapi/_compat/v1.py:41:from pydantic.v1.schema import (\nfastapi/_compat/v1.py:44:from pydantic.v1.schema import (\nfastapi/_compat/v1.py:47:from pydantic.v1.schema import get_model_name_map as get_model_name_map\nfastapi/_compat/v1.py:48:from pydantic.v1.types import SecretBytes as SecretBytes\nfastapi/_compat/v1.py:49:from pydantic.v1.types import SecretStr as SecretStr\nfastapi/_compat/v1.py:50:from pydantic.v1.typing import evaluate_forwardref as evaluate_forwardref\nfastapi/_compat/v1.py:51:from pydantic.v1.utils import lenient_issubclass as lenient_issubclass\n", "stderr": "", "exit_code": 0}
19run_command
{
 "command": "cat fastapi/_compat/may_v1.py"
}
{"status": "ok", "stdout": "import sys\nfrom collections.abc import Sequence\nfrom typing import Any, Literal, Union\n\nfrom fastapi.types import ModelNameMap\n
full
{"status": "ok", "stdout": "import sys\nfrom collections.abc import Sequence\nfrom typing import Any, Literal, Union\n\nfrom fastapi.types import ModelNameMap\n\nif sys.version_info >= (3, 14):\n\n    class AnyUrl:\n        pass\n\n    class BaseConfig:\n        pass\n\n    class BaseModel:\n        pass\n\n    class Color:\n        pass\n\n    class CoreSchema:\n        pass\n\n    class ErrorWrapper:\n        pass\n\n    class FieldInfo:\n        pass\n\n    class GetJsonSchemaHandler:\n        pass\n\n    class JsonSchemaValue:\n        pass\n\n    class ModelField:\n        pass\n\n    class NameEmail:\n        pass\n\n    class RequiredParam:\n        pass\n\n    class SecretBytes:\n        pass\n\n    class SecretStr:\n        pass\n\n    class Undefined:\n        pass\n\n    class UndefinedType:\n        pass\n\n    class Url:\n        pass\n\n    from .v2 import ValidationError, create_model\n\n    def get_definitions(\n        *,\n        fields: list[ModelField],\n        model_name_map: ModelNameMap,\n        separate_input_output_schemas: bool = True,\n    ) -> tuple[\n        dict[\n            tuple[ModelField, Literal[\"validation\", \"serialization\"]], JsonSchemaValue\n        ],\n        dict[str, dict[str, Any]],\n    ]:\n        return {}, {}  # pragma: no cover\n\n\nelse:\n    from .v1 import AnyUrl as AnyUrl\n    from .v1 import BaseConfig as BaseConfig\n    from .v1 import BaseModel as BaseModel\n    from .v1 import Color as Color\n    from .v1 import CoreSchema as CoreSchema\n    from .v1 import ErrorWrapper as ErrorWrapper\n    from .v1 import FieldInfo as FieldInfo\n    from .v1 import GetJsonSchemaHandler as GetJsonSchemaHandler\n    from .v1 import JsonSchemaValue as JsonSchemaValue\n    from .v1 import ModelField as ModelField\n    from .v1 import NameEmail as NameEmail\n    from .v1 import RequiredParam as RequiredParam\n    from .v1 import SecretBytes as SecretBytes\n    from .v1 import SecretStr as SecretStr\n    from .v1 import Undef
20run_command
{
 "command": "cat fastapi/_compat/v2.py | head -50"
}
{"status": "ok", "stdout": "import re\nimport warnings\nfrom collections.abc import Sequence\nfrom copy import copy, deepcopy\nfrom dataclasses import dataclass
full
{"status": "ok", "stdout": "import re\nimport warnings\nfrom collections.abc import Sequence\nfrom copy import copy, deepcopy\nfrom dataclasses import dataclass, is_dataclass\nfrom enum import Enum\nfrom typing import (\n    Annotated,\n    Any,\n    Union,\n    cast,\n)\n\nfrom fastapi._compat import may_v1, shared\nfrom fastapi.openapi.constants import REF_TEMPLATE\nfrom fastapi.types import IncEx, ModelNameMap, UnionType\nfrom pydantic import BaseModel, ConfigDict, Field, TypeAdapter, create_model\nfrom pydantic import PydanticSchemaGenerationError as PydanticSchemaGenerationError\nfrom pydantic import PydanticUndefinedAnnotation as PydanticUndefinedAnnotation\nfrom pydantic import ValidationError as ValidationError\nfrom pydantic._internal._schema_generation_shared import (  # type: ignore[attr-defined]\n    GetJsonSchemaHandler as GetJsonSchemaHandler,\n)\nfrom pydantic._internal._typing_extra import eval_type_lenient\nfrom pydantic._internal._utils import lenient_issubclass as lenient_issubclass\nfrom pydantic.fields import FieldInfo as FieldInfo\nfrom pydantic.json_schema import GenerateJsonSchema as GenerateJsonSchema\nfrom pydantic.json_schema import JsonSchemaValue as JsonSchemaValue\nfrom pydantic_core import CoreSchema as CoreSchema\nfrom pydantic_core import PydanticUndefined, PydanticUndefinedType\nfrom pydantic_core import Url as Url\nfrom typing_extensions import Literal, get_args, get_origin\n\ntry:\n    from pydantic_core.core_schema import (\n        with_info_plain_validator_function as with_info_plain_validator_function,\n    )\nexcept ImportError:  # pragma: no cover\n    from pydantic_core.core_schema import (\n        general_plain_validator_function as with_info_plain_validator_function,  # noqa: F401\n    )\n\nRequiredParam = PydanticUndefined\nUndefined = PydanticUndefined\nUndefinedType = PydanticUndefinedType\nevaluate_forwardref = eval_type_lenient\nValidator = Any\n\n# TODO: remove when dropping support for Pydantic < v2.12.3\n_Attrs =
21run_command
{
 "command": "cat fastapi/_compat/shared.py | grep -n \"annotation_is_pydantic_v1\" -A 10"
}
{"status": "ok", "stdout": "182:def annotation_is_pydantic_v1(annotation: Any) -> bool:\n183- if lenient_issubclass(annotation, may_v1.BaseModel):\n184- return
full
{"status": "ok", "stdout": "182:def annotation_is_pydantic_v1(annotation: Any) -> bool:\n183-    if lenient_issubclass(annotation, may_v1.BaseModel):\n184-        return True\n185-    origin = get_origin(annotation)\n186-    if origin is Union or origin is UnionType:\n187-        for arg in get_args(annotation):\n188-            if lenient_issubclass(arg, may_v1.BaseModel):\n189-                return True\n190-    if field_annotation_is_sequence(annotation):\n191-        for sub_annotation in get_args(annotation):\n192:            if annotation_is_pydantic_v1(sub_annotation):\n193-                return True\n194-    return False\n", "stderr": "", "exit_code": 0}
22run_command
{
 "command": "cat fastapi/_compat/may_v1.py | grep -n \"if sys.version_info >= (3, 14):\" -A 10"
}
{"status": "ok", "stdout": "7:if sys.version_info >= (3, 14):\n8-\n9- class AnyUrl:\n10- pass\n11-\n12- class BaseConfig:\n13- pass\n14-\n15- class BaseModel:\n
full
{"status": "ok", "stdout": "7:if sys.version_info >= (3, 14):\n8-\n9-    class AnyUrl:\n10-        pass\n11-\n12-    class BaseConfig:\n13-        pass\n14-\n15-    class BaseModel:\n16-        pass\n17-\n", "stderr": "", "exit_code": 0}
23run_command
{
 "command": "cat fastapi/_compat/may_v1.py | grep -n \"else:\" -A 20"
}
{"status": "ok", "stdout": "76:else:\n77- from .v1 import AnyUrl as AnyUrl\n78- from .v1 import BaseConfig as BaseConfig\n79- from .v1 import BaseModel as BaseM
full
{"status": "ok", "stdout": "76:else:\n77-    from .v1 import AnyUrl as AnyUrl\n78-    from .v1 import BaseConfig as BaseConfig\n79-    from .v1 import BaseModel as BaseModel\n80-    from .v1 import Color as Color\n81-    from .v1 import CoreSchema as CoreSchema\n82-    from .v1 import ErrorWrapper as ErrorWrapper\n83-    from .v1 import FieldInfo as FieldInfo\n84-    from .v1 import GetJsonSchemaHandler as GetJsonSchemaHandler\n85-    from .v1 import JsonSchemaValue as JsonSchemaValue\n86-    from .v1 import ModelField as ModelField\n87-    from .v1 import NameEmail as NameEmail\n88-    from .v1 import RequiredParam as RequiredParam\n89-    from .v1 import SecretBytes as SecretBytes\n90-    from .v1 import SecretStr as SecretStr\n91-    from .v1 import Undefined as Undefined\n92-    from .v1 import UndefinedType as UndefinedType\n93-    from .v1 import Url as Url\n94-    from .v1 import ValidationError, create_model\n95-    from .v1 import get_definitions as get_definitions\n96-\n--\n111:        else:\n112-            use_errors.append(error)\n113-    return use_errors\n114-\n115-\n116-def _regenerate_error_with_loc(\n117-    *, errors: Sequence[Any], loc_prefix: tuple[Union[str, int], ...]\n118-) -> list[dict[str, Any]]:\n119-    updated_loc_errors: list[Any] = [\n120-        {**err, \"loc\": loc_prefix + err.get(\"loc\", ())}\n121-        for err in _normalize_errors(errors)\n122-    ]\n123-\n124-    return updated_loc_errors\n", "stderr": "", "exit_code": 0}
24run_command
{
 "command": "cat fastapi/_compat/may_v1.py | grep -n \"class BaseModel:\" -A 10"
}
{"status": "ok", "stdout": "15: class BaseModel:\n16- pass\n17-\n18- class Color:\n19- pass\n20-\n21- class CoreSchema:\n22- pass\n23-\n24- class ErrorWrapper:\
full
{"status": "ok", "stdout": "15:    class BaseModel:\n16-        pass\n17-\n18-    class Color:\n19-        pass\n20-\n21-    class CoreSchema:\n22-        pass\n23-\n24-    class ErrorWrapper:\n25-        pass\n", "stderr": "", "exit_code": 0}
25run_command
{
 "command": "cat fastapi/_compat/v2.py | grep -n \"class BaseModel\" -A 10"
}
{"status": "error", "error_type": "CommandError", "error_message": "", "details": {"stdout": "", "stderr": "", "exit_code": 1}}
full
{"status": "error", "error_type": "CommandError", "error_message": "", "details": {"stdout": "", "stderr": "", "exit_code": 1}}
26run_command
{
 "command": "grep -n \"BaseModel\" fastapi/_compat/v2.py"
}
{"status": "ok", "stdout": "17:from pydantic import BaseModel, ConfigDict, Field, TypeAdapter, create_model\n220: model: BaseModel, mode: Literal[\"json\", \"py
full
{"status": "ok", "stdout": "17:from pydantic import BaseModel, ConfigDict, Field, TypeAdapter, create_model\n220:    model: BaseModel, mode: Literal[\"json\", \"python\"] = \"json\", **kwargs: Any\n225:def _get_model_config(model: BaseModel) -> Any:\n469:) -> type[BaseModel]:\n471:    BodyModel: type[BaseModel] = create_model(model_name, **field_params)  # type: ignore[call-overload]\n475:def get_model_fields(model: type[BaseModel]) -> list[ModelField]:\n479:        if lenient_issubclass(type_, (BaseModel, dict)) or is_dataclass(type_):\n496:TypeModelOrEnum = Union[type[\"BaseModel\"], type[Enum]]\n523:    model: type[\"BaseModel\"], known_models: Union[TypeModelSet, None] = None\n537:            if lenient_issubclass(arg, (BaseModel, Enum)) and arg not in known_models:\n539:                if lenient_issubclass(arg, BaseModel):\n550:    if lenient_issubclass(field_type, BaseModel):\n", "stderr": "", "exit_code": 0}
27run_command
{
 "command": "cat fastapi/_compat/may_v1.py | grep -n \"if sys.version_info >= (3, 14):\" -A 100"
}
{"status": "ok", "stdout": "7:if sys.version_info >= (3, 14):\n8-\n9- class AnyUrl:\n10- pass\n11-\n12- class BaseConfig:\n13- pass\n14-\n15- class BaseModel:\n
full
{"status": "ok", "stdout": "7:if sys.version_info >= (3, 14):\n8-\n9-    class AnyUrl:\n10-        pass\n11-\n12-    class BaseConfig:\n13-        pass\n14-\n15-    class BaseModel:\n16-        pass\n17-\n18-    class Color:\n19-        pass\n20-\n21-    class CoreSchema:\n22-        pass\n23-\n24-    class ErrorWrapper:\n25-        pass\n26-\n27-    class FieldInfo:\n28-        pass\n29-\n30-    class GetJsonSchemaHandler:\n31-        pass\n32-\n33-    class JsonSchemaValue:\n34-        pass\n35-\n36-    class ModelField:\n37-        pass\n38-\n39-    class NameEmail:\n40-        pass\n41-\n42-    class RequiredParam:\n43-        pass\n44-\n45-    class SecretBytes:\n46-        pass\n47-\n48-    class SecretStr:\n49-        pass\n50-\n51-    class Undefined:\n52-        pass\n53-\n54-    class UndefinedType:\n55-        pass\n56-\n57-    class Url:\n58-        pass\n59-\n60-    from .v2 import ValidationError, create_model\n61-\n62-    def get_definitions(\n63-        *,\n64-        fields: list[ModelField],\n65-        model_name_map: ModelNameMap,\n66-        separate_input_output_schemas: bool = True,\n67-    ) -> tuple[\n68-        dict[\n69-            tuple[ModelField, Literal[\"validation\", \"serialization\"]], JsonSchemaValue\n70-        ],\n71-        dict[str, dict[str, Any]],\n72-    ]:\n73-        return {}, {}  # pragma: no cover\n74-\n75-\n76-else:\n77-    from .v1 import AnyUrl as AnyUrl\n78-    from .v1 import BaseConfig as BaseConfig\n79-    from .v1 import BaseModel as BaseModel\n80-    from .v1 import Color as Color\n81-    from .v1 import CoreSchema as CoreSchema\n82-    from .v1 import ErrorWrapper as ErrorWrapper\n83-    from .v1 import FieldInfo as FieldInfo\n84-    from .v1 import GetJsonSchemaHandler as GetJsonSchemaHandler\n85-    from .v1 import JsonSchemaValue as JsonSchemaValue\n86-    from .v1 import ModelField as ModelField\n87-    from .v1 import NameEmail as NameEmail\n88-    from .v1 import RequiredParam as RequiredParam\n89-    f
28run_command
{
 "command": "cat fastapi/_compat/may_v1.py | grep -n \"else:\" -A 30"
}
{"status": "ok", "stdout": "76:else:\n77- from .v1 import AnyUrl as AnyUrl\n78- from .v1 import BaseConfig as BaseConfig\n79- from .v1 import BaseModel as BaseM
full
{"status": "ok", "stdout": "76:else:\n77-    from .v1 import AnyUrl as AnyUrl\n78-    from .v1 import BaseConfig as BaseConfig\n79-    from .v1 import BaseModel as BaseModel\n80-    from .v1 import Color as Color\n81-    from .v1 import CoreSchema as CoreSchema\n82-    from .v1 import ErrorWrapper as ErrorWrapper\n83-    from .v1 import FieldInfo as FieldInfo\n84-    from .v1 import GetJsonSchemaHandler as GetJsonSchemaHandler\n85-    from .v1 import JsonSchemaValue as JsonSchemaValue\n86-    from .v1 import ModelField as ModelField\n87-    from .v1 import NameEmail as NameEmail\n88-    from .v1 import RequiredParam as RequiredParam\n89-    from .v1 import SecretBytes as SecretBytes\n90-    from .v1 import SecretStr as SecretStr\n91-    from .v1 import Undefined as Undefined\n92-    from .v1 import UndefinedType as UndefinedType\n93-    from .v1 import Url as Url\n94-    from .v1 import ValidationError, create_model\n95-    from .v1 import get_definitions as get_definitions\n96-\n97-\n98-RequestErrorModel: type[BaseModel] = create_model(\"Request\")\n99-\n100-\n101-def _normalize_errors(errors: Sequence[Any]) -> list[dict[str, Any]]:\n102-    use_errors: list[Any] = []\n103-    for error in errors:\n104-        if isinstance(error, ErrorWrapper):\n105-            new_errors = ValidationError(\n106-                errors=[error], model=RequestErrorModel\n--\n111:        else:\n112-            use_errors.append(error)\n113-    return use_errors\n114-\n115-\n116-def _regenerate_error_with_loc(\n117-    *, errors: Sequence[Any], loc_prefix: tuple[Union[str, int], ...]\n118-) -> list[dict[str, Any]]:\n119-    updated_loc_errors: list[Any] = [\n120-        {**err, \"loc\": loc_prefix + err.get(\"loc\", ())}\n121-        for err in _normalize_errors(errors)\n122-    ]\n123-\n124-    return updated_loc_errors\n", "stderr": "", "exit_code": 0}
29run_command
{
 "command": "cat fastapi/_compat/v1.py | head -100"
}
{"status": "ok", "stdout": "from collections.abc import Sequence\nfrom copy import copy\nfrom dataclasses import dataclass, is_dataclass\nfrom enum import Enum\
full
{"status": "ok", "stdout": "from collections.abc import Sequence\nfrom copy import copy\nfrom dataclasses import dataclass, is_dataclass\nfrom enum import Enum\nfrom typing import (\n    Any,\n    Callable,\n    Union,\n)\n\nfrom fastapi._compat import shared\nfrom fastapi.openapi.constants import REF_PREFIX as REF_PREFIX\nfrom fastapi.types import ModelNameMap\nfrom pydantic.v1 import BaseConfig as BaseConfig\nfrom pydantic.v1 import BaseModel as BaseModel\nfrom pydantic.v1 import ValidationError as ValidationError\nfrom pydantic.v1 import create_model as create_model\nfrom pydantic.v1.class_validators import Validator as Validator\nfrom pydantic.v1.color import Color as Color\nfrom pydantic.v1.error_wrappers import ErrorWrapper as ErrorWrapper\nfrom pydantic.v1.fields import (\n    SHAPE_FROZENSET,\n    SHAPE_LIST,\n    SHAPE_SEQUENCE,\n    SHAPE_SET,\n    SHAPE_SINGLETON,\n    SHAPE_TUPLE,\n    SHAPE_TUPLE_ELLIPSIS,\n)\nfrom pydantic.v1.fields import FieldInfo as FieldInfo\nfrom pydantic.v1.fields import ModelField as ModelField\nfrom pydantic.v1.fields import Undefined as Undefined\nfrom pydantic.v1.fields import UndefinedType as UndefinedType\nfrom pydantic.v1.networks import AnyUrl as AnyUrl\nfrom pydantic.v1.networks import NameEmail as NameEmail\nfrom pydantic.v1.schema import TypeModelSet as TypeModelSet\nfrom pydantic.v1.schema import field_schema, model_process_schema\nfrom pydantic.v1.schema import (\n    get_annotation_from_field_info as get_annotation_from_field_info,\n)\nfrom pydantic.v1.schema import (\n    get_flat_models_from_field as get_flat_models_from_field,\n)\nfrom pydantic.v1.schema import (\n    get_flat_models_from_fields as get_flat_models_from_fields,\n)\nfrom pydantic.v1.schema import get_model_name_map as get_model_name_map\nfrom pydantic.v1.types import SecretBytes as SecretBytes\nfrom pydantic.v1.types import SecretStr as SecretStr\nfrom pydantic.v1.typing import evaluate_forwardref as evaluate_forwardref\nfrom pydantic.v1.utils impo