From 63973d6af0b7c7153c561abf0753f6113be1de02 Mon Sep 17 00:00:00 2001 From: Simon Willison Date: Thu, 17 Aug 2023 17:05:40 -0700 Subject: [PATCH] Fixed mypy issue, refs #584 --- sqlite_utils/db.py | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/sqlite_utils/db.py b/sqlite_utils/db.py index 1fab77e..de8d1c3 100644 --- a/sqlite_utils/db.py +++ b/sqlite_utils/db.py @@ -156,14 +156,16 @@ XIndexColumn = namedtuple( Trigger = namedtuple("Trigger", ("name", "table", "sql")) -ForeignKeysType = Union[ - Iterable[str], - Iterable[ForeignKey], - Iterable[Tuple[str, str]], - Iterable[Tuple[str, str, str]], - Iterable[Tuple[str, str, str, str]], +ForeignKeyIndicator = Union[ + str, + ForeignKey, + Tuple[str, str], + Tuple[str, str, str], + Tuple[str, str, str, str], ] +ForeignKeysType = Union[Iterable[ForeignKeyIndicator], List[ForeignKeyIndicator]] + class Default: pass @@ -1796,6 +1798,8 @@ class Table(Queryable): rename = rename or {} drop = drop or set() + create_table_foreign_keys: List[ForeignKeyIndicator] = [] + if foreign_keys is not None: if add_foreign_keys is not None: raise ValueError( @@ -1805,7 +1809,7 @@ class Table(Queryable): raise ValueError( "Cannot specify both foreign_keys and drop_foreign_keys" ) - create_table_foreign_keys = foreign_keys + create_table_foreign_keys.extend(foreign_keys) else: # Construct foreign_keys from current, plus add_foreign_keys, minus drop_foreign_keys create_table_foreign_keys = []