From ea6012500cfc83e23419e67b2f2bc50e0f7e1738 Mon Sep 17 00:00:00 2001 From: Pádraig Brady Date: Dec 19 2013 13:27:35 +0000 Subject: update to latest upstream (0.8.2) --- diff --git a/.gitignore b/.gitignore index dc235e1..051849c 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ sqlalchemy-migrate-0.5.4.tar.gz sqlalchemy-migrate-0.6.tar.gz /sqlalchemy-migrate-0.7.1.tar.gz /sqlalchemy-migrate-0.7.2.tar.gz +/sqlalchemy-migrate-0.8.2.tar.gz diff --git a/migrate-test-int-overflow.patch b/migrate-test-int-overflow.patch deleted file mode 100644 index f21d70e..0000000 --- a/migrate-test-int-overflow.patch +++ /dev/null @@ -1,31 +0,0 @@ -Don't use __cmp__ which is deprecated and retricted to C long integers, -rather than python's arbitrary precision ints -diff -Naur sqlalchemy-migrate-0.7.2.orig/migrate/versioning/version.py sqlalchemy-migrate-0.7.2/migrate/versioning/version.py ---- sqlalchemy-migrate-0.7.2.orig/migrate/versioning/version.py 2011-10-28 15:11:43.000000000 +0000 -+++ sqlalchemy-migrate-0.7.2/migrate/versioning/version.py 2012-12-21 10:52:09.864223682 +0000 -@@ -37,8 +37,23 @@ - def __sub__(self, value): - return self + (int(value) * -1) - -- def __cmp__(self, value): -- return int(self) - int(value) -+ def __eq__(self, value): -+ return int(self) == int(value) -+ -+ def __ne__(self, value): -+ return int(self) != int(value) -+ -+ def __lt__(self, value): -+ return int(self) < int(value) -+ -+ def __gt__(self, value): -+ return int(self) > int(value) -+ -+ def __ge__(self, value): -+ return int(self) >= int(value) -+ -+ def __le__(self, value): -+ return int(self) <= int(value) - - def __repr__(self): - return "" % self.value diff --git a/python-migrate-sqlalchemy-0.8.patch b/python-migrate-sqlalchemy-0.8.patch deleted file mode 100644 index a14a096..0000000 --- a/python-migrate-sqlalchemy-0.8.patch +++ /dev/null @@ -1,143 +0,0 @@ -Combination of 0.8 compat patches. - -All are currently after 0.7.2 tag at: -https://github.com/stackforge/sqlalchemy-migrate - -Also included is this adjustment: -https://review.openstack.org/#/c/47847/ - -diff -Naur sqlalchemy-migrate-0.7.2.orig/migrate/tests/changeset/test_changeset.py sqlalchemy-migrate-0.7.2/migrate/tests/changeset/test_changeset.py ---- sqlalchemy-migrate-0.7.2.orig/migrate/tests/changeset/test_changeset.py 2011-10-28 15:11:43.000000000 +0000 -+++ sqlalchemy-migrate-0.7.2/migrate/tests/changeset/test_changeset.py 2013-03-11 11:45:29.066638792 +0000 -@@ -560,7 +560,7 @@ - self.table.drop() - try: - self.table.create() -- except sqlalchemy.exceptions.SQLError, e: -+ except sqlalchemy.exc.SQLError, e: - # SQLite: database schema has changed - if not self.url.startswith('sqlite://'): - raise -@@ -569,7 +569,7 @@ - if self.table.exists(): - try: - self.table.drop(self.engine) -- except sqlalchemy.exceptions.SQLError,e: -+ except sqlalchemy.exc.SQLError,e: - # SQLite: database schema has changed - if not self.url.startswith('sqlite://'): - raise -diff -Naur sqlalchemy-migrate-0.7.2.orig/migrate/versioning/schema.py sqlalchemy-migrate-0.7.2/migrate/versioning/schema.py ---- sqlalchemy-migrate-0.7.2.orig/migrate/versioning/schema.py 2011-10-28 15:11:43.000000000 +0000 -+++ sqlalchemy-migrate-0.7.2/migrate/versioning/schema.py 2013-03-11 11:44:45.769557705 +0000 -@@ -7,7 +7,7 @@ - from sqlalchemy import (Table, Column, MetaData, String, Text, Integer, - create_engine) - from sqlalchemy.sql import and_ --from sqlalchemy import exceptions as sa_exceptions -+from sqlalchemy import exc as sa_exceptions - from sqlalchemy.sql import bindparam - - from migrate import exceptions -diff -Naur sqlalchemy-migrate-0.7.2.orig/migrate/changeset/ansisql.py sqlalchemy-migrate-0.7.2/migrate/changeset/ansisql.py ---- sqlalchemy-migrate-0.7.2.orig/migrate/changeset/ansisql.py 2011-10-28 15:11:43.000000000 +0000 -+++ sqlalchemy-migrate-0.7.2/migrate/changeset/ansisql.py 2013-09-23 11:34:18.656844658 +0000 -@@ -171,8 +171,8 @@ - self.preparer.quote( - self._validate_identifier( - index.new_name, True), index.quote))) -- else: -- # SA >= 0.6.5 -+ elif hasattr(self, '_index_identifier'): -+ # SA >= 0.6.5, < 0.8 - self.append("ALTER INDEX %s RENAME TO %s" % ( - self.preparer.quote( - self._index_identifier( -@@ -180,6 +180,22 @@ - self.preparer.quote( - self._index_identifier( - index.new_name), index.quote))) -+ else: -+ # SA >= 0.8 -+ class NewName(object): -+ """Map obj.name -> obj.new_name""" -+ def __init__(self, index): -+ self.name = index.new_name -+ self._obj = index -+ -+ def __getattr__(self, attr): -+ if attr == 'name': -+ return getattr(self, attr) -+ return getattr(self._obj, attr) -+ -+ self.append("ALTER INDEX %s RENAME TO %s" % ( -+ self._prepared_index_name(index), -+ self._prepared_index_name(NewName(index)))) - self.execute() - - def visit_column(self, delta): -diff -Naur sqlalchemy-migrate-0.7.2.orig_reflect/migrate/tests/fixture/database.py sqlalchemy-migrate-0.7.2.reflect/migrate/tests/fixture/database.py ---- sqlalchemy-migrate-0.7.2.orig_reflect/migrate/tests/fixture/database.py 2011-10-28 15:11:43.000000000 +0000 -+++ sqlalchemy-migrate-0.7.2.reflect/migrate/tests/fixture/database.py 2013-09-23 12:20:26.022608233 +0000 -@@ -128,7 +128,8 @@ - def _setup(self, url): - self._connect(url) - # make sure there are no tables lying around -- meta = MetaData(self.engine, reflect=True) -+ meta = MetaData(self.engine) -+ meta.reflect() - meta.drop_all() - - def _teardown(self): -diff -Naur sqlalchemy-migrate-0.7.2.orig_reflect/migrate/tests/versioning/test_genmodel.py sqlalchemy-migrate-0.7.2.reflect/migrate/tests/versioning/test_genmodel.py ---- sqlalchemy-migrate-0.7.2.orig_reflect/migrate/tests/versioning/test_genmodel.py 2011-10-28 15:11:43.000000000 +0000 -+++ sqlalchemy-migrate-0.7.2.reflect/migrate/tests/versioning/test_genmodel.py 2013-09-23 12:21:42.254900961 +0000 -@@ -18,9 +18,11 @@ - - def _setup(self, url): - super(TestSchemaDiff, self)._setup(url) -- self.meta = MetaData(self.engine, reflect=True) -+ self.meta = MetaData(self.engine) -+ self.meta.reflect() - self.meta.drop_all() # in case junk tables are lying around in the test database -- self.meta = MetaData(self.engine, reflect=True) # needed if we just deleted some tables -+ self.meta = MetaData(self.engine) # needed if we just deleted some tables -+ self.meta.reflect() - self.table = Table(self.table_name, self.meta, - Column('id',Integer(), primary_key=True), - Column('name', UnicodeText()), -@@ -29,7 +31,8 @@ - - def _teardown(self): - if self.table.exists(): -- self.meta = MetaData(self.engine, reflect=True) -+ self.meta = MetaData(self.engine) -+ self.meta.reflect() - self.meta.drop_all() - super(TestSchemaDiff, self)._teardown() - -diff -Naur sqlalchemy-migrate-0.7.2.orig_reflect/migrate/tests/versioning/test_shell.py sqlalchemy-migrate-0.7.2.reflect/migrate/tests/versioning/test_shell.py ---- sqlalchemy-migrate-0.7.2.orig_reflect/migrate/tests/versioning/test_shell.py 2013-09-11 23:46:46.288846726 +0000 -+++ sqlalchemy-migrate-0.7.2.reflect/migrate/tests/versioning/test_shell.py 2013-09-23 12:20:41.229666598 +0000 -@@ -461,7 +461,7 @@ - old_model_module = 'migrate.tests.fixture.models:meta_old_rundiffs' - - # Create empty repository. -- self.meta = MetaData(self.engine, reflect=True) -+ self.meta = MetaData(self.engine) - self.meta.reflect() - self.meta.drop_all() # in case junk tables are lying around in the test database - -diff -Naur sqlalchemy-migrate-0.7.2.orig_reflect/migrate/versioning/schemadiff.py sqlalchemy-migrate-0.7.2.reflect/migrate/versioning/schemadiff.py ---- sqlalchemy-migrate-0.7.2.orig_reflect/migrate/versioning/schemadiff.py 2011-10-28 15:11:43.000000000 +0000 -+++ sqlalchemy-migrate-0.7.2.reflect/migrate/versioning/schemadiff.py 2013-09-23 12:20:06.302532576 +0000 -@@ -16,7 +16,8 @@ - :return: object which will evaluate to :keyword:`True` if there \ - are differences else :keyword:`False`. - """ -- db_metadata = sqlalchemy.MetaData(engine, reflect=True) -+ db_metadata = sqlalchemy.MetaData(engine) -+ db_metadata.reflect() - - # sqlite will include a dynamically generated 'sqlite_sequence' table if - # there are autoincrement sequences in the database; this should not be diff --git a/python-migrate-sqlalchemy-migrate.patch b/python-migrate-sqlalchemy-migrate.patch index f181d3a..7ade35e 100644 --- a/python-migrate-sqlalchemy-migrate.patch +++ b/python-migrate-sqlalchemy-migrate.patch @@ -1,7 +1,7 @@ -diff -up sqlalchemy-migrate-0.7.2/migrate/tests/fixture/shell.py.rename sqlalchemy-migrate-0.7.2/migrate/tests/fixture/shell.py ---- sqlalchemy-migrate-0.7.2/migrate/tests/fixture/shell.py.rename 2011-11-08 15:53:44.296081010 +0100 -+++ sqlalchemy-migrate-0.7.2/migrate/tests/fixture/shell.py 2011-11-08 15:53:44.301081040 +0100 -@@ -25,9 +25,9 @@ class Shell(Pathed): +diff -Naur sqlalchemy-migrate-0.8.2.orig/migrate/tests/fixture/shell.py sqlalchemy-migrate-0.8.2/migrate/tests/fixture/shell.py +--- sqlalchemy-migrate-0.8.2.orig/migrate/tests/fixture/shell.py 2013-12-19 12:43:28.862668311 +0000 ++++ sqlalchemy-migrate-0.8.2/migrate/tests/fixture/shell.py 2013-12-19 13:08:10.487109108 +0000 +@@ -25,9 +25,9 @@ ) def run_version(self, repos_path): @@ -13,10 +13,10 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/fixture/shell.py.rename sqlalche - result = self.env.run('migrate db_version %s %s' % (url, repos_path)) + result = self.env.run('sqlalchemy-migrate db_version %s %s' % (url, repos_path)) return int(result.stdout.strip()) -diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py ---- sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename 2011-11-08 15:53:44.298081022 +0100 -+++ sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py 2011-11-08 16:01:22.408916690 +0100 -@@ -21,15 +21,15 @@ class TestShellCommands(Shell): +diff -Naur sqlalchemy-migrate-0.8.2.orig/migrate/tests/versioning/test_shell.py sqlalchemy-migrate-0.8.2/migrate/tests/versioning/test_shell.py +--- sqlalchemy-migrate-0.8.2.orig/migrate/tests/versioning/test_shell.py 2013-12-19 12:43:28.865668350 +0000 ++++ sqlalchemy-migrate-0.8.2/migrate/tests/versioning/test_shell.py 2013-12-19 13:08:10.488109123 +0000 +@@ -20,15 +20,15 @@ def test_help(self): """Displays default help dialog""" @@ -36,7 +36,7 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename self.assertTrue(isinstance(result.stdout, basestring)) self.assertTrue(result.stdout) self.assertFalse(result.stderr) -@@ -37,10 +37,10 @@ class TestShellCommands(Shell): +@@ -36,10 +36,10 @@ def test_shutdown_logging(self): """Try to shutdown logging output""" repos = self.tmp_repos() @@ -50,7 +50,7 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename self.assertEqual(result.stdout, '') # TODO: assert logging messages to 0 -@@ -94,7 +94,7 @@ class TestShellCommands(Shell): +@@ -93,7 +93,7 @@ repos = self.tmp_repos() # Creating a file that doesn't exist should succeed @@ -59,7 +59,7 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename # Files should actually be created self.assert_(os.path.exists(repos)) -@@ -104,35 +104,35 @@ class TestShellCommands(Shell): +@@ -103,35 +103,35 @@ self.assertNotEquals(repos_.config.get('db_settings', 'version_table'), 'None') # Can't create it again: it already exists @@ -103,7 +103,7 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename self.assert_(os.path.exists('%s/versions/002_foo_postgres_upgrade.sql' % repos)) self.assert_(os.path.exists('%s/versions/002_foo_postgres_downgrade.sql' % repos)) -@@ -144,7 +144,7 @@ class TestShellCommands(Shell): +@@ -143,7 +143,7 @@ self.assert_(not os.path.exists(script)) # No attempt is made to verify correctness of the repository path here @@ -112,7 +112,7 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename self.assert_(os.path.exists(script)) -@@ -155,41 +155,41 @@ class TestShellRepository(Shell): +@@ -154,41 +154,41 @@ """Create repository, python change script""" super(TestShellRepository, self).setUp() self.path_repos = self.tmp_repos() @@ -163,7 +163,7 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename (filename, self.path_repos)) self.assert_(os.path.exists(filename)) fd = open(filename) -@@ -209,17 +209,17 @@ class TestShellDatabase(Shell, DB): +@@ -208,17 +208,17 @@ """Ensure we can set version control on a database""" path_repos = repos = self.tmp_repos() url = self.url @@ -186,7 +186,7 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename % locals(), expect_error=True) self.assertEqual(result.returncode, 1) -@@ -228,41 +228,41 @@ class TestShellDatabase(Shell, DB): +@@ -227,41 +227,41 @@ """Commands with default arguments set by manage.py""" path_repos = repos = self.tmp_repos() url = self.url @@ -239,13 +239,13 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename @usedb() def test_upgrade(self): -@@ -270,67 +270,67 @@ class TestShellDatabase(Shell, DB): +@@ -269,67 +269,67 @@ # Create a repository repos_name = 'repos_name' repos_path = self.tmp() - result = self.env.run('migrate create %(repos_path)s %(repos_name)s' % locals()) + result = self.env.run('sqlalchemy-migrate create %(repos_path)s %(repos_name)s' % locals()) - self.assertEquals(self.run_version(repos_path), 0) + self.assertEqual(self.run_version(repos_path), 0) # Version the DB - result = self.env.run('migrate drop_version_control %s %s' % (self.url, repos_path), expect_error=True) @@ -254,25 +254,25 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename + result = self.env.run('sqlalchemy-migrate version_control %s %s' % (self.url, repos_path)) # Upgrades with latest version == 0 - self.assertEquals(self.run_db_version(self.url, repos_path), 0) + self.assertEqual(self.run_db_version(self.url, repos_path), 0) - result = self.env.run('migrate upgrade %s %s' % (self.url, repos_path)) + result = self.env.run('sqlalchemy-migrate upgrade %s %s' % (self.url, repos_path)) - self.assertEquals(self.run_db_version(self.url, repos_path), 0) + self.assertEqual(self.run_db_version(self.url, repos_path), 0) - result = self.env.run('migrate upgrade %s %s' % (self.url, repos_path)) + result = self.env.run('sqlalchemy-migrate upgrade %s %s' % (self.url, repos_path)) - self.assertEquals(self.run_db_version(self.url, repos_path), 0) + self.assertEqual(self.run_db_version(self.url, repos_path), 0) - result = self.env.run('migrate upgrade %s %s 1' % (self.url, repos_path), expect_error=True) + result = self.env.run('sqlalchemy-migrate upgrade %s %s 1' % (self.url, repos_path), expect_error=True) - self.assertEquals(result.returncode, 1) + self.assertEqual(result.returncode, 1) - result = self.env.run('migrate upgrade %s %s -1' % (self.url, repos_path), expect_error=True) + result = self.env.run('sqlalchemy-migrate upgrade %s %s -1' % (self.url, repos_path), expect_error=True) - self.assertEquals(result.returncode, 2) + self.assertEqual(result.returncode, 2) # Add a script to the repository; upgrade the db - result = self.env.run('migrate script Desc --repository=%s' % (repos_path)) + result = self.env.run('sqlalchemy-migrate script Desc --repository=%s' % (repos_path)) - self.assertEquals(self.run_version(repos_path), 1) - self.assertEquals(self.run_db_version(self.url, repos_path), 0) + self.assertEqual(self.run_version(repos_path), 1) + self.assertEqual(self.run_db_version(self.url, repos_path), 0) # Test preview - result = self.env.run('migrate upgrade %s %s 0 --preview_sql' % (self.url, repos_path)) @@ -282,28 +282,28 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename - result = self.env.run('migrate upgrade %s %s' % (self.url, repos_path)) + result = self.env.run('sqlalchemy-migrate upgrade %s %s' % (self.url, repos_path)) - self.assertEquals(self.run_db_version(self.url, repos_path), 1) + self.assertEqual(self.run_db_version(self.url, repos_path), 1) # Downgrade must have a valid version specified - result = self.env.run('migrate downgrade %s %s' % (self.url, repos_path), expect_error=True) + result = self.env.run('sqlalchemy-migrate downgrade %s %s' % (self.url, repos_path), expect_error=True) - self.assertEquals(result.returncode, 2) + self.assertEqual(result.returncode, 2) - result = self.env.run('migrate downgrade %s %s -1' % (self.url, repos_path), expect_error=True) + result = self.env.run('sqlalchemy-migrate downgrade %s %s -1' % (self.url, repos_path), expect_error=True) - self.assertEquals(result.returncode, 2) + self.assertEqual(result.returncode, 2) - result = self.env.run('migrate downgrade %s %s 2' % (self.url, repos_path), expect_error=True) + result = self.env.run('sqlalchemy-migrate downgrade %s %s 2' % (self.url, repos_path), expect_error=True) - self.assertEquals(result.returncode, 2) - self.assertEquals(self.run_db_version(self.url, repos_path), 1) + self.assertEqual(result.returncode, 2) + self.assertEqual(self.run_db_version(self.url, repos_path), 1) - result = self.env.run('migrate downgrade %s %s 0' % (self.url, repos_path)) + result = self.env.run('sqlalchemy-migrate downgrade %s %s 0' % (self.url, repos_path)) - self.assertEquals(self.run_db_version(self.url, repos_path), 0) + self.assertEqual(self.run_db_version(self.url, repos_path), 0) - result = self.env.run('migrate downgrade %s %s 1' % (self.url, repos_path), expect_error=True) + result = self.env.run('sqlalchemy-migrate downgrade %s %s 1' % (self.url, repos_path), expect_error=True) - self.assertEquals(result.returncode, 2) - self.assertEquals(self.run_db_version(self.url, repos_path), 0) + self.assertEqual(result.returncode, 2) + self.assertEqual(self.run_db_version(self.url, repos_path), 0) - result = self.env.run('migrate drop_version_control %s %s' % (self.url, repos_path)) + result = self.env.run('sqlalchemy-migrate drop_version_control %s %s' % (self.url, repos_path)) @@ -319,30 +319,30 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename + result = self.env.run('sqlalchemy-migrate create %s %s' % (repos_path, repos_name)) + result = self.env.run('sqlalchemy-migrate drop_version_control %s %s' % (self.url, repos_path), expect_error=True) + result = self.env.run('sqlalchemy-migrate version_control %s %s' % (self.url, repos_path)) - self.assertEquals(self.run_version(repos_path), 0) - self.assertEquals(self.run_db_version(self.url, repos_path), 0) + self.assertEqual(self.run_version(repos_path), 0) + self.assertEqual(self.run_db_version(self.url, repos_path), 0) beforeCount = len(os.listdir(os.path.join(repos_path, 'versions'))) # hmm, this number changes sometimes based on running from svn - result = self.env.run('migrate script_sql %s --repository=%s' % ('postgres', repos_path)) + result = self.env.run('sqlalchemy-migrate script_sql %s --repository=%s' % ('postgres', repos_path)) - self.assertEquals(self.run_version(repos_path), 1) - self.assertEquals(len(os.listdir(os.path.join(repos_path, 'versions'))), beforeCount + 2) + self.assertEqual(self.run_version(repos_path), 1) + self.assertEqual(len(os.listdir(os.path.join(repos_path, 'versions'))), beforeCount + 2) -@@ -340,11 +340,11 @@ class TestShellDatabase(Shell, DB): - self.assertEquals(self.run_db_version(self.url, repos_path), 0) +@@ -339,11 +339,11 @@ + self.assertEqual(self.run_db_version(self.url, repos_path), 0) self.assertRaises(Exception, self.engine.text('select * from t_table').execute) - result = self.env.run('migrate upgrade %s %s' % (self.url, repos_path)) + result = self.env.run('sqlalchemy-migrate upgrade %s %s' % (self.url, repos_path)) - self.assertEquals(self.run_db_version(self.url, repos_path), 1) + self.assertEqual(self.run_db_version(self.url, repos_path), 1) self.engine.text('select * from t_table').execute() - result = self.env.run('migrate downgrade %s %s 0' % (self.url, repos_path)) + result = self.env.run('sqlalchemy-migrate downgrade %s %s 0' % (self.url, repos_path)) - self.assertEquals(self.run_db_version(self.url, repos_path), 0) + self.assertEqual(self.run_db_version(self.url, repos_path), 0) self.assertRaises(Exception, self.engine.text('select * from t_table').execute) -@@ -384,15 +384,15 @@ class TestShellDatabase(Shell, DB): +@@ -383,15 +383,15 @@ repos_name = 'repos_name' repos_path = self.tmp() @@ -352,36 +352,36 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename + result = self.env.run('sqlalchemy-migrate create repository_name --repository=%s' % repos_path) + result = self.env.run('sqlalchemy-migrate drop_version_control %s %s' % (self.url, repos_path), expect_error=True) + result = self.env.run('sqlalchemy-migrate version_control %s %s' % (self.url, repos_path)) - self.assertEquals(self.run_version(repos_path), 0) - self.assertEquals(self.run_db_version(self.url, repos_path), 0) + self.assertEqual(self.run_version(repos_path), 0) + self.assertEqual(self.run_db_version(self.url, repos_path), 0) # Empty script should succeed - result = self.env.run('migrate script Desc %s' % repos_path) - result = self.env.run('migrate test %s %s' % (self.url, repos_path)) + result = self.env.run('sqlalchemy-migrate script Desc %s' % repos_path) + result = self.env.run('sqlalchemy-migrate test %s %s' % (self.url, repos_path)) - self.assertEquals(self.run_version(repos_path), 1) - self.assertEquals(self.run_db_version(self.url, repos_path), 0) + self.assertEqual(self.run_version(repos_path), 1) + self.assertEqual(self.run_db_version(self.url, repos_path), 0) -@@ -414,7 +414,7 @@ class TestShellDatabase(Shell, DB): +@@ -413,7 +413,7 @@ file.write(script_text) file.close() - result = self.env.run('migrate test %s %s bla' % (self.url, repos_path), expect_error=True) + result = self.env.run('sqlalchemy-migrate test %s %s bla' % (self.url, repos_path), expect_error=True) self.assertEqual(result.returncode, 2) - self.assertEquals(self.run_version(repos_path), 1) - self.assertEquals(self.run_db_version(self.url, repos_path), 0) -@@ -445,7 +445,7 @@ class TestShellDatabase(Shell, DB): + self.assertEqual(self.run_version(repos_path), 1) + self.assertEqual(self.run_db_version(self.url, repos_path), 0) +@@ -444,7 +444,7 @@ file = open(script_path, 'w') file.write(script_text) file.close() - result = self.env.run('migrate test %s %s' % (self.url, repos_path)) + result = self.env.run('sqlalchemy-migrate test %s %s' % (self.url, repos_path)) - self.assertEquals(self.run_version(repos_path), 1) - self.assertEquals(self.run_db_version(self.url, repos_path), 0) + self.assertEqual(self.run_version(repos_path), 1) + self.assertEqual(self.run_db_version(self.url, repos_path), 0) -@@ -465,19 +465,19 @@ class TestShellDatabase(Shell, DB): +@@ -464,19 +464,19 @@ self.meta.reflect() self.meta.drop_all() # in case junk tables are lying around in the test database @@ -391,8 +391,8 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename + result = self.env.run('sqlalchemy-migrate create %s %s' % (repos_path, repos_name)) + result = self.env.run('sqlalchemy-migrate drop_version_control %s %s' % (self.url, repos_path), expect_error=True) + result = self.env.run('sqlalchemy-migrate version_control %s %s' % (self.url, repos_path)) - self.assertEquals(self.run_version(repos_path), 0) - self.assertEquals(self.run_db_version(self.url, repos_path), 0) + self.assertEqual(self.run_version(repos_path), 0) + self.assertEqual(self.run_db_version(self.url, repos_path), 0) # Setup helper script. - result = self.env.run('migrate manage %s --repository=%s --url=%s --model=%s'\ @@ -406,7 +406,7 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename % (self.url, repos_path, model_module)) self.assert_("tables missing from database: tmp_account_rundiffs" in result.stdout) -@@ -487,7 +487,7 @@ class TestShellDatabase(Shell, DB): +@@ -486,7 +486,7 @@ else: warnings = None self.env.environ['PYTHONWARNINGS'] = 'default' @@ -415,15 +415,15 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename % (self.url, repos_path, model_module.replace(":", ".")), expect_error=True) if warnings == None: del(self.env.environ['PYTHONWARNINGS']) -@@ -499,19 +499,19 @@ class TestShellDatabase(Shell, DB): +@@ -498,19 +498,19 @@ self.assert_("tables missing from database: tmp_account_rundiffs" in result.stdout) # Update db to latest model. - result = self.env.run('migrate update_db_from_model %s %s %s'\ + result = self.env.run('sqlalchemy-migrate update_db_from_model %s %s %s'\ % (self.url, repos_path, model_module)) - self.assertEquals(self.run_version(repos_path), 0) - self.assertEquals(self.run_db_version(self.url, repos_path), 0) # version did not get bumped yet because new version not yet created + self.assertEqual(self.run_version(repos_path), 0) + self.assertEqual(self.run_db_version(self.url, repos_path), 0) # version did not get bumped yet because new version not yet created - result = self.env.run('migrate compare_model_to_db %s %s %s'\ + result = self.env.run('sqlalchemy-migrate compare_model_to_db %s %s %s'\ @@ -440,7 +440,7 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename temp_dict = dict() exec result.stdout in temp_dict -@@ -525,10 +525,10 @@ class TestShellDatabase(Shell, DB): +@@ -524,10 +524,10 @@ ##Column('passwd', String(length=None, convert_unicode=False, assert_unicode=None))""" in result.stdout) ## We're happy with db changes, make first db upgrade script to go from version 0 -> 1. @@ -451,9 +451,9 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename - #result_script = self.env.run('migrate make_update_script_for_model %s %s %s %s'\ + #result_script = self.env.run('sqlalchemy-migrate make_update_script_for_model %s %s %s %s'\ #% (self.url, repos_path, old_model_module, model_module)) - #self.assertEqualsIgnoreWhitespace(result_script.stdout, + #self.assertEqualIgnoreWhitespace(result_script.stdout, #'''from sqlalchemy import * -@@ -555,11 +555,11 @@ class TestShellDatabase(Shell, DB): +@@ -554,11 +554,11 @@ #tmp_account_rundiffs.drop()''') ## Save the upgrade script. @@ -467,17 +467,17 @@ diff -up sqlalchemy-migrate-0.7.2/migrate/tests/versioning/test_shell.py.rename #% (self.url, repos_path, model_module)) #self.assert_("No schema diffs" in result.stdout) -diff -up sqlalchemy-migrate-0.7.2/setup.py.rename sqlalchemy-migrate-0.7.2/setup.py ---- sqlalchemy-migrate-0.7.2/setup.py.rename 2011-11-01 21:22:44.000000000 +0100 -+++ sqlalchemy-migrate-0.7.2/setup.py 2011-11-08 15:53:44.300081034 +0100 -@@ -32,8 +32,8 @@ setup( - license = "MIT", - entry_points = """ - [console_scripts] -- migrate = migrate.versioning.shell:main -- migrate-repository = migrate.versioning.migrate_repository:main -+ sqlalchemy-migrate = migrate.versioning.shell:main -+ sqlalchemy-migrate-repository = migrate.versioning.migrate_repository:main - """, - test_suite = "nose.collector", - ) +diff -Naur sqlalchemy-migrate-0.8.2.orig/setup.cfg sqlalchemy-migrate-0.8.2/setup.cfg +--- sqlalchemy-migrate-0.8.2.orig/setup.cfg 2013-11-15 18:37:30.000000000 +0000 ++++ sqlalchemy-migrate-0.8.2/setup.cfg 2013-12-19 13:09:24.184242821 +0000 +@@ -23,8 +23,8 @@ + + [entry_points] + console_scripts = +- migrate = migrate.versioning.shell:main +- migrate-repository = migrate.versioning.migrate_repository:main ++ sqlalchemy-migrate = migrate.versioning.shell:main ++ sqlalchemy-migrate-repository = migrate.versioning.migrate_repository:main + + [build_sphinx] + all_files = 1 diff --git a/python-migrate.spec b/python-migrate.spec index 495a3ac..98885ff 100644 --- a/python-migrate.spec +++ b/python-migrate.spec @@ -5,23 +5,18 @@ %global srcname sqlalchemy-migrate Name: python-migrate -Version: 0.7.2 -Release: 9%{?dist} +Version: 0.8.2 +Release: 1%{?dist} Summary: Schema migration tools for SQLAlchemy Group: Development/Languages License: MIT -URL: http://code.google.com/p/%{srcname}/ -Source0: http://%{srcname}.googlecode.com/files/%{srcname}-%{version}.tar.gz -# TODO: Update source from https://github.com/stackforge/sqlalchemy-migrate when tagged +URL: https://github.com/stackforge/%{srcname} +Source0: http://pypi.python.org/packages/source/s/%{srcname}/%{srcname}-%{version}.tar.gz # Patch to update to new scripttest API submitted upstream Patch0: migrate-scripttest-update.patch # Patch to fix a unittest on python-2.7 Patch1: migrate-py27.patch -# Patch to fix a unittest failure on newer python -Patch2: migrate-test-int-overflow.patch -# Patch to make compat with sqlalchemy >= 0.8 -Patch3: python-migrate-sqlalchemy-0.8.patch # Local patch to rename /usr/bin/migrate to sqlalchemy-migrate Patch100: python-migrate-sqlalchemy-migrate.patch @@ -63,8 +58,6 @@ database change sets and database repository versioning. %setup -q -n %{srcname}-%{version} %patch0 -p1 -b .test %patch1 -p1 -b .py27 -%patch2 -p1 -b .pynew -%patch3 -p1 -b .sql0.8 %patch100 -p1 -b .rename # use real unittest in python 2.7 and up @@ -98,11 +91,14 @@ nosetests %files %defattr(-,root,root,-) -%doc README docs/ +%doc README.rst doc/ %{_bindir}/* %{python_sitelib}/* %changelog +* Mon Dec 16 2013 Pádraig Brady - 0.8.2-1 +- Latest upstream + * Mon Sep 23 2013 Pádraig Brady - 0.7.2-9 - improve sqlalchemy 0.8 compatibility diff --git a/sources b/sources index b2d8bc6..dc558cd 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -10382fda16f056491e671b5307dd6713 sqlalchemy-migrate-0.7.2.tar.gz +04b360fa0f887e47470dcdfb0d7f4e1c sqlalchemy-migrate-0.8.2.tar.gz