0.10.0 release

This is the same hash as the 0.9.8 tag which
 should have been 0.10.0 given the dependency
 update on pbr, so don't use 0.9.8 as it breaks
 stable/kilo.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJV5MEuAAoJEJ8r0bQdBysrdXcH/id/Dv9tqUSRqXyhMsNkS31u
 uEx8BFj1nVVv0GrPnt6V19pTnowtx3kegbA9jbLIXgc2dB6wttl59fbyaHe0tTBT
 0vVTy3rb0uQm+p6brWbUtEN0E4t1T8pdWtIG70EfzLZGFZtmivw9KqHoG4q+iqJA
 HfcaCvMQ6XkKCwmYFRlESc25Xx1iFl1MGexO+ES2Pnrc17eChYniTUjFhhy16caZ
 Lf8YeE9gAoIMdSAK177uCOB8/P6qk+MgHYtE2S6p7yPquyi2M13tmrtvAs+rJprf
 XKN6X1tlfYlkhDF484NaPQBHLpME60nDKNlINoL7eR0dLjmiZKtvX6516gC24X0=
 =a9Rs
 -----END PGP SIGNATURE-----

Merge tag '0.10.0' into debian/liberty

0.10.0 release

This is the same hash as the 0.9.8 tag which
should have been 0.10.0 given the dependency
update on pbr, so don't use 0.9.8 as it breaks
stable/kilo.
This commit is contained in:
Thomas Goirand 2015-09-24 00:24:09 +02:00
commit 43342f021f
10 changed files with 74 additions and 68 deletions

View File

@ -14,15 +14,16 @@ well as from inside python code.
Help
----
Sphinx documentation is available at the project page `packages.python.org
<http://packages.python.org/sqlalchemy-migrate/>`_.
Sphinx documentation is available at the project page `readthedocs.org
<https://sqlalchemy-migrate.readthedocs.org/>`_.
Users and developers can be found at #sqlalchemy-migrate on Freenode IRC
Users and developers can be found at #openstack-dev on Freenode IRC
network and at the public users mailing list `migrate-users
<http://groups.google.com/group/migrate-users>`_.
New releases and major changes are announced at the public announce mailing
list `migrate-announce <http://groups.google.com/group/migrate-announce>`_
list `openstack-dev
<http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev>`_
and at the Python package index `sqlalchemy-migrate
<http://pypi.python.org/pypi/sqlalchemy-migrate>`_.
@ -37,13 +38,10 @@ Tests and Bugs
To run automated tests:
* Copy test_db.cfg.tmpl to test_db.cfg
* Edit test_db.cfg with database connection strings suitable for running tests.
(Use empty databases.)
* $ pip install -r requirements.txt -r test-requirements.txt
* $ python setup.py develop
* $ testr run --parallel
* install tox: ``pip install -U tox``
* run tox: ``tox``
* to test only a specific Python version: ``tox -e py27`` (Python 2.7)
Please report any issues with sqlalchemy-migrate to the issue tracker at
`code.google.com issues
<http://code.google.com/p/sqlalchemy-migrate/issues/list>`_
`Launchpad issues
<https://bugs.launchpad.net/sqlalchemy-migrate>`_

View File

@ -21,51 +21,32 @@ command use::
$ migrate help COMMAND
If you'd like to be notified when new versions of SQLAlchemy Migrate
are released, subscribe to `migrate-announce`_.
are released, subscribe to `openstack-dev`_.
.. _pip: http://pip.openplans.org/
.. _easy_install: http://peak.telecommunity.com/DevCenter/EasyInstall#installing-easy-install
.. _sqlalchemy: http://www.sqlalchemy.org/download.html
.. _`project's download page`: http://code.google.com/p/sqlalchemy-migrate/downloads/list
.. _`cheese shop`: http://pypi.python.org/pypi/sqlalchemy-migrate
.. _`migrate-announce`: http://groups.google.com/group/migrate-announce
.. _`openstack-dev`: http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
.. _development:
Development
-----------
Migrate's Mercurial_ repository is located at `Google Code`_.
If you would like to contribute to the development of OpenStack,
you must follow the steps in this page:
To get the latest trunk::
http://docs.openstack.org/infra/manual/developers.html
$ hg clone http://sqlalchemy-migrate.googlecode.com/hg/
Once those steps have been completed, changes to OpenStack
should be submitted for review via the Gerrit tool, following
the workflow documented at:
Patches should be submitted to the `issue tracker`_. You are free to create
your own clone to provide your patches. We are open to pull requests in our
`issue tracker`_.
http://docs.openstack.org/infra/manual/developers.html#development-workflow
If you want to work on sqlalchemy-migrate you might want to use a `virtualenv`.
Pull requests submitted through GitHub will be ignored.
To run the included test suite you have to copy :file:`test_db.cfg.tmpl` to
:file:`test_db.cfg` and put SQLAlchemy database URLs valid for your environment
into that file. We use `nose`_ for our tests and include a test requirements
file for pip. You might use the following commands to install the test
requirements and run the tests::
Bugs should be filed on Launchpad, not GitHub:
$ pip install -r test-req.pip
$ python setup.py develop
$ python setup.py nosetests
If you are curious about status changes of sqlalchemy-migrate's issues you
might want to subscribe to `sqlalchemy-migrate-issues`_.
We use a `Jenkins CI`_ continuous integration tool installation to
help us run tests on most of the databases that migrate supports.
.. _Mercurial: http://www.mercurial-scm.org/
.. _Google Code: http://sqlalchemy-migrate.googlecode.com/hg/
.. _issue tracker: http://code.google.com/p/sqlalchemy-migrate/issues/list
.. _sqlalchemy-migrate-issues: http://groups.google.com/group/sqlalchemy-migrate-issues
.. _Jenkins CI: http://jenkins.gnuviech-server.de/job/sqlalchemy-migrate-all/
.. _nose: http://readthedocs.org/docs/nose/
https://bugs.launchpad.net/sqlalchemy-migrate

View File

@ -7,9 +7,9 @@
:Author: Evan Rosson
:Maintainer: Domen Kožar <domenNO@SPAMdev.si>
:Maintainer: Jan Dittberner <jan.dittbernerNO@SPAMgooglemail.com>
:Issues: http://code.google.com/p/sqlalchemy-migrate/issues/list
:Source Code: http://code.google.com/p/sqlalchemy-migrate/
:CI Tool: http://jenkins.gnuviech-server.de/job/sqlalchemy-migrate-all/
:Source Code: https://github.com/stackforge/sqlalchemy-migrate
:Documentation: https://sqlalchemy-migrate.readthedocs.org/
:Issues: https://bugs.launchpad.net/sqlalchemy-migrate
:Generated: |today|
:License: MIT
:Version: |release|
@ -24,7 +24,7 @@
mentored by Jonathan LaCour.
The project was taken over by a small group of volunteers when Evan had no
free time for the project. It is now hosted as a `Google Code project`_.
free time for the project. It is now hosted as a `Github project`_.
During the hosting change the project was renamed to SQLAlchemy Migrate.
Currently, sqlalchemy-migrate supports Python versions from 2.6 to 2.7.
@ -64,6 +64,7 @@ Dialect support
- :ref:`oracle <oracle-d>`
- :ref:`firebird <firebird-d>`
- mssql
- DB2
* - :ref:`ALTER TABLE RENAME TABLE <table-rename>`
- yes
- yes
@ -160,7 +161,7 @@ SQLAlchemy Migrate is split into two parts, database schema versioning
glossary
.. _`google's summer of code`: http://code.google.com/soc
.. _`Google Code project`: http://code.google.com/p/sqlalchemy-migrate
.. _`Github project`: https://github.com/stackforge/sqlalchemy-migrate
.. _sqlalchemy: http://www.sqlalchemy.org

View File

@ -69,6 +69,13 @@ class TestVerNum(fixture.Base):
self.assertTrue(VerNum(2) >= 1)
self.assertFalse(VerNum(1) >= 2)
def test_int_cast(self):
ver = VerNum(3)
# test __int__
self.assertEqual(int(ver), 3)
# test __index__: range() doesn't call __int__
self.assertEqual(list(range(ver, ver)), [])
class TestVersion(fixture.Pathed):

View File

@ -13,13 +13,9 @@ log = logging.getLogger(__name__)
def usage():
"""Gives usage information."""
print """Usage: %(prog)s repository-to-migrate
Upgrade your repository to the new flat format.
NOTE: You should probably make a backup before running this.
""" % {'prog': sys.argv[0]}
print("Usage: %s repository-to-migrate" % sys.argv[0])
print("Upgrade your repository to the new flat format.")
print("NOTE: You should probably make a backup before running this.")
sys.exit(1)

View File

@ -1,18 +1,30 @@
import os
import sys
from six.moves import reload_module as reload
PY33 = sys.version_info >= (3, 3)
if PY33:
from importlib import machinery
else:
from six.moves import reload_module as reload
def import_path(fullpath):
""" Import a file with full path specification. Allows one to
import from anywhere, something __import__ does not do.
"""
# http://zephyrfalcon.org/weblog/arch_d7_2002_08_31.html
path, filename = os.path.split(fullpath)
filename, ext = os.path.splitext(filename)
sys.path.append(path)
module = __import__(filename)
reload(module) # Might be out of date during tests
del sys.path[-1]
return module
if PY33:
name = os.path.splitext(os.path.basename(fullpath))[0]
return machinery.SourceFileLoader(
name, fullpath).load_module(name)
else:
# http://zephyrfalcon.org/weblog/arch_d7_2002_08_31.html
path, filename = os.path.split(fullpath)
filename, ext = os.path.splitext(filename)
sys.path.append(path)
try:
module = __import__(filename)
reload(module) # Might be out of date during tests
return module
finally:
del sys.path[-1]

View File

@ -65,6 +65,9 @@ class VerNum(object):
def __int__(self):
return int(self.value)
def __index__(self):
return int(self.value)
if six.PY3:
def __hash__(self):
return hash(self.value)

View File

@ -1,7 +1,7 @@
# The order of packages is significant, because pip processes them in the order
# of appearance. Changing the order has an impact on the overall integration
# process, which may cause wedges in the gate later.
pbr>=0.11,<2.0
pbr>=1.3,<2.0
# never put a cap on this, *ever*, sqla versions are handled via
# tox, and if SQLA is capped it will only make it so we aren't testing

View File

@ -16,6 +16,14 @@
import setuptools
# In python < 2.7.4, a lazy loading of package `pbr` will break
# setuptools if some other modules registered functions in `atexit`.
# solution from: http://bugs.python.org/issue15881#msg170215
try:
import multiprocessing # noqa
except ImportError:
pass
setuptools.setup(
setup_requires=['pbr'],
setup_requires=['pbr>=1.3'],
pbr=True)

View File

@ -8,7 +8,7 @@ coverage>=3.6
discover
feedparser
fixtures>=0.3.14
mock>=1.0
mock>=1.2
mox>=0.5.3
psycopg2
python-subunit>=0.0.18