From c83eb4d16824681293854b42e047601648be0029 Mon Sep 17 00:00:00 2001 From: tsimafeip Date: Tue, 24 Aug 2021 15:29:51 -0400 Subject: [PATCH] Avoid mutable object as default values Fixes: #6915 Closes: #6916 Pull-request: https://github.com/sqlalchemy/sqlalchemy/pull/6916 Pull-request-sha: 6ec484d3d14b7dd7053d10a5d550bd74eb524c8b Change-Id: I2c87fbed44870110e35a69ee9a9e678671eeb8f0 --- lib/sqlalchemy/engine/url.py | 2 +- lib/sqlalchemy/sql/ddl.py | 2 +- lib/sqlalchemy/util/compat.py | 3 +++ 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/sqlalchemy/engine/url.py b/lib/sqlalchemy/engine/url.py index d72654c733..b924f1c730 100644 --- a/lib/sqlalchemy/engine/url.py +++ b/lib/sqlalchemy/engine/url.py @@ -655,7 +655,7 @@ class URL( dialect_cls = entrypoint.get_dialect_cls(self) return dialect_cls - def translate_connect_args(self, names=[], **kw): + def translate_connect_args(self, names=None, **kw): r"""Translate url attributes into a dictionary of connection arguments. Returns attributes of this url (`host`, `database`, `username`, diff --git a/lib/sqlalchemy/sql/ddl.py b/lib/sqlalchemy/sql/ddl.py index 233e79f7c5..f8985548ee 100644 --- a/lib/sqlalchemy/sql/ddl.py +++ b/lib/sqlalchemy/sql/ddl.py @@ -1081,7 +1081,7 @@ class SchemaDropper(DDLBase): table, drop_ok=False, _is_metadata_operation=False, - _ignore_sequences=[], + _ignore_sequences=(), ): if not drop_ok and not self._can_drop_table(table): return diff --git a/lib/sqlalchemy/util/compat.py b/lib/sqlalchemy/util/compat.py index 5d52f740fc..5914e8681a 100644 --- a/lib/sqlalchemy/util/compat.py +++ b/lib/sqlalchemy/util/compat.py @@ -392,6 +392,9 @@ if py3k: """ + kwonlydefaults = kwonlydefaults or {} + annotations = annotations or {} + def formatargandannotation(arg): result = formatarg(arg) if arg in annotations: -- 2.47.2