Mike Bayer [Sun, 26 May 2013 17:08:24 +0000 (13:08 -0400)]
fix serializer tests. something is wrong with non-C pickle but for some reason py3k's pickle seems to be OK? not sure why that is, as this
is all related to http://bugs.python.org/issue998998
Mike Bayer [Thu, 23 May 2013 16:59:53 +0000 (12:59 -0400)]
Fixed a bug where the routine to detect the correct kwargs
being sent to :func:`.create_engine` would fail in some cases,
such as with the Sybase dialect.
[ticket:2732]
Mike Bayer [Mon, 13 May 2013 20:13:15 +0000 (16:13 -0400)]
Fixed a regression from 0.7 caused by this ticket, which
made the check for recursion overflow in self-referential
eager joining too loose, missing a particular circumstance
where a subclass had lazy="joined" or "subquery" configured
and the load was a "with_polymorphic" against the base.
[ticket:2481]
Mike Bayer [Sat, 4 May 2013 18:59:26 +0000 (14:59 -0400)]
- unicode literals need to just be handled differently if they have utf-8
encoded in them vs. unicode escaping. not worth figuring out how to combine
these right now
Mike Bayer [Tue, 30 Apr 2013 14:02:49 +0000 (10:02 -0400)]
- Fixed a regression from 0.7 where the contextmanager feature
of :meth:`.Session.begin_nested` would fail to correctly
roll back the transaction when a flush error occurred, instead
raising its own exception while leaving the session still
pending a rollback. [ticket:2718]
Mike Bayer [Mon, 29 Apr 2013 23:49:28 +0000 (19:49 -0400)]
Updated mysqlconnector dialect to check for disconnect based
on the apparent string message sent in the exception; tested
against mysqlconnector 1.0.9.
Mike Bayer [Fri, 26 Apr 2013 19:51:29 +0000 (15:51 -0400)]
Fixes to the ``sqlalchemy.ext.serializer`` extension, including
that the "id" passed from the pickler is turned into a string
to prevent against bytes being parsed on Py3K, as well as that
``relationship()`` and ``orm.join()`` constructs are now properly
serialized. [ticket:2698] and some other observed issues.
Mike Bayer [Thu, 25 Apr 2013 18:44:37 +0000 (14:44 -0400)]
- further cleanup. in particular, the left clause is never None. But we still
can have errors when we do the auto-join, these are both covered in test_joins
Mike Bayer [Wed, 24 Apr 2013 22:58:09 +0000 (18:58 -0400)]
- attempt to replace the whole idea of "join_to_left" with a more
fundamental and general purpose heuristic. this initial approach
has about 60 tests failing but seems to have gone pretty far
Mike Bayer [Tue, 23 Apr 2013 17:23:48 +0000 (13:23 -0400)]
Added a conditional to the unpickling process for ORM
mapped objects, such that if the reference to the object
were lost when the object was pickled, we don't
erroneously try to set up _sa_instance_state - fixes
a NoneType error.
Mike Bayer [Mon, 22 Apr 2013 23:33:39 +0000 (19:33 -0400)]
Opened up the checking for "disconnect" with psycopg2/libpq
to check for all the various "disconnect" messages within
the full exception hierarchy. Specifically the
"closed the connection unexpectedly" message has now been
seen in at least three different exception types.
[ticket:2712]
Mike Bayer [Mon, 22 Apr 2013 23:12:47 +0000 (19:12 -0400)]
Fully implemented the IS and IS NOT operators with
regards to the True/False constants. An expression like
``col.is_(True)`` will now render ``col IS true``
on the target platform, rather than converting the True/
False constant to an integer bound parameter.
This allows the ``is_()`` operator to work on MySQL when
given True/False constants.
[ticket:2682]
Mike Bayer [Mon, 22 Apr 2013 20:57:15 +0000 (16:57 -0400)]
The operators for the Postgresql ARRAY type supports
input types of sets, generators, etc. but only when a dimension
is specified for the ARRAY; otherwise, the dialect
needs to peek inside of "arr[0]" to guess how many
dimensions are in use. If this occurs with a non
list/tuple type, the error message is now informative
and directs to specify a dimension for the ARRAY.
[ticket:2681]