From: Yurii Karabas <1998uriyyo@gmail.com> Date: Tue, 14 Nov 2023 16:09:15 +0000 (+0200) Subject: fix lint and mypy errors X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=2b64fce743fe92fb6f11a1ee82952a72517064b9;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git fix lint and mypy errors --- diff --git a/lib/sqlalchemy/engine/cursor.py b/lib/sqlalchemy/engine/cursor.py index b3828361f7..dae898e628 100644 --- a/lib/sqlalchemy/engine/cursor.py +++ b/lib/sqlalchemy/engine/cursor.py @@ -28,7 +28,6 @@ from typing import Optional from typing import Sequence from typing import Tuple from typing import TYPE_CHECKING -from typing import TypeVar from typing import Union from .result import IteratorResult @@ -346,7 +345,7 @@ class CursorResultMetaData(ResultMetaData): def __init__( self, - parent: CursorResult[Any], + parent: CursorResult[Unpack[Tuple[Any, ...]]], cursor_description: _DBAPICursorDescription, ): context = parent.context @@ -930,18 +929,22 @@ class ResultFetchStrategy: alternate_cursor_description: Optional[_DBAPICursorDescription] = None def soft_close( - self, result: CursorResult[Any], dbapi_cursor: Optional[DBAPICursor] + self, + result: CursorResult[Unpack[Tuple[Any, ...]]], + dbapi_cursor: Optional[DBAPICursor], ) -> None: raise NotImplementedError() def hard_close( - self, result: CursorResult[Any], dbapi_cursor: Optional[DBAPICursor] + self, + result: CursorResult[Unpack[Tuple[Any, ...]]], + dbapi_cursor: Optional[DBAPICursor], ) -> None: raise NotImplementedError() def yield_per( self, - result: CursorResult[Any], + result: CursorResult[Unpack[Tuple[Any, ...]]], dbapi_cursor: Optional[DBAPICursor], num: int, ) -> None: @@ -949,7 +952,7 @@ class ResultFetchStrategy: def fetchone( self, - result: CursorResult[Any], + result: CursorResult[Unpack[Tuple[Any, ...]]], dbapi_cursor: DBAPICursor, hard_close: bool = False, ) -> Any: @@ -957,7 +960,7 @@ class ResultFetchStrategy: def fetchmany( self, - result: CursorResult[Any], + result: CursorResult[Unpack[Tuple[Any, ...]]], dbapi_cursor: DBAPICursor, size: Optional[int] = None, ) -> Any: @@ -965,14 +968,14 @@ class ResultFetchStrategy: def fetchall( self, - result: CursorResult[Any], + result: CursorResult[Unpack[Tuple[Any, ...]]], dbapi_cursor: DBAPICursor, ) -> Any: raise NotImplementedError() def handle_exception( self, - result: CursorResult[Any], + result: CursorResult[Unpack[Tuple[Any, ...]]], dbapi_cursor: Optional[DBAPICursor], err: BaseException, ) -> NoReturn: @@ -2110,7 +2113,9 @@ class CursorResult(Result[Unpack[_Ts]]): def _raw_row_iterator(self): return self._fetchiter_impl() - def merge(self, *others: Result[Unpack[Tuple[Any, ...]]]) -> MergedResult[Unpack[Tuple[Any, ...]]]: + def merge( + self, *others: Result[Unpack[Tuple[Any, ...]]] + ) -> MergedResult[Unpack[Tuple[Any, ...]]]: merged_result = super().merge(*others) setup_rowcounts = self.context._has_rowcount if setup_rowcounts: diff --git a/lib/sqlalchemy/engine/default.py b/lib/sqlalchemy/engine/default.py index bd55dd95c3..b1bc37c840 100644 --- a/lib/sqlalchemy/engine/default.py +++ b/lib/sqlalchemy/engine/default.py @@ -1183,7 +1183,9 @@ class DefaultExecutionContext(ExecutionContext): result_column_struct: Optional[ Tuple[List[ResultColumnsEntry], bool, bool, bool, bool] ] = None - returned_default_rows: Optional[Sequence[Row[Unpack[Tuple[Any, ...]]]]] = None + returned_default_rows: Optional[ + Sequence[Row[Unpack[Tuple[Any, ...]]]] + ] = None execution_options: _ExecuteOptions = util.EMPTY_DICT diff --git a/lib/sqlalchemy/engine/result.py b/lib/sqlalchemy/engine/result.py index 07689564a4..5e536323ee 100644 --- a/lib/sqlalchemy/engine/result.py +++ b/lib/sqlalchemy/engine/result.py @@ -45,8 +45,8 @@ from ..util import NONE_SET from ..util._has_cy import HAS_CYEXTENSION from ..util.typing import Literal from ..util.typing import Self -from ..util.typing import Unpack from ..util.typing import TypeVarTuple +from ..util.typing import Unpack if typing.TYPE_CHECKING or not HAS_CYEXTENSION: from ._py_row import tuplegetter as tuplegetter @@ -1352,7 +1352,9 @@ class Result(_WithKeys, ResultInternal[Row[Unpack[_Ts]]]): else: return row - def fetchmany(self, size: Optional[int] = None) -> Sequence[Row[Unpack[_Ts]]]: + def fetchmany( + self, size: Optional[int] = None + ) -> Sequence[Row[Unpack[_Ts]]]: """Fetch many rows. When all rows are exhausted, returns an empty list. @@ -1588,7 +1590,9 @@ class Result(_WithKeys, ResultInternal[Row[Unpack[_Ts]]]): return FrozenResult(self) - def merge(self, *others: Result[Any]) -> MergedResult[Unpack[_Ts]]: + def merge( + self, *others: Result[Unpack[_RawRowType]] + ) -> MergedResult[Unpack[_RawRowType]]: """Merge this :class:`_engine.Result` with other compatible result objects. @@ -1723,7 +1727,9 @@ class ScalarResult(FilterResult[_R]): _post_creational_filter: Optional[Callable[[Any], Any]] - def __init__(self, real_result: Result[Unpack[_RawRowType]], index: _KeyIndexType): + def __init__( + self, real_result: Result[Unpack[_RawRowType]], index: _KeyIndexType + ): self._real_result = real_result if real_result._source_supports_scalars: @@ -2381,7 +2387,9 @@ class MergedResult(IteratorResult[Unpack[_Ts]]): rowcount: Optional[int] def __init__( - self, cursor_metadata: ResultMetaData, results: Sequence[Result[Unpack[_Ts]]] + self, + cursor_metadata: ResultMetaData, + results: Sequence[Result[Unpack[_Ts]]], ): self._results = results super().__init__( diff --git a/lib/sqlalchemy/engine/row.py b/lib/sqlalchemy/engine/row.py index 7e357bb6e6..bb920ead4a 100644 --- a/lib/sqlalchemy/engine/row.py +++ b/lib/sqlalchemy/engine/row.py @@ -22,18 +22,16 @@ from typing import List from typing import Mapping from typing import NoReturn from typing import Optional -from typing import overload from typing import Sequence from typing import Tuple from typing import TYPE_CHECKING from typing import TypeVar -from typing import Union from ..sql import util as sql_util from ..util import deprecated +from ..util._has_cy import HAS_CYEXTENSION from ..util.typing import TypeVarTuple from ..util.typing import Unpack -from ..util._has_cy import HAS_CYEXTENSION if TYPE_CHECKING or not HAS_CYEXTENSION: from ._py_row import BaseRow as BaseRow @@ -41,10 +39,11 @@ else: from sqlalchemy.cyextension.resultproxy import BaseRow as BaseRow if TYPE_CHECKING: + from typing import Tuple as _RowBase + from .result import _KeyType from .result import _ProcessorsType from .result import RMKeyView - from typing import Tuple as _RowBase else: _RowBase = Sequence diff --git a/lib/sqlalchemy/ext/horizontal_shard.py b/lib/sqlalchemy/ext/horizontal_shard.py index 25b897176f..2d0c884943 100644 --- a/lib/sqlalchemy/ext/horizontal_shard.py +++ b/lib/sqlalchemy/ext/horizontal_shard.py @@ -69,7 +69,6 @@ if TYPE_CHECKING: from ..orm.session import ORMExecuteState from ..orm.state import InstanceState from ..sql import Executable - from ..sql._typing import _TP from ..sql.elements import ClauseElement __all__ = ["ShardedSession", "ShardedQuery"] diff --git a/lib/sqlalchemy/sql/util.py b/lib/sqlalchemy/sql/util.py index 15e7da2657..62914fbaa1 100644 --- a/lib/sqlalchemy/sql/util.py +++ b/lib/sqlalchemy/sql/util.py @@ -589,7 +589,9 @@ class _repr_row(_repr_base): __slots__ = ("row",) - def __init__(self, row: Row[Unpack[Tuple[Any, ...]]], max_chars: int = 300): + def __init__( + self, row: Row[Unpack[Tuple[Any, ...]]], max_chars: int = 300 + ): self.row = row self.max_chars = max_chars