diff --git a/ormar/fields/base.py b/ormar/fields/base.py index 7f6cee669..79a43561e 100644 --- a/ormar/fields/base.py +++ b/ormar/fields/base.py @@ -1,8 +1,7 @@ import warnings -from typing import TYPE_CHECKING, Any, Dict, List, Optional, Type, Union +from typing import TYPE_CHECKING, Any, Dict, List, Optional, Type, Union, Sequence import sqlalchemy -from pydantic import typing from pydantic.fields import FieldInfo, _Unset import ormar # noqa I101 @@ -15,6 +14,11 @@ if TYPE_CHECKING: # pragma no cover from ormar.models import Model, NewBaseModel + from pydantic.fields import FieldInfo + + delattr(FieldInfo, "exclude") +else: + from pydantic.fields import FieldInfo class BaseField(FieldInfo): @@ -54,7 +58,7 @@ def __init__(self, **kwargs: Any) -> None: "https://collerek.github.io/ormar/fields/pydantic-fields", DeprecationWarning, ) - self.choices: typing.Sequence = kwargs.pop("choices", False) + self.choices: Sequence = kwargs.pop("choices", False) self.virtual: bool = kwargs.pop( "virtual", None diff --git a/ormar/fields/many_to_many.py b/ormar/fields/many_to_many.py index 2739eda60..c80e4759d 100644 --- a/ormar/fields/many_to_many.py +++ b/ormar/fields/many_to_many.py @@ -25,10 +25,7 @@ from ormar.models import Model, T from ormar.relations.relation_proxy import RelationProxy - if sys.version_info < (3, 7): - ToType = Type["T"] - else: - ToType = Union[Type["T"], "ForwardRef"] + ToType = Union[Type["T"], "ForwardRef"] REF_PREFIX = "#/components/schemas/" diff --git a/ormar/models/ormar_config.py b/ormar/models/ormar_config.py index 4130fa318..c2a825415 100644 --- a/ormar/models/ormar_config.py +++ b/ormar/models/ormar_config.py @@ -14,7 +14,7 @@ class OrmarConfig: - if TYPE_CHECKING: + if TYPE_CHECKING: # pragma: no cover pkname: str metadata: sqlalchemy.MetaData database: databases.Database