This is needed to be able to release to pypi:
$ python3 setup.py check --restructuredtext --strict
running check
warning: check: Duplicate implicit target name: "sqlalchemy-migrate".
Change-Id: I26dd765a5273199d6666dd9ed618dc8189a2e8ed
The "force" parameter in SQLAlchemy IdentifierPreparer.quote()
has been a no-op since 0.9 in
031ef08078,
which was six years ago. In SQLAlchemy 1.3 this parameter
will be removed entirely. Bump requirements to 0.9 series
here and remove usage of the "force" flag.
Change-Id: I4492df2e7d2075fefbf13d6782de11f7d402f6b8
Use "PRAGMA legacy_alter_table = ON" with sqlite >= 3.26 when
using "ALTER TABLE RENAME TO migration_tmp" to maintain legacy
behavior.
As of sqlite version 3.26, when a table is renamed using
"ALTER TABLE RENAME TO", REFERENCES clauses that refer to the
table will be updated. To maintain legacy (3.24 and earlier)
behavior, "PRAGMA legacy_alter_table" can be set to true and
"PRAGMA foreign_keys" can be set to false. [1]
[1] https://www.sqlite.org/src/info/ae9638e9c0ad0c36
Thanks to "László Böszörményi (GCS)" <gcs@debian.org> for
providing the code for this patch, which has since been
slightly modified.
Change-Id: I539988ab2ad6df6c8f423ecec15364ad8fcc7267
Closes-Bug: 1807262
As of mitaka, the infra team won't have the resources available to
reasonably test py26, also the oslo team is dropping py26 support
from their libraries. sine we rely on oslo for a lot of our work,
and depend on infra for our CI, we should drop py26 support too.
Change-Id: I6af3716f5daf73febdabcd79853a09512428c289
Closes-Bug: 1519510
openstack-dev was decomissioned this night in https://review.openstack.org/621258
Update openstack-dev to openstack-discuss
Change-Id: Ic84b2422d37aa1ebb443fff4152c7ebe5a098566
The psycopg2 wheel package warnings are causing some tests
to fail which expect there to be no stderr output. This fixes
the problem by not using the wheel binary for that package.
Closes-Bug: #1811876
Change-Id: Id43e74d8d343ab4e80d1d246543bada1ed4d06ad
The 2.0.0 is breaking in that it removes the use of warnerrors in
build_sphinux.
sqlalchemy-migrate isn't using that feature, so it shoudln't break.
The cap on pbr is preventing other OpenStack projects that would like to
use pbr 2.0.0 (and sphinx 1.5.1) from doing so as it breaks
co-installability with sqlalchemy-migrate
Change-Id: I1c907201c717fe42caca24831985a119f2a1738b
Related-Bug: 1668848
Add simple script to setup mysql and postgresql databases, this script
can be run by users during testing and will be run by CI systems for
specific setup before running unit tests.
This allows to change in project-config the python-db jobs to
python-jobs since python-jobs will call this script initially.
See also
http://lists.openstack.org/pipermail/openstack-dev/2016-November/107784.html
Needed-By: I46d883ce1b25338d01a2b0e2b071b15adab00520
Change-Id: I8c5015616a5a12501edd16932d4148930c01a06b
Starting in SQLAlchemy 1.1, the rules for when "autoincrement=True"
may be set on a column are more strict. The migrate tests are
testing the alteration of a column from Integer to String
and then regenerating; this means we need to set autoincrement
to False as well. A related issue in SQLAlchemy 1.1 is
also being fixed (see https://bitbucket.org/zzzeek/sqlalchemy/issues/3835/),
however this fix is not needed in order for the tests to pass here.
Change-Id: Ibd3a75fff13312411df87e17b6e5764865d69728
Currently migrate.versioning.api.upgrade() raises KeyError
instead of sqlalchemy-migrate specific exception if migration
script file is not present in migration repository.
Raised migrate.exception.VersionNotFoundError if the specified
migration script does not exist in the repository. Made
VersionNotFoundError exception class as a subclass of KeyError
in order to avoid breaking existing users looking for KeyError.
Related-Bug: #1546441
Change-Id: I0210d56a6e85f03c44cea027f50863faaf050c1d
Python 3.4 unit test is failing because of
DeprecationWarning: Parameters to load are deprecated.
Called .resolve and .require separately on setuptools >= 11.3.
Made provision to call .resolve() method if setuptools >= 10.2
and less than 11.3 else call .load() method.
Change-Id: I5ba80edfbf6b7c8399c66f01d57c91bd02eab274
Closes-Bug: #1586060
On Python 3, some functions like range() don't try to call the __int__()
method to cast an object to integer, but try instead the __index__()
method.
Add an __index__() method to mimick correctly the int type on Python 3.
Change-Id: I8df116d80e201778714a59367600eaef644266ed
The usage function of migrate_repository.py isn't Python 3 compatible,
and this hasn't be caught by unit tests. This patch fixes the function,
so at least the file can be compiled in Py3.
Change-Id: Ib9333e46e7526e82acde573d4b2046b2bf9a7ae0
There are two changes which have to go together to pass the gate
tests:
1. Update pbr and mock requirements from global-requirements
mock 1.2 supports py26 again so make that the minimum version. The
same change is being made in g-r with:
Ic6b9e18eaec9c81bbbbc57129e024904be928e09
Sync up with latest pbr in global-requirements while we're at it.
Closes-Bug: #1474925
2. Fix the importpath module to work with python >= 3.3 where the
__import__ built-in is raising an ImportError on a temporary file
that is added to the system path.
Closes-Bug: #1475339
Change-Id: Ie98938ba75f3983094dd540b7d26a7ec46be4f6e
This reverts commit e4d0e5be8d0d154eaec1ae0bb156d1c7485043b9
Now that flake8-related dependencies have been updated in the
dependent change the pep8 job is fixed.
Change-Id: Idfa6a18836d7ce02dfaa5d9da1a51c98ad987f51
In order to raise the cap on pbr we need to update
the dependent versions of the flake8 related packages
for the pep8 job since they have capped pbr.
A couple of simple hacking issues are fixed, the rest
are ignored.
Change-Id: Icddb5bf284da7b6463ebcfc7512726149ffe6085
This reverts commit 35832555c5ede7148bedbfec0d79351d90a93b53
The non-voting pep8 job was failing due a VersionConflict
with pbr, so this shouldn't have been merged.
Change-Id: I4917b92121cac524fd89575f30d72d7319cbe20c
The cap of pbr causes issues now that pbr 1.2 is basically needed for
a lot of projects to do the right thing with requirements ranges. The
sqla capping is preventing new versions of sqla to be used in the
OpenStack gates, and shouldn't be capped by a library.
Change-Id: I5fc142eb8c9d616db2ed9b2f3e4e4d1147e131ff
Lift the requirements to support SQLAlchemy 1.0. Two tests
were calling upon revised APIs and required adjustment.
Change-Id: Ic91a91bb3c915027b522eace302f2ed074233294
Under Python 2.6 a setuptools warning is produced when
the migrate runner runs. Since migrate invokes its own
commandline client from tests in a separate shell, the
fixture we're using to do that must be told not to complain
about this stderr.
Change-Id: Ib5823754d6ffabe954665f2a7529ed0e56591ebf
The ibmdb2 code calls _index_identifier() when it handles index name. This
method only exists from sqlalchemy 0.6.5 to 0.7.*. Nova code change
https://review.openstack.org/#/c/153123/ attempts to drop a db constraint and
it fails to sync nova db with sqlalchemy 0.9.8 running against db2. Need to let
ibmdb2 code identify sqlalchemy version and call the correct method to handle
index name.
Closes-Bug: 1428477
Change-Id: Ie6333f9cea0209c1ea290356873a1a1bcf409bed
The entries for tox and testrepository weren't
working with `git clean -df` so this updates them
to match what's in nova's .gitignore. Testing
manually shows this doesn't blast those directories
when running git clean.
Change-Id: Iba569afabea748369f76351bf5521ca1c0fdce0c
Closes-Bug: #1423983
This implements the ability to drop foreign keys
with sqlite. It's basically the same implementation
used for dropping unique constraints so the common
code is refactored.
The existing FKey test that was skipping sqlite is
no longer skipped to show this works.
Change-Id: Idaaf4229e34af4c21c3bcead4b4e22491d24238e
Closes-Bug: #1423955
This changeset adds the pretty_tox script runner to SQLAlchemy-migrate,
so that current test runs can be viewed clearly.
Change-Id: I3884703e24cb636983a0202c46899c772419d401