sqlalchemy-tickets Mailing List for SQLAlchemy (Page 102)
Brought to you by:
zzzeek
You can subscribe to this list here.
| 2006 |
Jan
|
Feb
|
Mar
(174) |
Apr
(50) |
May
(71) |
Jun
(129) |
Jul
(113) |
Aug
(141) |
Sep
(82) |
Oct
(142) |
Nov
(97) |
Dec
(72) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2007 |
Jan
(159) |
Feb
(213) |
Mar
(156) |
Apr
(151) |
May
(58) |
Jun
(166) |
Jul
(296) |
Aug
(198) |
Sep
(89) |
Oct
(133) |
Nov
(150) |
Dec
(122) |
| 2008 |
Jan
(144) |
Feb
(65) |
Mar
(71) |
Apr
(69) |
May
(143) |
Jun
(111) |
Jul
(113) |
Aug
(159) |
Sep
(81) |
Oct
(135) |
Nov
(107) |
Dec
(200) |
| 2009 |
Jan
(168) |
Feb
(109) |
Mar
(141) |
Apr
(128) |
May
(119) |
Jun
(132) |
Jul
(136) |
Aug
(154) |
Sep
(151) |
Oct
(181) |
Nov
(223) |
Dec
(169) |
| 2010 |
Jan
(103) |
Feb
(209) |
Mar
(201) |
Apr
(183) |
May
(134) |
Jun
(113) |
Jul
(110) |
Aug
(159) |
Sep
(138) |
Oct
(96) |
Nov
(116) |
Dec
(94) |
| 2011 |
Jan
(97) |
Feb
(188) |
Mar
(157) |
Apr
(158) |
May
(118) |
Jun
(102) |
Jul
(137) |
Aug
(113) |
Sep
(104) |
Oct
(108) |
Nov
(91) |
Dec
(162) |
| 2012 |
Jan
(189) |
Feb
(136) |
Mar
(153) |
Apr
(142) |
May
(90) |
Jun
(141) |
Jul
(67) |
Aug
(77) |
Sep
(113) |
Oct
(68) |
Nov
(101) |
Dec
(122) |
| 2013 |
Jan
(60) |
Feb
(77) |
Mar
(77) |
Apr
(129) |
May
(189) |
Jun
(155) |
Jul
(106) |
Aug
(123) |
Sep
(53) |
Oct
(142) |
Nov
(78) |
Dec
(102) |
| 2014 |
Jan
(143) |
Feb
(93) |
Mar
(35) |
Apr
(26) |
May
(27) |
Jun
(41) |
Jul
(45) |
Aug
(27) |
Sep
(37) |
Oct
(24) |
Nov
(22) |
Dec
(20) |
| 2015 |
Jan
(17) |
Feb
(15) |
Mar
(34) |
Apr
(55) |
May
(33) |
Jun
(31) |
Jul
(27) |
Aug
(17) |
Sep
(22) |
Oct
(26) |
Nov
(27) |
Dec
(22) |
| 2016 |
Jan
(20) |
Feb
(24) |
Mar
(23) |
Apr
(13) |
May
(17) |
Jun
(14) |
Jul
(31) |
Aug
(23) |
Sep
(24) |
Oct
(31) |
Nov
(23) |
Dec
(16) |
| 2017 |
Jan
(24) |
Feb
(20) |
Mar
(27) |
Apr
(24) |
May
(28) |
Jun
(18) |
Jul
(18) |
Aug
(23) |
Sep
(30) |
Oct
(17) |
Nov
(12) |
Dec
(12) |
| 2018 |
Jan
(27) |
Feb
(23) |
Mar
(13) |
Apr
(19) |
May
(21) |
Jun
(29) |
Jul
(11) |
Aug
(22) |
Sep
(14) |
Oct
(9) |
Nov
(24) |
Dec
|
|
From: sqlalchemy <mi...@zz...> - 2013-05-06 19:21:58
|
#2720: new C extensions for attribute accessing
-------------------------+--------------------------------------------
Reporter: zzzeek | Owner: ged
Type: enhancement | Status: new
Priority: medium | Milestone: 0.9.0
Component: cextensions | Severity: very major - up to 2 days
Keywords: | Progress State: not decided upon
-------------------------+--------------------------------------------
see attachments
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2720>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-05-03 15:02:22
|
#2700: support __table_args__ on single inh classes
------------------------------+-------------------------------
Reporter: zzzeek | Owner: chrisw
Type: enhancement | Status: new
Priority: medium | Milestone: 0.8.xx
Component: declarative | Severity: major - 1-3 hours
Resolution: | Keywords:
Progress State: in queue |
------------------------------+-------------------------------
Comment (by zzzeek):
see new event
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2700#comment:3>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-05-03 15:02:05
|
#2700: support __table_args__ on single inh classes
------------------------------+-------------------------------
Reporter: zzzeek | Owner: chrisw
Type: enhancement | Status: new
Priority: medium | Milestone: 0.8.xx
Component: declarative | Severity: major - 1-3 hours
Resolution: | Keywords:
Progress State: in queue |
------------------------------+-------------------------------
Description changed by zzzeek:
Old description:
> since we support columns on them too.
>
> Workaround:
>
> {{{
> #!python
> from sqlalchemy import *
> from sqlalchemy.orm import *
> from sqlalchemy.ext.declarative import declarative_base
>
> class FixTableArgs(object):
> @classmethod
> def __declare_last__(cls):
> if '__extra_table_args__' in cls.__dict__:
> cls.__table__._init_items(*cls.__extra_table_args__)
> del cls.__extra_table_args__
>
> Base = declarative_base(cls=FixTableArgs)
>
> class BaseClass(Base):
> __tablename__ = "base"
>
> id = Column(Integer, primary_key=True)
> base_col = Column(Integer)
>
> __table_args__ = (Index("ix1", base_col),)
>
> class SubClass(BaseClass):
> col_a = Column(Integer)
> col_b = Column(Integer)
>
> __extra_table_args__ = (UniqueConstraint("col_a", "col_b"), )
>
> configure_mappers()
>
> print BaseClass.__table__.constraints
>
> }}}
New description:
since we support columns on them too.
Workaround:
{{{
#!python
from sqlalchemy import *
from sqlalchemy.orm import *
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import event
class FixTableArgs(object):
pass
@event.listens_for(FixTableArgs, "instrument_class", propagate=True)
def extra_table_args(mapper, cls):
if '__extra_table_args__' in cls.__dict__:
cls.__table__._init_items(*cls.__extra_table_args__)
del cls.__extra_table_args__
Base = declarative_base(cls=FixTableArgs)
class BaseClass(Base):
__tablename__ = "base"
id = Column(Integer, primary_key=True)
base_col = Column(Integer)
__table_args__ = (Index("ix1", base_col),)
class SubClass(BaseClass):
col_a = Column(Integer)
col_b = Column(Integer)
__extra_table_args__ = (UniqueConstraint("col_a", "col_b"), )
print BaseClass.__table__.constraints
}}}
--
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2700#comment:2>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-05-03 08:34:54
|
#2700: support __table_args__ on single inh classes
------------------------------+-------------------------------
Reporter: zzzeek | Owner: chrisw
Type: enhancement | Status: new
Priority: medium | Milestone: 0.8.xx
Component: declarative | Severity: major - 1-3 hours
Resolution: | Keywords:
Progress State: in queue |
------------------------------+-------------------------------
Comment (by gombasg):
The workaround works fine, thanks.
However, I noticed that the explicit configure_mappers() call is now
required, otherwise Base.metadata.create_all() will miss constraints
declared using this workaround. Actually, it's weirder than that, because
I found a case when __extra_table_args__ was a tuple of a CHECK and a
UNIQUE constraint, the CHECK constraint was created, the UNIQUE constraint
was not. Calling configure_mappers() before Base.metadata.create_all()
seems to sort things out. I've used 0.8.0 for testing.
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2700#comment:1>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-05-01 17:27:07
|
#2719: release 0.8.1 testsuite failures in test_serializer (3) test_manytomany (1)
under pypy2
-----------------------------------+-----------------------------------
Reporter: idella4 | Owner: zzzeek
Type: defect | Status: closed
Priority: medium | Milestone: 0.8.xx
Component: tests | Severity: trivial - <10 minutes
Resolution: fixed | Keywords: tests
Progress State: completed/closed |
-----------------------------------+-----------------------------------
Comment (by idella4):
oh my, that was easy, and swift. passes fine with those skips
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2719#comment:4>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-05-01 14:10:59
|
#2719: release 0.8.1 testsuite failures in test_serializer (3) test_manytomany (1)
under pypy2
-----------------------------------+-----------------------------------
Reporter: idella4 | Owner: zzzeek
Type: defect | Status: closed
Priority: medium | Milestone: 0.8.xx
Component: tests | Severity: trivial - <10 minutes
Resolution: fixed | Keywords: tests
Progress State: completed/closed |
-----------------------------------+-----------------------------------
Changes (by zzzeek):
* status: new => closed
* resolution: => fixed
* severity: no triage selected yet => trivial - <10 minutes
* status_field: awaiting triage => completed/closed
Comment:
rbfa7ecfb320d
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2719#comment:3>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-05-01 13:55:36
|
#2719: release 0.8.1 testsuite failures in test_serializer (3) test_manytomany (1)
under pypy2
----------------------------------+------------------------------------
Reporter: idella4 | Owner: zzzeek
Type: defect | Status: new
Priority: medium | Milestone: 0.8.xx
Component: tests | Severity: no triage selected yet
Resolution: | Keywords: tests
Progress State: awaiting triage |
----------------------------------+------------------------------------
Description changed by zzzeek:
Old description:
> This is what's required to get the suite to pass under pypy (from an
> ebuild)
>
> "${PYTHON}" sqla_nose.py -I test_postgresql -e
> 'test_orm_join*' \
> -e test_query_three* -e 'test_query_two' -e
> test_bidirectional \
>
> which translates into
>
> pypy-c2.0 sqla_nose.py -e 'test_orm_join*' \
> -e test_query_three* -e 'test_query_two' -e
> test_bidirectional
>
> ```python
> ======================================================================
> FAIL: test.ext.test_serializer.SerializeTest.test_orm_join
> ----------------------------------------------------------------------
> Traceback (most recent call last):
> File "/usr/lib64/pypy2.0/site-packages/nose/case.py", line 197, in
> runTest
> self.test(*self.arg)
> File "/mnt/gen2/TmpDir/portage/dev-
> python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/test/ext/test_serializer.py",
> line 144, in test_orm_join
> j2 = serializer.loads(serializer.dumps(j, -1), users.metadata)
> File "/mnt/gen2/TmpDir/portage/dev-
> python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/ext/serializer.py",
> line 164, in dumps
> pickler.dump(obj)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 224, in dump
> self.save(obj)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
> self.save_reduce(obj=obj, *rv)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
> save_reduce
> save(state)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
> f(self, obj) # Call unbound method with explicit self
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
> save_dict
> self._batch_setitems(obj.iteritems())
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
> _batch_setitems
> save(v)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
> self.save_reduce(obj=obj, *rv)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
> save_reduce
> save(state)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
> f(self, obj) # Call unbound method with explicit self
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
> save_dict
> self._batch_setitems(obj.iteritems())
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
> _batch_setitems
> save(v)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
> self.save_reduce(obj=obj, *rv)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 405, in
> save_reduce
> self.memoize(obj)
> File "/usr/lib64/pypy2.0/lib_pypy/cPickle.py", line 112, in memoize
> return PythonPickler.memoize(self, obj)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 244, in
> memoize
> assert id(obj) not in self.memo
> AssertionError
>
> ======================================================================
> FAIL: test.ext.test_serializer.SerializeTest.test_query_three
> ----------------------------------------------------------------------
> Traceback (most recent call last):
> File "/usr/lib64/pypy2.0/site-packages/nose/case.py", line 197, in
> runTest
> self.test(*self.arg)
> File "/mnt/gen2/TmpDir/portage/dev-
> python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/test/ext/test_serializer.py",
> line 131, in test_query_three
> q2 = serializer.loads(serializer.dumps(q, -1), users.metadata,
> File "/mnt/gen2/TmpDir/portage/dev-
> python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/ext/serializer.py",
> line 164, in dumps
> pickler.dump(obj)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 224, in dump
> self.save(obj)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
> self.save_reduce(obj=obj, *rv)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
> save_reduce
> save(state)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
> f(self, obj) # Call unbound method with explicit self
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
> save_dict
> self._batch_setitems(obj.iteritems())
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
> _batch_setitems
> save(v)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
> f(self, obj) # Call unbound method with explicit self
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 548, in
> save_tuple
> save(element)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
> self.save_reduce(obj=obj, *rv)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
> save_reduce
> save(state)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
> f(self, obj) # Call unbound method with explicit self
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
> save_dict
> self._batch_setitems(obj.iteritems())
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
> _batch_setitems
> save(v)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
> self.save_reduce(obj=obj, *rv)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
> save_reduce
> save(state)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
> f(self, obj) # Call unbound method with explicit self
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
> save_dict
> self._batch_setitems(obj.iteritems())
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
> _batch_setitems
> save(v)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
> self.save_reduce(obj=obj, *rv)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 405, in
> save_reduce
> self.memoize(obj)
> File "/usr/lib64/pypy2.0/lib_pypy/cPickle.py", line 112, in memoize
> return PythonPickler.memoize(self, obj)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 244, in
> memoize
> assert id(obj) not in self.memo
> AssertionError
>
> ======================================================================
> FAIL: test.ext.test_serializer.SerializeTest.test_query_two
> ----------------------------------------------------------------------
> Traceback (most recent call last):
> File "/usr/lib64/pypy2.0/site-packages/nose/case.py", line 197, in
> runTest
> self.test(*self.arg)
> File "/mnt/gen2/TmpDir/portage/dev-
> python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/test/ext/test_serializer.py",
> line 121, in test_query_two
> q2 = serializer.loads(serializer.dumps(q, -1), users.metadata,
> File "/mnt/gen2/TmpDir/portage/dev-
> python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/ext/serializer.py",
> line 164, in dumps
> pickler.dump(obj)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 224, in dump
> self.save(obj)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
> self.save_reduce(obj=obj, *rv)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
> save_reduce
> save(state)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
> f(self, obj) # Call unbound method with explicit self
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
> save_dict
> self._batch_setitems(obj.iteritems())
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
> _batch_setitems
> save(v)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
> f(self, obj) # Call unbound method with explicit self
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 548, in
> save_tuple
> save(element)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
> self.save_reduce(obj=obj, *rv)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
> save_reduce
> save(state)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
> f(self, obj) # Call unbound method with explicit self
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
> save_dict
> self._batch_setitems(obj.iteritems())
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
> _batch_setitems
> save(v)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
> self.save_reduce(obj=obj, *rv)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
> save_reduce
> save(state)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
> f(self, obj) # Call unbound method with explicit self
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
> save_dict
> self._batch_setitems(obj.iteritems())
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
> _batch_setitems
> save(v)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
> self.save_reduce(obj=obj, *rv)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 405, in
> save_reduce
> self.memoize(obj)
> File "/usr/lib64/pypy2.0/lib_pypy/cPickle.py", line 112, in memoize
> return PythonPickler.memoize(self, obj)
> File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 244, in
> memoize
> assert id(obj) not in self.memo
> AssertionError
>
> ======================================================================
> FAIL: test.orm.test_manytomany.M2MTest.test_bidirectional
> ----------------------------------------------------------------------
> Traceback (most recent call last):
> File "/usr/lib64/pypy2.0/site-packages/nose/case.py", line 197, in
> runTest
> self.test(*self.arg)
> File "/mnt/gen2/TmpDir/portage/dev-
> python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/test/orm/test_manytomany.py",
> line 249, in test_bidirectional
> (Place, [{'name': 'place3'}, {'name': 'place1'}])})
> File "/mnt/gen2/TmpDir/portage/dev-
> python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/assertions.py",
> line 266, in assert_result
> self.assert_list(result, class_, objects)
> File "/mnt/gen2/TmpDir/portage/dev-
> python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/assertions.py",
> line 273, in assert_list
> self.assert_row(class_, result[i], list[i])
> File "/mnt/gen2/TmpDir/portage/dev-
> python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/assertions.py",
> line 281, in assert_row
> self.assert_list(getattr(rowobj, key), value[0], value[1])
> File "/mnt/gen2/TmpDir/portage/dev-
> python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/assertions.py",
> line 273, in assert_list
> self.assert_row(class_, result[i], list[i])
> File "/mnt/gen2/TmpDir/portage/dev-
> python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/assertions.py",
> line 287, in assert_row
> key, getattr(rowobj, key), value))
> File "/mnt/gen2/TmpDir/portage/dev-
> python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/fixtures.py",
> line 31, in assert_
> assert val, msg
> AssertionError: attribute name value place1 does not match place3
> -------------------- >> begin captured stdout << ---------------------
> [Transition()]
>
> --------------------- >> end captured stdout << ----------------------
>
> ----------------------------------------------------------------------
> Ran 4956 tests in 807.452s
>
> FAILED (SKIP=184, failures=4)
> * ERROR: dev-python/sqlalchemy-0.8.1 failed (test phase):
> * Testsuite failed under pypy-c2.0
>
> ```
New description:
This is what's required to get the suite to pass under pypy (from an
ebuild)
"${PYTHON}" sqla_nose.py -I test_postgresql -e
'test_orm_join*' \
-e test_query_three* -e 'test_query_two' -e
test_bidirectional \
which translates into
pypy-c2.0 sqla_nose.py -e 'test_orm_join*' \
-e test_query_three* -e 'test_query_two' -e
test_bidirectional
{{{
======================================================================
FAIL: test.ext.test_serializer.SerializeTest.test_orm_join
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib64/pypy2.0/site-packages/nose/case.py", line 197, in
runTest
self.test(*self.arg)
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/test/ext/test_serializer.py",
line 144, in test_orm_join
j2 = serializer.loads(serializer.dumps(j, -1), users.metadata)
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/ext/serializer.py",
line 164, in dumps
pickler.dump(obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 224, in dump
self.save(obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
save_reduce
save(state)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
save_dict
self._batch_setitems(obj.iteritems())
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
_batch_setitems
save(v)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
save_reduce
save(state)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
save_dict
self._batch_setitems(obj.iteritems())
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
_batch_setitems
save(v)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 405, in
save_reduce
self.memoize(obj)
File "/usr/lib64/pypy2.0/lib_pypy/cPickle.py", line 112, in memoize
return PythonPickler.memoize(self, obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 244, in memoize
assert id(obj) not in self.memo
AssertionError
======================================================================
FAIL: test.ext.test_serializer.SerializeTest.test_query_three
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib64/pypy2.0/site-packages/nose/case.py", line 197, in
runTest
self.test(*self.arg)
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/test/ext/test_serializer.py",
line 131, in test_query_three
q2 = serializer.loads(serializer.dumps(q, -1), users.metadata,
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/ext/serializer.py",
line 164, in dumps
pickler.dump(obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 224, in dump
self.save(obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
save_reduce
save(state)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
save_dict
self._batch_setitems(obj.iteritems())
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
_batch_setitems
save(v)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 548, in
save_tuple
save(element)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
save_reduce
save(state)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
save_dict
self._batch_setitems(obj.iteritems())
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
_batch_setitems
save(v)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
save_reduce
save(state)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
save_dict
self._batch_setitems(obj.iteritems())
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
_batch_setitems
save(v)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 405, in
save_reduce
self.memoize(obj)
File "/usr/lib64/pypy2.0/lib_pypy/cPickle.py", line 112, in memoize
return PythonPickler.memoize(self, obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 244, in memoize
assert id(obj) not in self.memo
AssertionError
======================================================================
FAIL: test.ext.test_serializer.SerializeTest.test_query_two
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib64/pypy2.0/site-packages/nose/case.py", line 197, in
runTest
self.test(*self.arg)
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/test/ext/test_serializer.py",
line 121, in test_query_two
q2 = serializer.loads(serializer.dumps(q, -1), users.metadata,
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/ext/serializer.py",
line 164, in dumps
pickler.dump(obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 224, in dump
self.save(obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
save_reduce
save(state)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
save_dict
self._batch_setitems(obj.iteritems())
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
_batch_setitems
save(v)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 548, in
save_tuple
save(element)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
save_reduce
save(state)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
save_dict
self._batch_setitems(obj.iteritems())
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
_batch_setitems
save(v)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
save_reduce
save(state)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
save_dict
self._batch_setitems(obj.iteritems())
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
_batch_setitems
save(v)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 405, in
save_reduce
self.memoize(obj)
File "/usr/lib64/pypy2.0/lib_pypy/cPickle.py", line 112, in memoize
return PythonPickler.memoize(self, obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 244, in memoize
assert id(obj) not in self.memo
AssertionError
======================================================================
FAIL: test.orm.test_manytomany.M2MTest.test_bidirectional
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib64/pypy2.0/site-packages/nose/case.py", line 197, in
runTest
self.test(*self.arg)
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/test/orm/test_manytomany.py",
line 249, in test_bidirectional
(Place, [{'name': 'place3'}, {'name': 'place1'}])})
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/assertions.py",
line 266, in assert_result
self.assert_list(result, class_, objects)
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/assertions.py",
line 273, in assert_list
self.assert_row(class_, result[i], list[i])
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/assertions.py",
line 281, in assert_row
self.assert_list(getattr(rowobj, key), value[0], value[1])
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/assertions.py",
line 273, in assert_list
self.assert_row(class_, result[i], list[i])
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/assertions.py",
line 287, in assert_row
key, getattr(rowobj, key), value))
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/fixtures.py",
line 31, in assert_
assert val, msg
AssertionError: attribute name value place1 does not match place3
-------------------- >> begin captured stdout << ---------------------
[Transition()]
--------------------- >> end captured stdout << ----------------------
----------------------------------------------------------------------
Ran 4956 tests in 807.452s
FAILED (SKIP=184, failures=4)
* ERROR: dev-python/sqlalchemy-0.8.1 failed (test phase):
* Testsuite failed under pypy-c2.0
}}}
--
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2719#comment:2>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-05-01 13:54:59
|
#2719: release 0.8.1 testsuite failures in test_serializer (3) test_manytomany (1)
under pypy2
----------------------------------+------------------------------------
Reporter: idella4 | Owner: zzzeek
Type: defect | Status: new
Priority: medium | Milestone: 0.8.xx
Component: tests | Severity: no triage selected yet
Resolution: | Keywords: tests
Progress State: awaiting triage |
----------------------------------+------------------------------------
Comment (by idella4):
tried to edit it but it wouldn't edit.
Is it just me? Need more sys info?
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2719#comment:1>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-05-01 13:49:42
|
#2719: release 0.8.1 testsuite failures in test_serializer (3) test_manytomany (1)
under pypy2
---------------------+-----------------------------------------
Reporter: idella4 | Owner: zzzeek
Type: defect | Status: new
Priority: medium | Milestone: 0.8.xx
Component: tests | Severity: no triage selected yet
Keywords: tests | Progress State: awaiting triage
---------------------+-----------------------------------------
This is what's required to get the suite to pass under pypy (from an
ebuild)
"${PYTHON}" sqla_nose.py -I test_postgresql -e
'test_orm_join*' \
-e test_query_three* -e 'test_query_two' -e
test_bidirectional \
which translates into
pypy-c2.0 sqla_nose.py -e 'test_orm_join*' \
-e test_query_three* -e 'test_query_two' -e
test_bidirectional
```python
======================================================================
FAIL: test.ext.test_serializer.SerializeTest.test_orm_join
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib64/pypy2.0/site-packages/nose/case.py", line 197, in
runTest
self.test(*self.arg)
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/test/ext/test_serializer.py",
line 144, in test_orm_join
j2 = serializer.loads(serializer.dumps(j, -1), users.metadata)
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/ext/serializer.py",
line 164, in dumps
pickler.dump(obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 224, in dump
self.save(obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
save_reduce
save(state)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
save_dict
self._batch_setitems(obj.iteritems())
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
_batch_setitems
save(v)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
save_reduce
save(state)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
save_dict
self._batch_setitems(obj.iteritems())
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
_batch_setitems
save(v)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 405, in
save_reduce
self.memoize(obj)
File "/usr/lib64/pypy2.0/lib_pypy/cPickle.py", line 112, in memoize
return PythonPickler.memoize(self, obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 244, in memoize
assert id(obj) not in self.memo
AssertionError
======================================================================
FAIL: test.ext.test_serializer.SerializeTest.test_query_three
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib64/pypy2.0/site-packages/nose/case.py", line 197, in
runTest
self.test(*self.arg)
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/test/ext/test_serializer.py",
line 131, in test_query_three
q2 = serializer.loads(serializer.dumps(q, -1), users.metadata,
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/ext/serializer.py",
line 164, in dumps
pickler.dump(obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 224, in dump
self.save(obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
save_reduce
save(state)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
save_dict
self._batch_setitems(obj.iteritems())
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
_batch_setitems
save(v)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 548, in
save_tuple
save(element)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
save_reduce
save(state)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
save_dict
self._batch_setitems(obj.iteritems())
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
_batch_setitems
save(v)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
save_reduce
save(state)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
save_dict
self._batch_setitems(obj.iteritems())
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
_batch_setitems
save(v)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 405, in
save_reduce
self.memoize(obj)
File "/usr/lib64/pypy2.0/lib_pypy/cPickle.py", line 112, in memoize
return PythonPickler.memoize(self, obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 244, in memoize
assert id(obj) not in self.memo
AssertionError
======================================================================
FAIL: test.ext.test_serializer.SerializeTest.test_query_two
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib64/pypy2.0/site-packages/nose/case.py", line 197, in
runTest
self.test(*self.arg)
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/test/ext/test_serializer.py",
line 121, in test_query_two
q2 = serializer.loads(serializer.dumps(q, -1), users.metadata,
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/ext/serializer.py",
line 164, in dumps
pickler.dump(obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 224, in dump
self.save(obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
save_reduce
save(state)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
save_dict
self._batch_setitems(obj.iteritems())
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
_batch_setitems
save(v)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 548, in
save_tuple
save(element)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
save_reduce
save(state)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
save_dict
self._batch_setitems(obj.iteritems())
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
_batch_setitems
save(v)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 419, in
save_reduce
save(state)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 286, in save
f(self, obj) # Call unbound method with explicit self
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 653, in
save_dict
self._batch_setitems(obj.iteritems())
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 685, in
_batch_setitems
save(v)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 331, in save
self.save_reduce(obj=obj, *rv)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 405, in
save_reduce
self.memoize(obj)
File "/usr/lib64/pypy2.0/lib_pypy/cPickle.py", line 112, in memoize
return PythonPickler.memoize(self, obj)
File "/usr/lib64/pypy2.0/lib-python/2.7/pickle.py", line 244, in memoize
assert id(obj) not in self.memo
AssertionError
======================================================================
FAIL: test.orm.test_manytomany.M2MTest.test_bidirectional
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/lib64/pypy2.0/site-packages/nose/case.py", line 197, in
runTest
self.test(*self.arg)
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/test/orm/test_manytomany.py",
line 249, in test_bidirectional
(Place, [{'name': 'place3'}, {'name': 'place1'}])})
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/assertions.py",
line 266, in assert_result
self.assert_list(result, class_, objects)
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/assertions.py",
line 273, in assert_list
self.assert_row(class_, result[i], list[i])
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/assertions.py",
line 281, in assert_row
self.assert_list(getattr(rowobj, key), value[0], value[1])
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/assertions.py",
line 273, in assert_list
self.assert_row(class_, result[i], list[i])
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/assertions.py",
line 287, in assert_row
key, getattr(rowobj, key), value))
File "/mnt/gen2/TmpDir/portage/dev-
python/sqlalchemy-0.8.1/work/SQLAlchemy-0.8.1-pypy2_0/./lib/sqlalchemy/testing/fixtures.py",
line 31, in assert_
assert val, msg
AssertionError: attribute name value place1 does not match place3
-------------------- >> begin captured stdout << ---------------------
[Transition()]
--------------------- >> end captured stdout << ----------------------
----------------------------------------------------------------------
Ran 4956 tests in 807.452s
FAILED (SKIP=184, failures=4)
* ERROR: dev-python/sqlalchemy-0.8.1 failed (test phase):
* Testsuite failed under pypy-c2.0
```
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2719>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-04-30 14:03:47
|
#2718: sessiontransaction contextmanager is broken due to new states in
_assert_active()
-----------------------------------+----------------------------------
Reporter: zzzeek | Owner: zzzeek
Type: defect | Status: closed
Priority: highest | Milestone: 0.8.xx
Component: orm | Severity: minor - half an hour
Resolution: fixed | Keywords:
Progress State: completed/closed |
-----------------------------------+----------------------------------
Changes (by zzzeek):
* status: new => closed
* resolution: => fixed
* status_field: needs tests => completed/closed
Comment:
rbbaf1d453789
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2718#comment:1>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-04-30 13:49:08
|
#2718: sessiontransaction contextmanager is broken due to new states in
_assert_active()
---------------------+---------------------------------------
Reporter: zzzeek | Owner: zzzeek
Type: defect | Status: new
Priority: highest | Milestone: 0.8.xx
Component: orm | Severity: minor - half an hour
Keywords: | Progress State: needs tests
---------------------+---------------------------------------
{{{
from sqlalchemy import *
from sqlalchemy.orm import *
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class A(Base):
__tablename__ = 'a'
id = Column(Integer, primary_key=True)
e = create_engine("postgresql://scott:tiger@localhost/test")
Base.metadata.drop_all(e)
Base.metadata.create_all(e)
s = Session(e)
s.add(A(id=1))
s.commit()
try:
with s.begin_nested():
s.add(A(id=1))
s.flush()
except Exception, e:
print e
with s.begin_nested():
s.add(A(id=2))
s.flush()
assert s.query(A).count() == 2
}}}
patch:
{{{
diff -r 1e9e659f192b lib/sqlalchemy/orm/session.py
--- a/lib/sqlalchemy/orm/session.py Tue Apr 30 00:15:36 2013 -0400
+++ b/lib/sqlalchemy/orm/session.py Tue Apr 30 09:48:35 2013 -0400
@@ -169,6 +169,7 @@
def _assert_active(self, prepared_ok=False,
rollback_ok=False,
+ deactive_ok=False,
closed_msg="This transaction is closed"):
if self._state is COMMITTED:
raise sa_exc.InvalidRequestError(
@@ -182,7 +183,7 @@
"SQL can be emitted within this transaction."
)
elif self._state is DEACTIVE:
- if not rollback_ok:
+ if not deactive_ok and not rollback_ok:
if self._rollback_exception:
raise sa_exc.InvalidRequestError(
"This Session's transaction has been rolled back
"
@@ -192,7 +193,7 @@
" Original exception was: %s"
% self._rollback_exception
)
- else:
+ elif not deactive_ok:
raise sa_exc.InvalidRequestError(
"This Session's transaction has been rolled back
"
"by a nested rollback() call. To begin a new "
@@ -435,7 +436,7 @@
return self
def __exit__(self, type, value, traceback):
- self._assert_active(prepared_ok=True)
+ self._assert_active(deactive_ok=True, prepared_ok=True)
if self.session.transaction is None:
return
if type is None:
}}}
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2718>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-04-29 23:36:01
|
#2273: freetds 0.91 - does not appear to work at all
-----------------------------------+---------------------------------------
Reporter: zzzeek | Owner:
Type: defect | Status: closed
Priority: medium | Milestone: blue sky
Component: mssql | Severity: very major - up to 2 days
Resolution: worksforme | Keywords:
Progress State: completed/closed |
-----------------------------------+---------------------------------------
Changes (by zzzeek):
* status: new => closed
* resolution: => worksforme
* status_field: on hold => completed/closed
Comment:
I still have major issues with freetds0.91 + pyodbc on the mac, but things
have improved and people do use 0.91 so there's not much happening here.
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2273#comment:10>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-04-29 23:31:56
|
#845: try to auto-detect "ansi quotes" mode on mysql connections
---------------------------------+-----------------------------------------
Reporter: jek | Owner: jek
Type: enhancement | Status: closed
Priority: medium | Milestone: 0.x.xx
Component: mysql | Severity: major - 1-3 hours
Resolution: fixed | Keywords: mysql reflection ddl quotes
Progress State: |
completed/closed |
---------------------------------+-----------------------------------------
Changes (by zzzeek):
* status: new => closed
* resolution: => fixed
* severity: refactor - over two days => major - 1-3 hours
* status_field: awaiting triage => completed/closed
Comment:
things like server modes and such only need be detected on connect, we
don't support changing of SQL modes and other global flags on an already
in-use dialect. the use_ansiquotes option itself was effectively removed
in 0.6, it just never got documented correctly. Some very old
documentation has been fixed via #1552.
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/845#comment:4>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-04-29 23:30:25
|
#1552: Documentation about setting SQL Mode in MySQL incomplete
--------------------------------+------------------------------------------
Reporter: guest | Owner: zzzeek
Type: defect | Status: closed
Priority: medium | Milestone: 0.x.xx
Component: documentation | Severity: minor - half an hour
Resolution: fixed | Keywords: sql_mode documentation mysql
Progress State: |
completed/closed |
--------------------------------+------------------------------------------
Changes (by zzzeek):
* status: new => closed
* resolution: => fixed
* status_field: awaiting triage => completed/closed
Comment:
all of this verbiage is long out of date since 0.6 as the whole ANSI
QUOTES thing is automatic and there's otherwise no special information
about `sql_mode` needed. Since we've had the wrong docs up on the site
in this regard for years now, I've replaced it with a paragraph that
states there's nothing really do be done in this regard along with an 0.6
note, in r715efae23997, r4667d0f6eb6b, rd8eb4b9a790d for 0.6, 0.7,
default.
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/1552#comment:3>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-04-29 21:26:23
|
#2717: AbstractConcreteBase class provides incorrect example
--------------------------------+-----------------------------------
Reporter: markhildreth | Owner: zzzeek
Type: defect | Status: new
Priority: low | Milestone: 0.8.xx
Component: documentation | Severity: trivial - <10 minutes
Resolution: | Keywords:
Progress State: in queue |
--------------------------------+-----------------------------------
Changes (by zzzeek):
* status_field: awaiting triage => in queue
* severity: no triage selected yet => trivial - <10 minutes
* milestone: => 0.8.xx
Comment:
in the actual docstring for ACB, not the declarative tutorial docs
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2717#comment:1>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-04-29 21:21:50
|
#2717: AbstractConcreteBase class provides incorrect example
---------------------------+-----------------------------------------
Reporter: markhildreth | Owner: zzzeek
Type: defect | Status: new
Priority: low | Milestone:
Component: documentation | Severity: no triage selected yet
Keywords: | Progress State: awaiting triage
---------------------------+-----------------------------------------
The docstring for AbstractConcreteBase shows the following example:
{{{
from sqlalchemy.ext.declarative import ConcreteBase
class Employee(AbstractConcreteBase, Base):
pass
class Manager(Employee):
__tablename__ = 'manager'
employee_id = Column(Integer, primary_key=True)
name = Column(String(50))
manager_data = Column(String(40))
__mapper_args__ = {
'polymorphic_identity':'manager',
'concrete':True}
}}}
This first line imports ConcreteBase, when really it should import
AbstractConcreteBase
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2717>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-04-27 23:16:23
|
#2715: add more explicit documentation/flags for the many gaerdbms DBAPI options
------------------------------+--------------------------------------
Reporter: moraes | Owner: zzzeek
Type: enhancement | Status: new
Priority: medium | Milestone: 0.8.xx
Component: engine | Severity: minor - half an hour
Resolution: | Keywords: gaerdbms, mysql, dialect
Progress State: in queue |
------------------------------+--------------------------------------
Comment (by moraes):
Sounds good. This way the dialect leaves to the developer to detect which
environment is currently running. I only wonder if two ways to do it are
necessary; maybe the string based approach is enough?
Notice that there's an special case in `create_connect_args()` when using
the mysqldb api: the 'dsn' argument should not be set as it will cause an
error ("DBAPIError: (TypeError) 'dsn' is an invalid keyword argument for
this function None None"). The 'instance' argument is fine.
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2715#comment:3>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-04-27 19:55:09
|
#1390: postgresql regular expression operators
------------------------------+----------------------------------
Reporter: guest | Owner: zzzeek
Type: enhancement | Status: new
Priority: medium | Milestone: 0.8.xx
Component: postgres | Severity: minor - half an hour
Resolution: | Keywords: match
Progress State: needs tests |
------------------------------+----------------------------------
Changes (by zzzeek):
* priority: low => medium
* milestone: 0.x.xx => 0.8.xx
* severity: trivial - <10 minutes => minor - half an hour
* status_field: awaiting triage => needs tests
Comment:
demo:
{{{
from sqlalchemy import *
from sqlalchemy.dialects import postgresql
metadata = MetaData()
t = Table('t', metadata,
Column('x', postgresql.VARCHAR(30))
)
print t.c.x.regexp("foo").compile(dialect=postgresql.dialect())
print (~t.c.x.regexp("foo")).compile(dialect=postgresql.dialect())
print (~t.c.x.iregexp("foo")).compile(dialect=postgresql.dialect())
}}}
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/1390#comment:3>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-04-27 19:35:44
|
#1841: make it clear that Text() is generally an "unlengthed" type
-----------------------------------+-----------------------------------
Reporter: guest | Owner: zzzeek
Type: defect | Status: closed
Priority: low | Milestone: 0.x.xx
Component: documentation | Severity: trivial - <10 minutes
Resolution: fixed | Keywords:
Progress State: completed/closed |
-----------------------------------+-----------------------------------
Changes (by zzzeek):
* status: new => closed
* resolution: => fixed
* status_field: in queue => completed/closed
Comment:
r7a84abeaed14
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/1841#comment:3>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-04-27 19:27:48
|
#1443: reflect unique/check constraint
------------------------------------+---------------------------------
Reporter: guest | Owner: zzzeek
Type: enhancement | Status: new
Priority: medium | Milestone: 0.x.xx
Component: postgres | Severity: major - 1-3 hours
Resolution: | Keywords: reflect constraints
Progress State: needs a volunteer |
------------------------------------+---------------------------------
Changes (by zzzeek):
* type: defect => enhancement
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/1443#comment:2>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-04-27 19:24:15
|
#1409: Polymorphic map: Lookup when discriminator is NULL
-----------------------------------+------------------------------------
Reporter: guest | Owner: zzzeek
Type: defect | Status: closed
Priority: medium | Milestone: 0.x.xx
Component: orm | Severity: no triage selected yet
Resolution: worksforme | Keywords:
Progress State: completed/closed |
-----------------------------------+------------------------------------
Changes (by zzzeek):
* status: new => closed
* resolution: => worksforme
* status_field: not decided upon => completed/closed
Comment:
here we are, "null" identity key using changesets referenced in #2238:
{{{
from sqlalchemy import *
from sqlalchemy.orm import *
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy import event
engine = create_engine('sqlite:///:memory:', echo=True)
Base = declarative_base()
class User(Base):
""" Base user """
__tablename__ = 'users'
id = Column(Integer, primary_key=True)
name = Column(String)
fullname = Column(String)
password = Column(String)
status_id = Column(Integer)
__mapper_args__ = {'polymorphic_on': func.coalesce(status_id,
"inactive")}
class ActiveUser(User):
""" Active user """
__mapper_args__ = {'polymorphic_identity': 1}
class InactiveUser(User):
""" Inactive user """
__mapper_args__ = {'polymorphic_identity': "inactive"}
@event.listens_for(InactiveUser, "init")
def init(target, args, kwargs):
target.status_id = None
@event.listens_for(ActiveUser, "init")
def init(target, args, kwargs):
target.status_id = 1
Base.metadata.create_all(engine)
Session = sessionmaker(bind=engine)
session = Session()
# data already in DB
session.execute(
u'INSERT INTO `users` (`name`, `fullname`, `password`, `status_id`)'
u'VALUES ("hp", "Hans-Peter", "abcdefg", 1)'
)
session.execute(
u'INSERT INTO `users` (`name`, `fullname`, `password`, `status_id`)'
r'VALUES ("fj", "Franz-Josef", "abcdefg", NULL)'
)
# test ORM persistence with our init events
session.add(ActiveUser())
session.add(InactiveUser())
session.flush()
users = session.query(User).order_by(User.id).all()
assert \
[type(u) for u in users] == \
[ActiveUser, InactiveUser, ActiveUser, InactiveUser]
}}}
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/1409#comment:3>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-04-27 19:08:27
|
#878: Using invalid column/group name in defer(), undefer() or undefer_group()
doesn't raise an exception
-----------------------------------+----------------------------------
Reporter: roger.demetrescu | Owner: zzzeek
Type: defect | Status: closed
Priority: medium | Milestone: 0.x.xx
Component: orm | Severity: minor - half an hour
Resolution: wontfix | Keywords:
Progress State: completed/closed |
-----------------------------------+----------------------------------
Changes (by zzzeek):
* status: new => closed
* resolution: => wontfix
* status_field: awaiting triage => completed/closed
Comment:
the undefer option just puts a key in the query._attributes dictionary,
and to locate those which are "unconsumed" would be strictly an addition
of new steps within query, checking off some list of options that were
consumed and then looking at those which are left for some kind of
"unconsumed" status. But "unconsumed" options aren't really an "error"
anyway, it's valid to produce a Query with a fixed set of options that
should take place regardless of certain paths being present.
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/878#comment:2>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-04-27 19:02:00
|
#867: document post_update, version_id_col
--------------------------------+----------------------------------
Reporter: zzzeek | Owner: zzzeek
Type: task | Status: new
Priority: medium | Milestone: 0.x.xx
Component: documentation | Severity: minor - half an hour
Resolution: | Keywords:
Progress State: in queue |
--------------------------------+----------------------------------
Changes (by zzzeek):
* type: defect => task
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/867#comment:4>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-04-27 19:01:28
|
#2133: convert trac faq section into documentation sections
--------------------------------+---------------------------------------
Reporter: zzzeek | Owner: empty
Type: task | Status: new
Priority: high | Milestone: 0.x.xx
Component: documentation | Severity: very major - up to 2 days
Resolution: | Keywords:
Progress State: in progress |
--------------------------------+---------------------------------------
Changes (by zzzeek):
* type: defect => task
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2133#comment:7>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|
|
From: sqlalchemy <mi...@zz...> - 2013-04-27 15:39:29
|
#2649: Support Google Cloud SQL using rdbms_googleapi along with rdbms_apiproxy
-----------------------------------+----------------------------------
Reporter: techniq | Owner:
Type: enhancement | Status: closed
Priority: medium | Milestone: 0.8.0final
Component: mysql | Severity: minor - half an hour
Resolution: fixed | Keywords:
Progress State: completed/closed |
-----------------------------------+----------------------------------
Comment (by zzzeek):
opening up for more options in #2715.
--
Ticket URL: <http://www.sqlalchemy.org/trac/ticket/2649#comment:7>
sqlalchemy <http://www.sqlalchemy.org/>
The Database Toolkit for Python
|