- 0.6.3 upstream release

This commit is contained in:
Toshio Kuratomi 2010-08-24 01:51:24 -04:00
parent e1e3ceaeff
commit a3fefadeee
4 changed files with 139 additions and 8 deletions

1
.gitignore vendored
View File

@ -1 +1,2 @@
SQLAlchemy-0.6.1.tar.gz
/SQLAlchemy-0.6.3.tar.gz

View File

@ -0,0 +1,126 @@
Index: SQLAlchemy-0.6.3/test/orm/test_query.py
===================================================================
--- SQLAlchemy-0.6.3.orig/test/orm/test_query.py
+++ SQLAlchemy-0.6.3/test/orm/test_query.py
@@ -2278,10 +2278,10 @@ class JoinTest(QueryTest, AssertsCompile
# this is the first test where we are joining "backwards" - from AdAlias to User even though
# the query is against User
q = sess.query(User, AdAlias)
- l = q.join(AdAlias.user).filter(User.name=='ed')
+ l = q.join(AdAlias.user).filter(User.name=='ed').order_by(User.id, AdAlias.id)
eq_(l.all(), [(user8, address2),(user8, address3),(user8, address4),])
- q = sess.query(User, AdAlias).select_from(join(AdAlias, User, AdAlias.user)).filter(User.name=='ed')
+ q = sess.query(User, AdAlias).select_from(join(AdAlias, User, AdAlias.user)).filter(User.name=='ed').order_by(User.id, AdAlias.id)
eq_(l.all(), [(user8, address2),(user8, address3),(user8, address4),])
def test_implicit_joins_from_aliases(self):
@@ -2636,14 +2636,20 @@ class InstancesTest(QueryTest, AssertsCo
, dialect=default.DefaultDialect())
def go():
- assert self.static.user_address_result == q.all()
+ result = q.all()
+ for user in result:
+ user.addresses = sorted(user.addresses, key=lambda x: x.id)
+ assert self.static.user_address_result == result
self.assert_sql_count(testing.db, go, 1)
sess.expunge_all()
adalias = addresses.alias()
q = sess.query(User).select_from(users.outerjoin(adalias)).options(contains_eager(User.addresses, alias=adalias))
def go():
- eq_(self.static.user_address_result, q.order_by(User.id).all())
+ result = q.order_by(User.id).all()
+ for user in result:
+ user.addresses = sorted(user.addresses, key=lambda x: x.id)
+ eq_(self.static.user_address_result, result)
self.assert_sql_count(testing.db, go, 1)
sess.expunge_all()
@@ -2771,21 +2777,21 @@ class MixedEntitiesTest(QueryTest, Asser
sel = users.select(User.id.in_([7, 8])).alias()
q = sess.query(User)
q2 = q.select_from(sel).values(User.name)
- eq_(list(q2), [(u'jack',), (u'ed',)])
+ eq_(sorted(list(q2)), sorted([(u'jack',), (u'ed',)]))
q = sess.query(User)
q2 = q.order_by(User.id).values(User.name, User.name + " " + cast(User.id, String(50)))
- eq_(list(q2), [(u'jack', u'jack 7'), (u'ed', u'ed 8'), (u'fred', u'fred 9'), (u'chuck', u'chuck 10')])
+ eq_(sorted(list(q2)), sorted([(u'jack', u'jack 7'), (u'ed', u'ed 8'), (u'fred', u'fred 9'), (u'chuck', u'chuck 10')]))
q2 = q.join('addresses').filter(User.name.like('%e%')).order_by(User.id, Address.id).values(User.name, Address.email_address)
- eq_(list(q2), [(u'ed', u'ed@wood.com'), (u'ed', u'ed@bettyboop.com'), (u'ed', u'ed@lala.com'), (u'fred', u'fred@fred.com')])
+ eq_(sorted(list(q2)), sorted([(u'ed', u'ed@wood.com'), (u'ed', u'ed@bettyboop.com'), (u'ed', u'ed@lala.com'), (u'fred', u'fred@fred.com')]))
q2 = q.join('addresses').filter(User.name.like('%e%')).order_by(desc(Address.email_address)).slice(1, 3).values(User.name, Address.email_address)
- eq_(list(q2), [(u'ed', u'ed@wood.com'), (u'ed', u'ed@lala.com')])
+ eq_(sorted(list(q2)), sorted([(u'ed', u'ed@wood.com'), (u'ed', u'ed@lala.com')]))
adalias = aliased(Address)
q2 = q.join(('addresses', adalias)).filter(User.name.like('%e%')).values(User.name, adalias.email_address)
- eq_(list(q2), [(u'ed', u'ed@wood.com'), (u'ed', u'ed@bettyboop.com'), (u'ed', u'ed@lala.com'), (u'fred', u'fred@fred.com')])
+ eq_(sorted(list(q2)), sorted([(u'ed', u'ed@wood.com'), (u'ed', u'ed@bettyboop.com'), (u'ed', u'ed@lala.com'), (u'fred', u'fred@fred.com')]))
q2 = q.values(func.count(User.name))
assert q2.next() == (4,)
@@ -2799,7 +2805,7 @@ class MixedEntitiesTest(QueryTest, Asser
# whereas this uses users.c.xxx, is not aliased and creates a new join
q2 = q.select_from(sel).filter(users.c.id==8).filter(users.c.id>sel.c.id).values(users.c.name, sel.c.name, User.name)
- eq_(list(q2), [(u'ed', u'jack', u'jack')])
+ eq_(sorted(list(q2)), sorted([(u'ed', u'jack', u'jack')]))
@testing.fails_on('mssql', 'FIXME: unknown')
def test_values_specific_order_by(self):
Index: SQLAlchemy-0.6.3/test/orm/test_eager_relations.py
===================================================================
--- SQLAlchemy-0.6.3.orig/test/orm/test_eager_relations.py
+++ SQLAlchemy-0.6.3/test/orm/test_eager_relations.py
@@ -598,7 +598,9 @@ class EagerTest(_fixtures.FixtureTest, t
mapper(Order, orders)
sess = create_session()
- eq_(sess.query(User).first(),
+ result = sess.query(User).order_by(User.id).first()
+ result.orders = sorted(result.orders, key=lambda x: x.id)
+ eq_(result,
User(name=u'jack',orders=[
Order(address_id=1,description=u'order 1',isopen=0,user_id=7,id=1),
Order(address_id=1,description=u'order 3',isopen=1,user_id=7,id=3),
Index: SQLAlchemy-0.6.3/test/orm/test_expire.py
===================================================================
--- SQLAlchemy-0.6.3.orig/test/orm/test_expire.py
+++ SQLAlchemy-0.6.3/test/orm/test_expire.py
@@ -734,6 +734,8 @@ class ExpireTest(_fixtures.FixtureTest):
sess = create_session()
userlist = sess.query(User).order_by(User.id).all()
+ for user in userlist:
+ user.addresses = sorted(user.addresses, key=lambda x: x.id)
assert self.static.user_address_result == userlist
assert len(list(sess)) == 9
sess.expire_all()
@@ -742,6 +744,8 @@ class ExpireTest(_fixtures.FixtureTest):
userlist = sess.query(User).order_by(User.id).all()
u = userlist[1]
+ for user in userlist:
+ user.addresses = sorted(user.addresses, key=lambda x: x.id)
eq_(self.static.user_address_result, userlist)
assert len(list(sess)) == 9
Index: SQLAlchemy-0.6.3/test/orm/test_mapper.py
===================================================================
--- SQLAlchemy-0.6.3.orig/test/orm/test_mapper.py
+++ SQLAlchemy-0.6.3/test/orm/test_mapper.py
@@ -1269,6 +1269,8 @@ class OptionsTest(_fixtures.FixtureTest)
# first test straight eager load, 1 statement
def go():
l = sess.query(User).order_by(User.id).all()
+ for user in l:
+ user.addresses = sorted(user.addresses, key=lambda x: x.id)
eq_(l, self.static.user_address_result)
self.sql_count_(1, go)

View File

@ -10,21 +10,22 @@
%global srcname SQLAlchemy
Name: python-sqlalchemy
Version: 0.6.1
Release: 2%{?dist}
Version: 0.6.3
Release: 1%{?dist}
Summary: Modular and flexible ORM library for python
Group: Development/Libraries
License: MIT
URL: http://www.sqlalchemy.org/
Source0: http://pypi.python.org/packages/source/S/%{srcname}/%{srcname}-%{version}.tar.gz
Patch0: python-sqlalchemy-unittest-order.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
BuildRequires: python2-devel
%if 0%{?fedora} > 12 || 0%{?rhel} > 5
BuildRequires: python-setuptools
%else
%if 0%{?fedora} && 0%{?fedora} < 13
BuildRequires: python-setuptools-devel >= 0.6c3
%else
BuildRequires: python-setuptools
%endif
BuildRequires: python-nose
@ -65,6 +66,7 @@ This package includes the python 3 version of the module.
%prep
%setup -q -n %{srcname}-%{version}
%patch0 -p1 -b .order
sed -i 's/\r//' examples/dynamic_dict/dynamic_dict.py
@ -76,7 +78,7 @@ cp -a . %{py3dir}
%build
CFLAGS="%{optflags}" %{__python} setup.py --with-cextensions build
%if 0%{with_python3}
%if 0%{?with_python3}
pushd %{py3dir}
# Convert tests, examples, source to python3
%{__python3} sa2to3.py --no-diffs -w lib test examples
@ -107,7 +109,6 @@ rm -rf %{buildroot}
%check
export PYTHONPATH=.
%{__python} setup.py develop -d .
# Skip the profile connection tests
nosetests -e 'test_.*_connect'
%if 0%{?with_python3}
@ -133,6 +134,9 @@ popd
%endif # with_python3
%changelog
* Mon Aug 23 2010 Toshio Kuratomi <toshio@fedoraproject.org> - 0.6.3-1
- 0.6.3 upstream release
* Thu Jul 22 2010 David Malcolm <dmalcolm@redhat.com>
- Rebuilt for https://fedoraproject.org/wiki/Features/Python_2.7/MassRebuild

View File

@ -1 +1 @@
3a3278f88aba9d39c6b8ac86a85e1ed5 SQLAlchemy-0.6.1.tar.gz
14953e2d511123eef2f5f9527f318f0a SQLAlchemy-0.6.3.tar.gz