forked from pool/python-alembic
- update to 0.8.7:
- Fixed bug where upgrading to the head of a branch which is already
present would fail, only if that head were also the dependency
of a different branch that is also upgraded, as the revision system
would see this as trying to go in the wrong direction. The check
here has been refined to distinguish between same-branch revisions
out of order vs. movement along sibling branches.
- Adjusted the version traversal on downgrade
such that we can downgrade to a version that is a dependency for
a version in a different branch, *without* needing to remove that
dependent version as well. Previously, the target version would be
seen as a "merge point" for it's normal up-revision as well as the
dependency. This integrates with the changes for 🎫`377`
and 🎫`378` to improve treatment of branches with dependencies
overall.
- Fixed bug where a downgrade to a version that is also a dependency
to a different branch would fail, as the system attempted to treat
this as an "unmerge" of a merge point, when in fact it doesn't have
the other side of the merge point available for update.
- Fixed bug where the "alembic current" command wouldn't show a revision
as a current head if it were also a dependency of a version in a
different branch that's also applied. Extra logic is added to
extract "implied" versions of different branches from the top-level
versions listed in the alembic_version table.
- Fixed bug where a repr() or str() of a Script object would fail
if the script had multiple dependencies.
- Fixed bug in autogen where if the DB connection sends the default
schema as "None", this "None" would be removed from the list of
schemas to check if include_schemas were set. This could possibly
impact using include_schemas with SQLite.
OBS-URL: https://build.opensuse.org/request/show/419376
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-alembic?expand=0&rev=51
99 lines
3.3 KiB
RPMSpec
99 lines
3.3 KiB
RPMSpec
#
|
|
# spec file for package python-alembic
|
|
#
|
|
# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany.
|
|
#
|
|
# All modifications and additions to the file contributed by third parties
|
|
# remain the property of their copyright owners, unless otherwise agreed
|
|
# upon. The license for this file, and modifications and additions to the
|
|
# file, is the same license as for the pristine package itself (unless the
|
|
# license for the pristine package is not an Open Source License, in which
|
|
# case the license is the MIT License). An "Open Source License" is a
|
|
# license that conforms to the Open Source Definition (Version 1.9)
|
|
# published by the Open Source Initiative.
|
|
|
|
# Please submit bugfixes or comments via http://bugs.opensuse.org/
|
|
#
|
|
|
|
|
|
Name: python-alembic
|
|
Version: 0.8.7
|
|
Release: 0
|
|
Url: http://bitbucket.org/zzzeek/alembic
|
|
Summary: A database migration tool for SQLAlchemy
|
|
License: MIT
|
|
Group: Development/Languages/Python
|
|
Source: https://pypi.io/packages/source/a/alembic/alembic-%{version}.tar.gz
|
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
|
BuildRequires: python-devel
|
|
BuildRequires: python-setuptools
|
|
# Test requirements:
|
|
BuildRequires: python-Mako
|
|
BuildRequires: python-SQLAlchemy >= 0.7.6
|
|
BuildRequires: python-argparse
|
|
BuildRequires: python-mock
|
|
BuildRequires: python-nose >= 0.11
|
|
BuildRequires: python-pytest-cov
|
|
BuildRequires: python-python-editor >= 0.3
|
|
Requires: python-Mako
|
|
Requires: python-SQLAlchemy >= 0.7.6
|
|
Requires: python-argparse
|
|
Requires: python-python-editor >= 0.3
|
|
Requires(post): /usr/sbin/update-alternatives
|
|
Requires(postun): /usr/sbin/update-alternatives
|
|
%if 0%{?suse_version} && 0%{?suse_version} <= 1110
|
|
%{!?python_sitelib: %global python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")}
|
|
%else
|
|
BuildArch: noarch
|
|
%endif
|
|
|
|
%description
|
|
Alembic is a new database migrations tool, written by the author
|
|
of SQLAlchemy <http://www.sqlalchemy.org>. A migrations tool
|
|
offers the following functionality:
|
|
|
|
* Can emit ALTER statements to a database in order to change
|
|
the structure of tables and other constructs
|
|
* Provides a system whereby "migration scripts" may be constructed;
|
|
each script indicates a particular series of steps that can "upgrade" a
|
|
target database to a new version, and optionally a series of steps that can
|
|
"downgrade" similarly, doing the same steps in reverse.
|
|
* Allows the scripts to execute in some sequential manner.
|
|
|
|
%prep
|
|
%setup -q -n alembic-%{version}
|
|
mv docs html && rm -rf html/build
|
|
|
|
%build
|
|
python setup.py build
|
|
|
|
%install
|
|
python setup.py install --prefix=%{_prefix} --root=%{buildroot}
|
|
# update-alternatives
|
|
mv %{buildroot}%{_bindir}/alembic %{buildroot}%{_bindir}/alembic-%{py_ver}
|
|
mkdir -p %{buildroot}%{_sysconfdir}/alternatives
|
|
touch %{buildroot}%{_sysconfdir}/alternatives/alembic
|
|
ln -sf %{_sysconfdir}/alternatives/alembic %{buildroot}%{_bindir}/alembic
|
|
|
|
%check
|
|
python setup.py test
|
|
|
|
%post
|
|
update-alternatives \
|
|
--install %{_bindir}/alembic alembic %{_bindir}/alembic-%{py_ver} 20
|
|
|
|
%postun
|
|
if [ $1 -eq 0 ] ; then
|
|
update-alternatives --remove alembic %{_bindir}/alembic-%{py_ver}
|
|
fi
|
|
|
|
%files
|
|
%defattr(-,root,root,-)
|
|
%doc CHANGES LICENSE README.rst html
|
|
%ghost %{_sysconfdir}/alternatives/alembic
|
|
%{_bindir}/alembic
|
|
%{_bindir}/alembic-%{py_ver}
|
|
%{python_sitelib}/*
|
|
|
|
%changelog
|