17
0

Accepting request 205263 from devel:languages:python

- Update to version 0.8.3:
  + See http://docs.sqlalchemy.org/en/latest/changelog/changelog_08.html#change-0.8.3
- Drop outdated patches
  + SQLAlchemy-0.7.10-SLES-drop-failing-tests.patch
  + sqlalchemy-0.7-logging.patch

- Require python-setuptools instead of distribute (upstreams merged)

OBS-URL: https://build.opensuse.org/request/show/205263
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-SQLAlchemy?expand=0&rev=23
This commit is contained in:
Stephan Kulow
2013-11-04 06:08:57 +00:00
committed by Git OBS Bridge
6 changed files with 25 additions and 250 deletions

View File

@@ -1,119 +0,0 @@
diff -ruN a/test/aaa_profiling/test_pool.py b/test/aaa_profiling/test_pool.py
--- a/test/aaa_profiling/test_pool.py 2013-02-08 01:10:48.000000000 +0100
+++ b/test/aaa_profiling/test_pool.py 2013-08-01 15:36:55.984917877 +0200
@@ -36,16 +36,6 @@
def test_first_connect(self):
conn = pool.connect()
- def test_second_connect(self):
- conn = pool.connect()
- conn.close()
-
- @profiling.function_call_count()
- def go():
- conn2 = pool.connect()
- return conn2
- c2 = go()
-
def test_second_samethread_connect(self):
conn = pool.connect()
diff -ruN a/test/engine/test_execute.py b/test/engine/test_execute.py
--- a/test/engine/test_execute.py 2013-02-08 01:10:48.000000000 +0100
+++ b/test/engine/test_execute.py 2013-08-01 15:38:02.992917771 +0200
@@ -212,29 +212,6 @@
finally:
conn.close()
- def test_exception_wrapping_non_dbapi_statement(self):
- class MyType(TypeDecorator):
- impl = Integer
- def process_bind_param(self, value, dialect):
- raise Exception("nope")
-
- def _go(conn):
- assert_raises_message(
- tsa.exc.StatementError,
- r"nope \(original cause: Exception: nope\) 'SELECT 1 ",
- conn.execute,
- select([1]).\
- where(
- column('foo') == literal('bar', MyType())
- )
- )
- _go(testing.db)
- conn = testing.db.connect()
- try:
- _go(conn)
- finally:
- conn.close()
-
def test_stmt_exception_pickleable_no_dbapi(self):
self._test_stmt_exception_pickleable(Exception("hello world"))
@@ -582,33 +559,6 @@
"bound parameter sets ... ('98',), ('99',)]"
)
- def test_error_large_dict(self):
- assert_raises_message(
- tsa.exc.DBAPIError,
- r".*'INSERT INTO nonexistent \(data\) values \(:data\)' "
- "\[{'data': '0'}, {'data': '1'}, {'data': '2'}, "
- "{'data': '3'}, {'data': '4'}, {'data': '5'}, "
- "{'data': '6'}, {'data': '7'} ... displaying 10 of "
- "100 total bound parameter sets ... {'data': '98'}, {'data': '99'}\]",
- lambda: self.eng.execute(
- "INSERT INTO nonexistent (data) values (:data)",
- [{"data":str(i)} for i in xrange(100)]
- )
- )
-
- def test_error_large_list(self):
- assert_raises_message(
- tsa.exc.DBAPIError,
- r".*INSERT INTO nonexistent \(data\) values "
- "\(\?\)' \[\('0',\), \('1',\), \('2',\), \('3',\), "
- "\('4',\), \('5',\), \('6',\), \('7',\) ... displaying "
- "10 of 100 total bound parameter sets ... "
- "\('98',\), \('99',\)\]",
- lambda: self.eng.execute(
- "INSERT INTO nonexistent (data) values (?)",
- [(str(i), ) for i in xrange(100)]
- )
- )
class LoggingNameTest(fixtures.TestBase):
__requires__ = 'ad_hoc_engines',
diff -ruN a/test/sql/test_query.py b/test/sql/test_query.py
--- a/test/sql/test_query.py 2013-02-08 01:10:49.000000000 +0100
+++ b/test/sql/test_query.py 2013-08-01 15:38:26.272917734 +0200
@@ -46,28 +46,6 @@
users.insert().execute(user_id = 7, user_name = 'jack')
assert users.count().scalar() == 1
- def test_insert_heterogeneous_params(self):
- """test that executemany parameters are asserted to match the parameter set of the first."""
-
- assert_raises_message(exc.StatementError,
- r"A value is required for bind parameter 'user_name', in "
- "parameter group 2 \(original cause: (sqlalchemy.exc.)?InvalidRequestError: A "
- "value is required for bind parameter 'user_name', in "
- "parameter group 2\) 'INSERT INTO query_users",
- users.insert().execute,
- {'user_id':7, 'user_name':'jack'},
- {'user_id':8, 'user_name':'ed'},
- {'user_id':9}
- )
-
- # this succeeds however. We aren't yet doing
- # a length check on all subsequent parameters.
- users.insert().execute(
- {'user_id':7},
- {'user_id':8, 'user_name':'ed'},
- {'user_id':9}
- )
-
def test_update(self):
users.insert().execute(user_id = 7, user_name = 'jack')
assert users.count().scalar() == 1

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:77aa39d65c9d043eba6ba329b359ff867424fd6c403b7c0cb112b65e507e1d66
size 3541639

3
SQLAlchemy-0.8.3.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:80702cd95ade2d31d018e27accd4a75afb5b82e1b77b206c4ea463378c08197b
size 3895285

View File

@@ -1,3 +1,17 @@
-------------------------------------------------------------------
Wed Oct 30 16:27:24 UTC 2013 - speilicke@suse.com
- Update to version 0.8.3:
+ See http://docs.sqlalchemy.org/en/latest/changelog/changelog_08.html#change-0.8.3
- Drop outdated patches
+ SQLAlchemy-0.7.10-SLES-drop-failing-tests.patch
+ sqlalchemy-0.7-logging.patch
-------------------------------------------------------------------
Thu Oct 24 11:15:08 UTC 2013 - speilicke@suse.com
- Require python-setuptools instead of distribute (upstreams merged)
-------------------------------------------------------------------
Thu Aug 1 13:49:51 UTC 2013 - speilicke@suse.com

View File

@@ -17,21 +17,21 @@
Name: python-SQLAlchemy
Version: 0.7.10
Version: 0.8.3
Release: 0
Url: http://www.sqlalchemy.org
Summary: Database Abstraction Library
License: MIT
Group: Development/Languages/Python
Source0: http://pypi.python.org/packages/source/S/SQLAlchemy/SQLAlchemy-%{version}.tar.gz
Patch0: sqlalchemy-0.7-logging.patch
Patch1: sqlalchemy-0.7-setup_test.patch
Patch2: SQLAlchemy-0.7.10-SLES-drop-failing-tests.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
BuildRequires: python-devel
BuildRequires: python-distribute
BuildRequires: python-nose
BuildRequires: python-pysqlite
BuildRequires: python-setuptools
# Test requirements:
BuildRequires: python-mock
BuildRequires: python-nose >= 0.11
#BuildRequires: python-pysqlite
Provides: python-sqlalchemy = %{version}
Obsoletes: python-sqlalchemy < %{version}
%if 0%{?suse_version} && 0%{?suse_version} <= 1110
@@ -63,14 +63,10 @@ reference for python-SQLAlchemy.
%setup -q -n SQLAlchemy-%{version}
rm -rf doc/build # Remove unnecessary scripts for building documentation
sed -i 's/\r$//' examples/dynamic_dict/dynamic_dict.py
%patch0
%patch1
%if 0%{?suse_version} && 0%{?suse_version} <= 1110
%patch2 -p1
%endif
%build
CFLAGS="%{optflags} -fno-strict-aliasing" python setup.py --with-cextensions build
CFLAGS="%{optflags} -fno-strict-aliasing" python setup.py build
%install
python setup.py install --prefix=%{_prefix} --root=%{buildroot}
@@ -80,7 +76,7 @@ python setup.py test
%files
%defattr(-,root,root,-)
%doc CHANGES CHANGES_PRE_06 LICENSE README.rst README.py3k README.unittests
%doc CHANGES LICENSE README.rst README.py3k README.unittests.rst
%{python_sitearch}/sqlalchemy/
%{python_sitearch}/SQLAlchemy-%{version}-py%{py_ver}.egg-info

View File

@@ -1,116 +0,0 @@
Some odd reason usual import logging doesn't work; matches import of other modules in test_execute.py
diff -ur SQLAlchemy-0.7.9.orig/test/engine/test_execute.py SQLAlchemy-0.7.9/test/engine/test_execute.py
--- test/engine/test_execute.py 2012-10-02 06:33:29.000000000 +0800
+++ test/engine/test_execute.py 2013-02-26 16:13:44.923958389 +0800
@@ -9,7 +9,7 @@
import sqlalchemy as tsa
from test.lib import testing, engines
from test.lib.engines import testing_engine
-import logging
+from logging import handlers, getLogger, DEBUG, INFO, WARN
from sqlalchemy.dialects.oracle.zxjdbc import ReturningParam
from sqlalchemy.engine import base, default
from sqlalchemy.engine.base import Connection, Engine
@@ -542,18 +542,18 @@
def setup(self):
self.eng = engines.testing_engine(options={'echo':True})
self.eng.execute("create table foo (data string)")
- self.buf = logging.handlers.BufferingHandler(100)
+ self.buf = handlers.BufferingHandler(100)
for log in [
- logging.getLogger('sqlalchemy.engine'),
- logging.getLogger('sqlalchemy.pool')
+ getLogger('sqlalchemy.engine'),
+ getLogger('sqlalchemy.pool')
]:
log.addHandler(self.buf)
def teardown(self):
self.eng.execute("drop table foo")
for log in [
- logging.getLogger('sqlalchemy.engine'),
- logging.getLogger('sqlalchemy.pool')
+ getLogger('sqlalchemy.engine'),
+ getLogger('sqlalchemy.pool')
]:
log.removeHandler(self.buf)
@@ -646,17 +646,17 @@
return engines.testing_engine(options=kw)
def setup(self):
- self.buf = logging.handlers.BufferingHandler(100)
+ self.buf = handlers.BufferingHandler(100)
for log in [
- logging.getLogger('sqlalchemy.engine'),
- logging.getLogger('sqlalchemy.pool')
+ getLogger('sqlalchemy.engine'),
+ getLogger('sqlalchemy.pool')
]:
log.addHandler(self.buf)
def teardown(self):
for log in [
- logging.getLogger('sqlalchemy.engine'),
- logging.getLogger('sqlalchemy.pool')
+ getLogger('sqlalchemy.engine'),
+ getLogger('sqlalchemy.pool')
]:
log.removeHandler(self.buf)
@@ -703,14 +703,14 @@
__requires__ = 'ad_hoc_engines',
def setup(self):
- self.level = logging.getLogger('sqlalchemy.engine').level
- logging.getLogger('sqlalchemy.engine').setLevel(logging.WARN)
- self.buf = logging.handlers.BufferingHandler(100)
- logging.getLogger('sqlalchemy.engine').addHandler(self.buf)
+ self.level = getLogger('sqlalchemy.engine').level
+ getLogger('sqlalchemy.engine').setLevel(WARN)
+ self.buf = handlers.BufferingHandler(100)
+ getLogger('sqlalchemy.engine').addHandler(self.buf)
def teardown(self):
- logging.getLogger('sqlalchemy.engine').removeHandler(self.buf)
- logging.getLogger('sqlalchemy.engine').setLevel(self.level)
+ getLogger('sqlalchemy.engine').removeHandler(self.buf)
+ getLogger('sqlalchemy.engine').setLevel(self.level)
def testing_engine(self):
e = engines.testing_engine()
@@ -727,26 +727,26 @@
eq_(e1._should_log_info(), False)
eq_(e1._should_log_debug(), False)
- eq_(e1.logger.isEnabledFor(logging.INFO), False)
- eq_(e1.logger.getEffectiveLevel(), logging.WARN)
+ eq_(e1.logger.isEnabledFor(INFO), False)
+ eq_(e1.logger.getEffectiveLevel(), WARN)
e1.echo = True
eq_(e1._should_log_info(), True)
eq_(e1._should_log_debug(), False)
- eq_(e1.logger.isEnabledFor(logging.INFO), True)
- eq_(e1.logger.getEffectiveLevel(), logging.INFO)
+ eq_(e1.logger.isEnabledFor(INFO), True)
+ eq_(e1.logger.getEffectiveLevel(), INFO)
e1.echo = 'debug'
eq_(e1._should_log_info(), True)
eq_(e1._should_log_debug(), True)
- eq_(e1.logger.isEnabledFor(logging.DEBUG), True)
- eq_(e1.logger.getEffectiveLevel(), logging.DEBUG)
+ eq_(e1.logger.isEnabledFor(DEBUG), True)
+ eq_(e1.logger.getEffectiveLevel(), DEBUG)
e1.echo = False
eq_(e1._should_log_info(), False)
eq_(e1._should_log_debug(), False)
- eq_(e1.logger.isEnabledFor(logging.INFO), False)
- eq_(e1.logger.getEffectiveLevel(), logging.WARN)
+ eq_(e1.logger.isEnabledFor(INFO), False)
+ eq_(e1.logger.getEffectiveLevel(), WARN)
def test_echo_flag_independence(self):
"""test the echo flag's independence to a specific engine."""