diff --git a/sqlalchemy-stubs/sql/schema.pyi b/sqlalchemy-stubs/sql/schema.pyi index 87e5c88..5e24508 100644 --- a/sqlalchemy-stubs/sql/schema.pyi +++ b/sqlalchemy-stubs/sql/schema.pyi @@ -261,7 +261,7 @@ class ForeignKeyConstraint(ColumnCollectionConstraint): use_alter: bool = ... match: Optional[str] = ... elements: List[ForeignKey] = ... - def __init__(self, columns: Sequence[str], refcolumns: Sequence[Union[str, Column[Any]]], name: Optional[str] = ..., + def __init__(self, columns: SequenceType[str], refcolumns: SequenceType[Union[str, Column[Any]]], name: Optional[str] = ..., onupdate: Optional[str] = ..., ondelete: Optional[str] = ..., deferrable: Optional[bool] = ..., initially: Optional[str] = ..., use_alter: bool = ..., link_to_name: bool = ..., match: Optional[str] = ..., table: Optional[Table] = ..., info: Optional[Mapping[str, Any]] = ..., **dialect_kw: Any) -> None: ... @@ -326,12 +326,12 @@ class MetaData(SchemaItem): @property def sorted_tables(self) -> List[Table]: ... def reflect(self, bind: Optional[Connectable] = ..., schema: Optional[str] = ..., views: bool = ..., - only: Optional[Union[Sequence[str], Callable[[str, MetaData], bool]]] = ..., extend_existing: bool = ..., + only: Optional[Union[SequenceType[str], Callable[[str, MetaData], bool]]] = ..., extend_existing: bool = ..., autoload_replace: bool = ..., **dialect_kwargs: Any) -> None: ... def append_ddl_listener(self, event_name: str, listener: Callable[[str, MetaData, Connection], None]) -> None: ... - def create_all(self, bind: Optional[Connectable] = ..., tables: Optional[Sequence[Table]] = ..., + def create_all(self, bind: Optional[Connectable] = ..., tables: Optional[SequenceType[Table]] = ..., checkfirst: bool = ...) -> None: ... - def drop_all(self, bind: Optional[Connectable] = ..., tables: Optional[Sequence[Table]] = ..., + def drop_all(self, bind: Optional[Connectable] = ..., tables: Optional[SequenceType[Table]] = ..., checkfirst: bool = ...) -> None: ... class ThreadLocalMetaData(MetaData): diff --git a/test/test-data/sqlalchemy-sql-schema.test b/test/test-data/sqlalchemy-sql-schema.test index 7339e28..66a1526 100644 --- a/test/test-data/sqlalchemy-sql-schema.test +++ b/test/test-data/sqlalchemy-sql-schema.test @@ -14,3 +14,9 @@ reveal_type(m.bind) # E: Revealed type is 'sqlalchemy.engine.base.Engine' m.bind = c reveal_type(m.bind) # E: Revealed type is 'sqlalchemy.engine.base.Connection' [out] + +[case testSequenceType] +# Regression test - schema.Sequence is not typing.Sequence +from sqlalchemy.sql.schema import ForeignKeyConstraint +ForeignKeyConstraint(["foo", "bar"], ["table.foo", "table.baz"]) +[out]