Mike Bayer [Tue, 10 Jul 2007 06:51:58 +0000 (06:51 +0000)]
more "column targeting" enhancements..columns have a "depth" from their ultimate source column so that corresponding_column() can find the column that is "closest" (i.e. fewest levels of proxying) to the requested column
Mike Bayer [Sun, 8 Jul 2007 21:18:46 +0000 (21:18 +0000)]
- ForeignKey to a table in a schema thats not the default schema
requires the schema to be explicit; i.e. ForeignKey('alt_schema.users.id')
- the fix in "schema" above fixes postgres reflection of foreign keys from an
alt-schema table to a public schema table
Jason Kirtland [Fri, 6 Jul 2007 00:58:09 +0000 (00:58 +0000)]
- Deprecated DynamicMetaData- use ThreadLocalMetaData or MetaData instead
- Deprecated BoundMetaData- use MetaData instead
- Removed DMD and BMD from documentation
Mike Bayer [Thu, 5 Jul 2007 00:09:06 +0000 (00:09 +0000)]
- replaced calls for mapper.props in Query with mapper.get_property(),
which resolves synonyms. fixes [ticket:598] for join/join_to/join_via/with_parent
Mike Bayer [Sat, 30 Jun 2007 16:57:20 +0000 (16:57 +0000)]
improved handling of exceptions upon __init__(): will preserve the stack
trace of the original __init__ exception; errors raised during session.expunge() will be
reported as warnings
Mike Bayer [Sat, 30 Jun 2007 01:14:15 +0000 (01:14 +0000)]
- added a mutex to QueuePool's "overflow" calculation to prevent a race
condition that can bypass max_overflow; merged from 0.4 branch r2736-2738.
also made the locking logic simpler, tried to get the test to create a
failure on OSX (not successful)
Mike Bayer [Sat, 30 Jun 2007 00:20:26 +0000 (00:20 +0000)]
- MetaData and all SchemaItems are safe to use with pickle. slow
table reflections can be dumped into a pickled file to be reused later.
Just reconnect the engine to the metadata after unpickling. [ticket:619]
Mike Bayer [Fri, 29 Jun 2007 23:50:25 +0000 (23:50 +0000)]
postgres:
- added support for reflection of domains [ticket:570]
- types which are missing during reflection resolve to Null type
instead of raising an error
- moved reflection/types/query unit tests specific to postgres to new
postgres unittest module
Mike Bayer [Wed, 27 Jun 2007 20:38:43 +0000 (20:38 +0000)]
- fix to the "column_prefix" flag so that the mapper does not
trip over synonyms (and others) that are named after the column's actual
"key" (since, column_prefix means "dont use the key").
Mike Bayer [Mon, 25 Jun 2007 17:07:25 +0000 (17:07 +0000)]
- fixed precedence of operators so that parenthesis are correctly applied
[ticket:620]
- calling <column>.in_() (i.e. with no arguments) will return
"CASE WHEN (<column> IS NULL) THEN NULL ELSE 0 END = 1)", so that
NULL or False is returned in all cases, rather than throwing an error
[ticket:545]
Mike Bayer [Fri, 22 Jun 2007 15:36:54 +0000 (15:36 +0000)]
- added dialect flag "auto_convert_lobs", defaults to True; will cause any
LOB objects detected in a result set to be forced into OracleBinary
so that the LOB is read() automatically, if no typemap was present
(i.e., if a textual execute() was issued).
Mike Bayer [Wed, 20 Jun 2007 21:08:10 +0000 (21:08 +0000)]
- added synchronization to the mapper() construction step, to avoid
thread collections when pre-existing mappers are compiling in a
different thread [ticket:613]
Mike Bayer [Sun, 17 Jun 2007 00:49:08 +0000 (00:49 +0000)]
- result.last_inserted_ids() should return a list that is identically
sized to the primary key constraint of the table. values that were
"passively" created and not available via cursor.lastrowid will be None.
- sqlite: string PK column inserts dont get overwritten with OID [ticket:603]
Jason Kirtland [Thu, 14 Jun 2007 00:11:51 +0000 (00:11 +0000)]
- Iteration over dict association proxies is now dict-like, not
InstrumentedList-like (e.g. over keys instead of values).
- Don't tightly bind proxies to source collections (fixes #597)
- Handle slice objects on orderinglist's __setitem__
Mike Bayer [Wed, 6 Jun 2007 23:37:18 +0000 (23:37 +0000)]
- fixed bug where selectable.corresponding_column(selectable.c.col)
would not return selectable.c.col, if the selectable is a join
of a table and another join involving the same table. messed
up ORM decision making [ticket:593]
Jason Kirtland [Thu, 31 May 2007 22:56:24 +0000 (22:56 +0000)]
- Emit BOOL rather than BOOLEAN for MySQL booleans in DDL, for old versions
of MySQL (#583)
- MySQL columns (such as times) with colons in their default values couldn't
be roundtripped, fixed (also in Postgres, but not fixed here.)
- BINARY/VARBINARY columns aren't really binary at all on ancient versions
of MySQL. The type.Binary(123) passthrough now always makes BLOBs.
Removed the short-lived MSBaseBinary.
- Added mysql.get_version_info, given a connectable returns a tuple of server
version info.
- Backed off on the reflection tests for older versions of MySQL, for now.
Mike Bayer [Thu, 31 May 2007 17:17:22 +0000 (17:17 +0000)]
- significant speed improvement to ResultProxy, pre-caches
TypeEngine dialect implementations and saves on function calls
per column. drops the masseagerload test from 80K function calls
to 66K
Mike Bayer [Sat, 26 May 2007 21:29:50 +0000 (21:29 +0000)]
added hotshot points into unit test, localizes profiling to just the query.select() process.
0.4 branch now has 18% fewer function calls for the same test.
Jason Kirtland [Fri, 25 May 2007 22:48:42 +0000 (22:48 +0000)]
- Nearly all MySQL column types are now supported for declaration and
reflection. Added NCHAR, NVARCHAR, VARBINARY, TINYBLOB, LONGBLOB, YEAR
- The sqltypes.Binary passthrough now builds a VARBINARY rather than a
BINARY if given a length
- Refactored the inheritance of some types with respect to sqltypes, and
especially the binary types
- Lots and lots of docs
- MySQL unit tests now starting to adapt to known problems with alpha/beta
drivers
- A couple mysql unit test fix-ups and expansions
Jason Kirtland [Fri, 25 May 2007 22:30:39 +0000 (22:30 +0000)]
- DB connection urls for tests can now be loaded from a configuration file
- Test runs can now --require a particular external package version
- Added some 'coerce' magic to the Oracle connection factory to support use_ansi in the dburl query string
Mike Bayer [Tue, 22 May 2007 16:47:55 +0000 (16:47 +0000)]
- improved support for eagerloading of properties off of mappers that are mapped
to select() statements; i.e. eagerloader is better at locating the correct
selectable with which to attach its LEFT OUTER JOIN.
- some fixes to new tests in inheritance5 to work with postgres