From ca0d39a783a04ca8e50b15778dcaeaff1edb6c2c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebasti=C3=A1n=20Ram=C3=ADrez?= Date: Sat, 8 Jan 2022 17:31:52 +0100 Subject: [PATCH] =?UTF-8?q?=F0=9F=8E=A8=20Update=20type=20annotations,=20f?= =?UTF-8?q?ix=20mypy=20errors?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- sqlmodel/main.py | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/sqlmodel/main.py b/sqlmodel/main.py index 12f30ba129..4d6d2f2712 100644 --- a/sqlmodel/main.py +++ b/sqlmodel/main.py @@ -6,7 +6,6 @@ from enum import Enum from pathlib import Path from typing import ( - TYPE_CHECKING, AbstractSet, Any, Callable, @@ -24,11 +23,11 @@ cast, ) -from pydantic import BaseModel +from pydantic import BaseConfig, BaseModel from pydantic.errors import ConfigError, DictError from pydantic.fields import FieldInfo as PydanticFieldInfo from pydantic.fields import ModelField, Undefined, UndefinedType -from pydantic.main import BaseConfig, ModelMetaclass, validate_model +from pydantic.main import ModelMetaclass, validate_model from pydantic.typing import ForwardRef, NoArgAnyCallable, resolve_annotations from pydantic.utils import ROOT_KEY, Representation from sqlalchemy import ( @@ -453,7 +452,7 @@ def get_column_from_field(field: ModelField) -> Column: # type: ignore sa_column_kwargs = getattr(field.field_info, "sa_column_kwargs", Undefined) if sa_column_kwargs is not Undefined: kwargs.update(cast(Dict[Any, Any], sa_column_kwargs)) - return Column(sa_type, *args, **kwargs) + return Column(sa_type, *args, **kwargs) # type: ignore class_registry = weakref.WeakValueDictionary() # type: ignore @@ -494,9 +493,6 @@ def __new__(cls, *args: Any, **kwargs: Any) -> Any: def __init__(__pydantic_self__, **data: Any) -> None: # Uses something other than `self` the first arg to allow "self" as a # settable attribute - if TYPE_CHECKING: - __pydantic_self__.__dict__: Dict[str, Any] = {} - __pydantic_self__.__fields_set__: Set[str] = set() values, fields_set, validation_error = validate_model( __pydantic_self__.__class__, data ) @@ -608,7 +604,7 @@ def validate(cls: Type["SQLModel"], value: Any) -> "SQLModel": return cls(**value_as_dict) # From Pydantic, override to only show keys from fields, omit SQLAlchemy attributes - def _calculate_keys( # type: ignore + def _calculate_keys( self, include: Optional[Mapping[Union[int, str], Any]], exclude: Optional[Mapping[Union[int, str], Any]],