diff --git a/doc/build/changelog/unreleased_11/4126.rst b/doc/build/changelog/unreleased_11/4126.rst new file mode 100644 index 0000000000..f269f1cd53 --- /dev/null +++ b/doc/build/changelog/unreleased_11/4126.rst @@ -0,0 +1,7 @@ +.. change:: + :tags: bug, sql + :tickets: 4126 + :versions: 1.2.0b4 + + Fixed bug where ``__repr__`` of :class:`.ColumnDefault` would fail + if the argument were a tuple. Pull request courtesy Nicolas Caniart. \ No newline at end of file diff --git a/lib/sqlalchemy/sql/schema.py b/lib/sqlalchemy/sql/schema.py index 592dc390d3..68baa80b66 100644 --- a/lib/sqlalchemy/sql/schema.py +++ b/lib/sqlalchemy/sql/schema.py @@ -2081,7 +2081,7 @@ class ColumnDefault(DefaultGenerator): __visit_name__ = property(_visit_name) def __repr__(self): - return "ColumnDefault(%r)" % self.arg + return "ColumnDefault(%r)" % (self.arg, ) class Sequence(DefaultGenerator): diff --git a/test/sql/test_metadata.py b/test/sql/test_metadata.py index 61fbbc57b4..5fac032fa5 100644 --- a/test/sql/test_metadata.py +++ b/test/sql/test_metadata.py @@ -550,6 +550,7 @@ class MetaDataTest(fixtures.TestBase, ComparesTables): "CheckConstraint(" "%s" ", name='someconstraint')" % repr(ck.sqltext)), + (ColumnDefault(('foo', 'bar')), "ColumnDefault(('foo', 'bar'))") ): eq_( repr(const),