diff --git a/python-sqlalchemy.spec b/python-sqlalchemy.spec index 0db821c..3503ed0 100644 --- a/python-sqlalchemy.spec +++ b/python-sqlalchemy.spec @@ -18,6 +18,8 @@ Group: Development/Libraries License: MIT URL: http://www.sqlalchemy.org/ Source0: http://pypi.python.org/packages/source/S/%{srcname}/%{srcname}-%{version}.tar.gz +Patch0: sqlalchemy-nose-use-build.patch +Patch1: sqlalchemy-test-bidirectional-order.patch BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRequires: python2-devel @@ -63,6 +65,8 @@ This package includes the python 3 version of the module. %prep %setup -q -n %{srcname}-%{version} +%patch0 -p0 +%patch1 -p1 %if 0%{?with_python3} rm -rf %{py3dir} @@ -74,8 +78,8 @@ CFLAGS="%{optflags}" %{__python} setup.py --with-cextensions build %if 0%{?with_python3} pushd %{py3dir} -# Convert tests, examples, source to python3 -%{__python3} sa2to3.py --no-diffs -w lib test examples +# Convert tests and examples to python3 +%{__python3} sa2to3.py --no-diffs -w test examples # Currently the cextension doesn't work with python3 CFLAGS="%{optflags}" %{__python3} setup.py build popd @@ -126,6 +130,8 @@ popd %changelog * Mon Apr 29 2013 Toshio Kuratomi - 0.8.1-1 - Upstream bugfix +- Stop calling sa2to3 explicitly on the library. It seems to break mapper.py's + import of collections.deque * Fri Apr 12 2013 Toshio Kuratomi - 0.8.0-1 - Final release of 0.8.0 diff --git a/sqlalchemy-nose-use-build.patch b/sqlalchemy-nose-use-build.patch new file mode 100644 index 0000000..577f1df --- /dev/null +++ b/sqlalchemy-nose-use-build.patch @@ -0,0 +1,21 @@ +--- sqla_nose.py 2013-04-27 14:24:34.000000000 -0700 ++++ sqla_nose2.py 2013-04-29 16:49:57.466102387 -0700 +@@ -10,14 +10,15 @@ + import imp + import nose + +- ++import glob + from os import path +-for pth in ['./lib']: ++ ++for pth in glob.glob('build/lib*'): + sys.path.insert(0, path.join(path.dirname(path.abspath(__file__)), pth)) + + # installing without importing SQLAlchemy, so that coverage includes + # SQLAlchemy itself. +-path = "lib/sqlalchemy/testing/plugin/noseplugin.py" ++path = glob.glob("build/lib*/sqlalchemy/testing/plugin/noseplugin.py")[0] + noseplugin = imp.load_source("noseplugin", path) + + diff --git a/sqlalchemy-test-bidirectional-order.patch b/sqlalchemy-test-bidirectional-order.patch new file mode 100644 index 0000000..0fc6b1d --- /dev/null +++ b/sqlalchemy-test-bidirectional-order.patch @@ -0,0 +1,16 @@ +diff -up SQLAlchemy-0.8.1/test/orm/test_manytomany.py.bak SQLAlchemy-0.8.1/test/orm/test_manytomany.py +--- SQLAlchemy-0.8.1/test/orm/test_manytomany.py.bak 2013-04-29 18:05:36.721189243 -0700 ++++ SQLAlchemy-0.8.1/test/orm/test_manytomany.py 2013-04-29 18:06:07.754995799 -0700 +@@ -244,10 +244,10 @@ class M2MTest(fixtures.MappedTest): + sess.add_all((t1, t2, t3, p1, p2, p3)) + sess.commit() + +- self.assert_result([t1], ++ self.assert_unordered_result([t1], + Transition, {'outputs': + (Place, [{'name': 'place3'}, {'name': 'place1'}])}) +- self.assert_result([p2], ++ self.assert_unordered_result([p2], + Place, {'inputs': + (Transition, [{'name': 'transition1'}, + {'name': 'transition2'}])})