summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--CHANGES6
-rw-r--r--alembic/__init__.py2
-rw-r--r--alembic/autogenerate.py2
-rw-r--r--tests/test_autogenerate.py8
4 files changed, 16 insertions, 2 deletions
diff --git a/CHANGES b/CHANGES
index 5d6e7c2..421ffc7 100644
--- a/CHANGES
+++ b/CHANGES
@@ -1,3 +1,9 @@
+0.3.5
+=====
+- [bug] Fixed issue whereby reflected server defaults
+ wouldn't be quoted correctly; uses repr() now.
+ #31
+
0.3.4
=====
- [bug] Fixed command-line bug introduced by the
diff --git a/alembic/__init__.py b/alembic/__init__.py
index 81898ff..e761d54 100644
--- a/alembic/__init__.py
+++ b/alembic/__init__.py
@@ -1,6 +1,6 @@
from os import path
-__version__ = '0.3.4'
+__version__ = '0.3.5'
package_dir = path.abspath(path.dirname(__file__))
diff --git a/alembic/autogenerate.py b/alembic/autogenerate.py
index 1b03604..2b6f2d8 100644
--- a/alembic/autogenerate.py
+++ b/alembic/autogenerate.py
@@ -497,7 +497,7 @@ def _render_server_default(default, autogen_context):
# tests to pass until we figure out
# WTF sqlite is doing
default = re.sub(r"^'|'$", "", default)
- return "'%s'" % default
+ return repr(default)
else:
return None
diff --git a/tests/test_autogenerate.py b/tests/test_autogenerate.py
index 5d4a06f..1b9e8fc 100644
--- a/tests/test_autogenerate.py
+++ b/tests/test_autogenerate.py
@@ -418,6 +418,14 @@ class AutogenRenderTest(TestCase):
"op.drop_column('foo', 'x')"
)
+ def test_render_quoted_server_default(self):
+ eq_(
+ autogenerate._render_server_default(
+ "nextval('group_to_perm_group_to_perm_id_seq'::regclass)",
+ self.autogen_context),
+ '"nextval(\'group_to_perm_group_to_perm_id_seq\'::regclass)"'
+ )
+
def test_render_modify_type(self):
eq_ignore_whitespace(
autogenerate._modify_col(