diff options
Diffstat (limited to 'alembic/autogenerate/compare.py')
-rw-r--r-- | alembic/autogenerate/compare.py | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/alembic/autogenerate/compare.py b/alembic/autogenerate/compare.py index cc12dae..d97bc62 100644 --- a/alembic/autogenerate/compare.py +++ b/alembic/autogenerate/compare.py @@ -16,8 +16,15 @@ log = logging.getLogger(__name__) def _populate_migration_script(autogen_context, migration_script): - _produce_net_changes(autogen_context, migration_script.upgrade_ops) - migration_script.upgrade_ops.reverse_into(migration_script.downgrade_ops) + if isinstance(migration_script.upgrade_ops, list): + upgrade_ops = migration_script.upgrade_ops[-1] + downgrade_ops = migration_script.downgrade_ops[-1] + else: + upgrade_ops = migration_script.upgrade_ops + downgrade_ops = migration_script.downgrade_ops + + _produce_net_changes(autogen_context, upgrade_ops) + upgrade_ops.reverse_into(downgrade_ops) comparators = util.Dispatcher(uselist=True) |