From: el <23kaplun@gmail.com> Date: Fri, 28 Mar 2025 12:14:44 +0000 (+0300) Subject: fix AlterColumnOp modify_name ignorance X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=dd103354dcf9cd8db30c66a9a4d3879e4f1c5499;p=thirdparty%2Fsqlalchemy%2Falembic.git fix AlterColumnOp modify_name ignorance fixes https://github.com/sqlalchemy/alembic/issues/1635 --- diff --git a/alembic/autogenerate/render.py b/alembic/autogenerate/render.py index 50c51fa9..ffc277db 100644 --- a/alembic/autogenerate/render.py +++ b/alembic/autogenerate/render.py @@ -505,6 +505,7 @@ def _alter_column( type_ = op.modify_type nullable = op.modify_nullable comment = op.modify_comment + newname = op.modify_name autoincrement = op.kw.get("autoincrement", None) existing_type = op.existing_type existing_nullable = op.existing_nullable @@ -533,6 +534,8 @@ def _alter_column( rendered = _render_server_default(server_default, autogen_context) text += ",\n%sserver_default=%s" % (indent, rendered) + if newname is not None: + text += ",\n%snew_column_name=%r" % (indent, newname) if type_ is not None: text += ",\n%stype_=%s" % (indent, _repr_type(type_, autogen_context)) if nullable is not None: diff --git a/tests/test_autogen_render.py b/tests/test_autogen_render.py index 600e5783..ed31183e 100644 --- a/tests/test_autogen_render.py +++ b/tests/test_autogen_render.py @@ -1327,6 +1327,18 @@ class AutogenRenderTest(TestBase): {"from mypackage import MySpecialType"}, ) + def test_render_modify_name(self): + op_obj = ops.AlterColumnOp( + "sometable", + "somecolumn", + modify_name="newcolumnname", + ) + eq_ignore_whitespace( + autogenerate.render_op_text(self.autogen_context, op_obj), + "op.alter_column('sometable', 'somecolumn', " + "new_column_name='newcolumnname')", + ) + def test_render_modify_type(self): op_obj = ops.AlterColumnOp( "sometable",