]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/log
thirdparty/sqlalchemy/sqlalchemy.git
17 years agoAdded PGCidr type to postgres. Closes #1092
Michael Trier [Thu, 3 Jul 2008 03:40:23 +0000 (03:40 +0000)] 
Added PGCidr type to postgres. Closes #1092

17 years ago- add SLFloat type, which matches the SQLite REAL
Mike Bayer [Wed, 2 Jul 2008 18:26:58 +0000 (18:26 +0000)] 
- add SLFloat type, which matches the SQLite REAL
type affinity.  Previously, only SLNumeric was provided
which fulfills NUMERIC affinity, but that's not the
same as REAL.

17 years ago- applied the "reverse" of r4877 from trunk; correct microsecond behavior is availabl...
Mike Bayer [Fri, 27 Jun 2008 20:21:37 +0000 (20:21 +0000)] 
- applied the "reverse" of r4877 from trunk; correct microsecond behavior is available in 0.4 if you turn off "__legacy_microseconds__" [ticket:1090]

17 years ago- The index name generated when you say "index=True"
Mike Bayer [Sun, 22 Jun 2008 17:44:35 +0000 (17:44 +0000)] 
- The index name generated when you say "index=True"
on a Column is truncated to the length appropriate
for the dialect. Additionally, an Index with a too-
long name cannot be explicitly dropped with
Index.drop(), similar to [ticket:571].
[ticket:820]

17 years ago- create_all(), drop_all(), create(), drop() all raise
Mike Bayer [Sun, 22 Jun 2008 16:53:07 +0000 (16:53 +0000)] 
- create_all(), drop_all(), create(), drop() all raise
an error if the table name or schema name contains
more characters than that dialect's configured
character limit.  Some DB's can handle too-long
table names during usage, and SQLA can handle this
as well. But various reflection/
checkfirst-during-create scenarios fail since we are
looking for the name within the DB's catalog tables.
[ticket:571]

17 years agomerged r4861, session.is_active, from trunk
Mike Bayer [Tue, 17 Jun 2008 20:55:05 +0000 (20:55 +0000)] 
merged r4861, session.is_active, from trunk

17 years agomerged PG test from r4859
Mike Bayer [Tue, 17 Jun 2008 20:18:04 +0000 (20:18 +0000)] 
merged PG test from r4859

17 years ago - Repaired server_side_cursors to properly detect
Mike Bayer [Tue, 17 Jun 2008 15:12:56 +0000 (15:12 +0000)] 
- Repaired server_side_cursors to properly detect
      text() clauses.

17 years agoadded sequence for oracle support
Mike Bayer [Fri, 13 Jun 2008 15:26:09 +0000 (15:26 +0000)] 
added sequence for oracle support

17 years ago- the enable_typechecks=False setting on relation()
Mike Bayer [Thu, 12 Jun 2008 03:34:13 +0000 (03:34 +0000)] 
- the enable_typechecks=False setting on relation()
now only allows subtypes with inheriting mappers.
Totally unrelated types, or subtypes not set up with
mapper inheritance against the target mapper are
still not allowed.

18 years agoadded some docstrings and some deprecations
Mike Bayer [Mon, 9 Jun 2008 01:46:35 +0000 (01:46 +0000)] 
added some docstrings and some deprecations

18 years ago- Query.count() will take single-table inheritance
Mike Bayer [Wed, 4 Jun 2008 19:25:35 +0000 (19:25 +0000)] 
- Query.count() will take single-table inheritance
subtypes into account the same way row-based
results do. (ticket:1008]. partial merge of 0.5's r4831.)

18 years ago- fixed bug preventing merge() from functioning in
Mike Bayer [Tue, 3 Jun 2008 14:30:42 +0000 (14:30 +0000)] 
- fixed bug preventing merge() from functioning in
conjunction with a comparable_property()

18 years ago- The contains() operator when used with many-to-many
Mike Bayer [Sun, 1 Jun 2008 14:08:02 +0000 (14:08 +0000)] 
- The contains() operator when used with many-to-many
will alias() the secondary (association) table so
that multiple contains() calls will not conflict
with each other [ticket:1058]

18 years ago- Cursors now have "arraysize" set to 50 by default on
Mike Bayer [Fri, 30 May 2008 20:56:47 +0000 (20:56 +0000)] 
- Cursors now have "arraysize" set to 50 by default on
them, the value of which is configurable using the
"arraysize" argument to create_engine() with the
Oracle dialect.  This to account for cx_oracle's default
setting of "1", which has the effect of many round trips
being sent to Oracle.  This actually works well in
conjunction with BLOB/CLOB-bound cursors, of which
there are any number available but only for the life of
that row request (so BufferedColumnRow is still needed,
but less so). [ticket:1062]

18 years ago- Added 'CALL' to the list of SQL keywords which return
Mike Bayer [Tue, 27 May 2008 20:20:14 +0000 (20:20 +0000)] 
- Added 'CALL' to the list of SQL keywords which return
result rows.

18 years agomerged r4813 from trunk, oracle schema name fix for [ticket:709]
Mike Bayer [Sat, 24 May 2008 23:35:41 +0000 (23:35 +0000)] 
merged r4813 from trunk, oracle schema name fix for [ticket:709]

18 years agoget_default_identifier() normalizes the returned name so that it may
Mike Bayer [Sat, 24 May 2008 17:05:50 +0000 (17:05 +0000)] 
get_default_identifier() normalizes the returned name so that it may
by used as the "schema" argument on a Table.  Fixes the reflection unit
test that requires this.

18 years ago- repaired single table inheritance such that you rel_0_4_6
Mike Bayer [Sat, 10 May 2008 17:31:07 +0000 (17:31 +0000)] 
- repaired single table inheritance such that you
can single-table inherit from a joined-table inherting
mapper without issue [ticket:1036].

18 years agosame as r4710:
Gaëtan de Menten [Fri, 9 May 2008 20:51:35 +0000 (20:51 +0000)] 
same as r4710:
add target_fullname as a public property for _get_colspec

18 years agoback-merged current 0.4 trunk into rel_0_4 branch, which will become the 0.4 maintena...
Mike Bayer [Fri, 9 May 2008 14:07:28 +0000 (14:07 +0000)] 
back-merged current 0.4 trunk into rel_0_4 branch, which will become the 0.4 maintenance branch

18 years agoadded an example on how to share code between sql predicate construction and instance...
Ants Aasma [Fri, 27 Jul 2007 03:30:49 +0000 (03:30 +0000)] 
added an example on how to share code between sql predicate construction and instance methods.

18 years agotook out extra exception catch/raise SQLError in places where it would already
Mike Bayer [Fri, 27 Jul 2007 03:15:34 +0000 (03:15 +0000)] 
took out extra exception catch/raise SQLError in places where it would already
be SQLError

18 years agofixed bad import
Mike Bayer [Thu, 26 Jul 2007 22:39:21 +0000 (22:39 +0000)] 
fixed bad import

18 years ago- all oracle testtypes pass in this rev
Mike Bayer [Thu, 26 Jul 2007 22:34:57 +0000 (22:34 +0000)] 
- all oracle testtypes pass in this rev

18 years ago- removed problematic generate_dbapi_typemap() method. its hardcoded just for oracle
Mike Bayer [Thu, 26 Jul 2007 22:30:09 +0000 (22:30 +0000)] 
- removed problematic generate_dbapi_typemap() method.  its hardcoded just for oracle
so far (which needs it the most).

18 years agotemporarily disabling genrated type_map which breaks all the othe rdialects
Mike Bayer [Thu, 26 Jul 2007 22:18:59 +0000 (22:18 +0000)] 
temporarily disabling genrated type_map which breaks all the othe rdialects

18 years ago- very rudimental support for OUT parameters added; use sql.outparam(name, type)
Mike Bayer [Thu, 26 Jul 2007 22:09:52 +0000 (22:09 +0000)] 
- very rudimental support for OUT parameters added; use sql.outparam(name, type)
    to set up an OUT parameter, just like bindparam(); after execution, values are
    avaiable via result.out_parameters dictionary. [ticket:507]
- dialect.get_type_map() apparently never worked, not sure why unit test seemed
to work the first time around.
- OracleText doesn't seem to return cx_oracle.LOB.

18 years agoUm... "ImportError: No module named profile; please install the python-profiler...
Jason Kirtland [Thu, 26 Jul 2007 21:12:20 +0000 (21:12 +0000)] 
Um...  "ImportError: No module named profile; please install the python-profiler package"

18 years ago- Compiled is just an object now. the ClauseVisitor portion
Mike Bayer [Thu, 26 Jul 2007 18:55:57 +0000 (18:55 +0000)] 
- Compiled is just an object now.  the ClauseVisitor portion
is now specific to ANSICompiler.

18 years ago- fixed clause_element/expression_element change from preivous checkin
Mike Bayer [Thu, 26 Jul 2007 18:37:53 +0000 (18:37 +0000)] 
- fixed clause_element/expression_element change from preivous checkin
- starting to add "out" params for oracle
- implemented partial check for "rejoin on conflicting paths" for [ticket:687]

18 years agomssql and test changes from trunk
Rick Morrison [Thu, 26 Jul 2007 18:18:54 +0000 (18:18 +0000)] 
mssql and test changes from trunk

18 years agoadded addresses table delete
Mike Bayer [Thu, 26 Jul 2007 17:47:16 +0000 (17:47 +0000)] 
added addresses table delete

18 years ago - added array slice support to row[<index>] [ticket:686]
Mike Bayer [Thu, 26 Jul 2007 17:45:25 +0000 (17:45 +0000)] 
  - added array slice support to row[<index>] [ticket:686]

18 years ago- fix to oracle table aliasing
Mike Bayer [Thu, 26 Jul 2007 17:37:30 +0000 (17:37 +0000)] 
- fix to oracle table aliasing
- added select.prefix_with(), adds arbitrary prefixes to a SELECT's columns clause, [ticket:504]

18 years ago- changed 'desired_columns' argument to 'include_columns'
Mike Bayer [Thu, 26 Jul 2007 17:11:37 +0000 (17:11 +0000)] 
- changed 'desired_columns' argument to 'include_columns'
- made 'include_columns' an explicit argument to Table.  I'm
trying to avoid the "x can be a foo, or a bar, or a list of dictionaries of hoho's"-type behavior
- added unit test, closes [ticket:561]

18 years ago- ANSICompiler now uses its own traversal when compiling, returning a composed
Mike Bayer [Thu, 26 Jul 2007 07:19:37 +0000 (07:19 +0000)] 
- ANSICompiler now uses its own traversal when compiling, returning a composed
string from each visit_XXXX method, so that the full string is compiled at once
without using any dictionary storage.  dialects modified accordingly.
tested on mysql/sqlite/postgres fully,
tested with string-only tests for oracle/fb/informix/mssql so far.

18 years ago"You can also specify a list or set of column names to autoload, if you only want...
Jonathan Ellis [Thu, 26 Jul 2007 00:50:07 +0000 (00:50 +0000)] 
"You can also specify a list or set of column names to autoload, if you only want to load a subset of the columns in the actual database."

fixes #561

18 years agofix up a docstring and some examples
Ants Aasma [Thu, 26 Jul 2007 00:01:28 +0000 (00:01 +0000)] 
fix up a docstring and some examples

18 years ago- removed the ridiculous AbstractDialect do-nothing class
Mike Bayer [Wed, 25 Jul 2007 23:36:31 +0000 (23:36 +0000)] 
- removed the ridiculous AbstractDialect do-nothing class
- fixup to docstrings

18 years agotypo fix (unbreak test suite)
Jonathan Ellis [Wed, 25 Jul 2007 23:13:48 +0000 (23:13 +0000)] 
typo fix (unbreak test suite)

18 years agoReally finish proxied list methods. Either these last couple (count, remove, setitem...
Jason Kirtland [Wed, 25 Jul 2007 22:02:49 +0000 (22:02 +0000)] 
Really finish proxied list methods. Either these last couple (count, remove, setitem w/ slice) weren't possible in 0.3 and/or I spaced these.
Improved messaging on flubbed stepped slice assignment in collection decorators.

18 years agoadd checks for well-formed ColumnProperty. fixes #683
Jonathan Ellis [Wed, 25 Jul 2007 21:17:48 +0000 (21:17 +0000)] 
add checks for well-formed ColumnProperty.  fixes #683

18 years agoadd __repr__ for engine, metadata, sqlsoup
Jonathan Ellis [Wed, 25 Jul 2007 19:05:33 +0000 (19:05 +0000)] 
add __repr__ for engine, metadata, sqlsoup

18 years agouse sha instead of crypt to decrease suckage for windows users. also crypt kinda...
Jonathan Ellis [Wed, 25 Jul 2007 19:00:14 +0000 (19:00 +0000)] 
use sha instead of crypt to decrease suckage for windows users.  also crypt kinda blows anyway

18 years ago- added unittest for sharding module
Mike Bayer [Wed, 25 Jul 2007 18:57:56 +0000 (18:57 +0000)] 
- added unittest for sharding module
- fixed shard test/example datatype to "Float" since Numeric
behavior has changed
- added docstrings to sqlalchemy/orm/__init__.py functions;
still need to proof within generated HTML pages/fix errors
- added engine.threadlocal to docs, removed old mods.threadlocal

18 years agotest graceful fallback to lazy loading for cyclical eager load with no join_depth
Mike Bayer [Tue, 24 Jul 2007 22:31:46 +0000 (22:31 +0000)] 
test graceful fallback to lazy loading for cyclical eager load with no join_depth

18 years ago- added has(), like any() but for scalars
Mike Bayer [Tue, 24 Jul 2007 22:00:19 +0000 (22:00 +0000)] 
- added has(), like any() but for scalars
- added **kwargs to has() and any(), criterion is optional; generate equality criterion
against the related table (since we know the related property when has() and any() are used),
i.e. filter(Address.user.has(name='jack')) equivalent to filter(Address.user.has(User.name=='jack'))
- added "from_joinpoint=False" arg to join()/outerjoin().  yes, I know join() is getting a little
crazy, but this flag is needed when you want to keep building along a line of aliased joins,
adding query criterion for each alias in the chain.  self-referential unit test added.
- fixed basic_tree example a little bit

18 years agorenamed new scalar() method to as_scalar(), not deprecating normal ClauseElement...
Mike Bayer [Tue, 24 Jul 2007 20:18:32 +0000 (20:18 +0000)] 
renamed new scalar() method to as_scalar(), not deprecating normal ClauseElement.scalar()...

18 years agorestored Float's full constructor to play better with overriding types, i.e. mysql...
Mike Bayer [Tue, 24 Jul 2007 20:08:20 +0000 (20:08 +0000)] 
restored Float's full constructor to play better with overriding types, i.e. mysql.MSFloat

18 years ago- deprecated scalar=True argument on select(). its replaced
Mike Bayer [Tue, 24 Jul 2007 20:05:10 +0000 (20:05 +0000)] 
- deprecated scalar=True argument on select().  its replaced
by select().scalar() which returns a _ScalarSelect object, that obeys
the ColumnElement interface fully
- removed _selectable() method.  replaced with __selectable__() as an optional
duck-typer; subclassing Selectable (without any __selectable__()) is equivalent
- query._col_aggregate() was assuming bound metadata.  ick !
- probably should deprecate ClauseElement.scalar(), in favor of ClauseElement.execute().scalar()...
otherwise might need to rename select().scalar()

18 years ago- Numeric and Float types now have an "asdecimal" flag; defaults to
Mike Bayer [Tue, 24 Jul 2007 16:36:14 +0000 (16:36 +0000)] 
- Numeric and Float types now have an "asdecimal" flag; defaults to
True for Numeric, False for Float.  when True, values are returned as
decimal.Decimal objects; when False, values are returned as float().
the defaults of True/False are already the behavior for PG and MySQL's
DBAPI modules. [ticket:646]

18 years ago- ColumnCollection (i.e. the 'c' attribute on tables) follows dictionary
Mike Bayer [Tue, 24 Jul 2007 15:43:32 +0000 (15:43 +0000)] 
- ColumnCollection (i.e. the 'c' attribute on tables) follows dictionary
semantics for "__contains__" [ticket:606]

18 years ago- a rudimental sharding (horizontal scaling) system is introduced. This system
Mike Bayer [Tue, 24 Jul 2007 04:05:55 +0000 (04:05 +0000)] 
- a rudimental sharding (horizontal scaling) system is introduced.  This system
uses a modified Session which can distribute read and write operations among
multiple databases, based on user-defined functions defining the
"sharding strategy".  Instances and their dependents can be distributed
and queried among multiple databases based on attribute values, round-robin
approaches or any other user-defined system. [ticket:618]

18 years agodeprecated extra arguments on instances()
Mike Bayer [Mon, 23 Jul 2007 22:47:52 +0000 (22:47 +0000)] 
deprecated extra arguments on instances()

18 years agoremoved methods instance_key(), identity_key(), identity()
Mike Bayer [Mon, 23 Jul 2007 22:44:12 +0000 (22:44 +0000)] 
removed methods instance_key(), identity_key(), identity()

18 years ago- joined-table inheritance will now generate the primary key
Mike Bayer [Mon, 23 Jul 2007 22:20:44 +0000 (22:20 +0000)] 
- joined-table inheritance will now generate the primary key
columns of all inherited classes against the root table of the
join only.  This implies that each row in the root table is distinct
to a single instance.  If for some rare reason this is not desireable,
explicit primary_key settings on individual mappers will override it.

- When "polymorphic" flags are used with joined-table or single-table
inheritance, all identity keys are generated against the root class
of the inheritance hierarchy; this allows query.get() to work
polymorphically using the same caching semantics as a non-polymorphic get.
note that this currently does not work with concrete inheritance.

18 years agoOops, --log-{info,debug}= args need to accept values...
Jason Kirtland [Mon, 23 Jul 2007 22:05:46 +0000 (22:05 +0000)] 
Oops, --log-{info,debug}= args need to accept values...

18 years agopatched fix for [ticket:677], thanks !
Mike Bayer [Mon, 23 Jul 2007 21:01:13 +0000 (21:01 +0000)] 
patched fix for [ticket:677], thanks !

18 years agoColumnDefault functions pass ExecutionContext to callables which accept a single...
Mike Bayer [Mon, 23 Jul 2007 20:56:27 +0000 (20:56 +0000)] 
ColumnDefault functions pass ExecutionContext to callables which accept a single argument;
refactored workings of defaults so that they share the same execution context.

18 years ago_ConnectionRecord gains a .properties collection, with contents scoped to
Jason Kirtland [Mon, 23 Jul 2007 20:32:19 +0000 (20:32 +0000)] 
_ConnectionRecord gains a .properties collection, with contents scoped to
the lifetime of the underlying DBAPI connection.  Accessors on Connections and fairies.

18 years agocorrected literals_as_binds to recognize sql.Operators objects for [ticket:675]
Mike Bayer [Mon, 23 Jul 2007 19:53:16 +0000 (19:53 +0000)] 
corrected literals_as_binds to recognize sql.Operators objects for [ticket:675]

18 years agoRearrange profiling a bit
Jason Kirtland [Mon, 23 Jul 2007 16:04:37 +0000 (16:04 +0000)] 
Rearrange profiling a bit

18 years ago- refinement of connection.execute() , parameter processing behavior
Mike Bayer [Mon, 23 Jul 2007 15:52:09 +0000 (15:52 +0000)] 
- refinement of connection.execute() , parameter processing behavior
- Connection's dealings with params are simplified; generation of
ClauseParameters pushed into DefaultDialect.
- simplified ClauseParameters.
- this is to make room for execute_raw() but I haven't decided how that
should look yet.

18 years agoFinished up the workflow in ormsession test
Jason Kirtland [Mon, 23 Jul 2007 05:57:05 +0000 (05:57 +0000)] 
Finished up the workflow in ormsession test

18 years agoRefactored test support code, moved most into 'testlib/'
Jason Kirtland [Mon, 23 Jul 2007 01:50:54 +0000 (01:50 +0000)] 
Refactored test support code, moved most into 'testlib/'
Cleaned up imports, all tests should be runnable stand-alone or suite now
Updated most of the perf tests
Removed dead test suites
Added new profiling decorator
Added new profilable perf test, 'ormsession' to try to capture a typical workload

18 years agoadded some of the newer query styles to some inheritance tests. more inheritance...
Mike Bayer [Sun, 22 Jul 2007 22:32:58 +0000 (22:32 +0000)] 
added some of the newer query styles to some inheritance tests.  more inheritance + new query stuff needs to be tested

18 years agofixed up testbase coverage to get module-level stuff
Mike Bayer [Sun, 22 Jul 2007 22:16:15 +0000 (22:16 +0000)] 
fixed up testbase coverage to get module-level stuff
fixed activemapper tests

18 years agodead
Jason Kirtland [Sun, 22 Jul 2007 21:52:00 +0000 (21:52 +0000)] 
dead

18 years agoremoved small cruftlet
Mike Bayer [Sun, 22 Jul 2007 20:00:12 +0000 (20:00 +0000)] 
removed small cruftlet

18 years ago- fix to _CalculatedClause._copy_internals() behavior so that ClauseAdapter works...
Mike Bayer [Sun, 22 Jul 2007 19:35:46 +0000 (19:35 +0000)] 
- fix to _CalculatedClause._copy_internals() behavior so that ClauseAdapter works with _Function objects better
- factored AliasedClauses out of EagerLoader into its own unit; Query makes heavy use of it for joins
- added support to Query for full interaction between aliased and nonalised joins with appended entities, columns, and externally-mapped columns

18 years agoConsigned to history.
Jason Kirtland [Sun, 22 Jul 2007 17:01:25 +0000 (17:01 +0000)] 
Consigned to history.

18 years ago- got self-referential query.join()/query.outerjoin() to work.
Mike Bayer [Sun, 22 Jul 2007 14:07:15 +0000 (14:07 +0000)] 
- got self-referential query.join()/query.outerjoin() to work.
- PropertyLoader adds local_side set which is the opposite of remote_side, makes
the self-referential aliasing a snap.
- added "id" argument to join()/outerjoin() to allow access to the aliased joins
in add_entity().
- added "alias" argument to add_entity() to get at entities selected from an explicit
Alias
- starting to move EagerLoader.AliasedClasues to a general utility function which
will be used by Query as well

18 years agofilter_by([joinpath], ...) is gone. join([path], aliased=True) replaces it, all...
Mike Bayer [Sun, 22 Jul 2007 03:26:13 +0000 (03:26 +0000)] 
filter_by([joinpath], ...) is gone.  join([path], aliased=True) replaces it, all subsequent filter() criterion is converted
against that alias; represents a much more flexible and consistent solution.
needs some tweaks and can then work with self-referential loading too.

18 years agoQueries now __str__ as their statement
Jason Kirtland [Sat, 21 Jul 2007 20:03:18 +0000 (20:03 +0000)] 
Queries now __str__ as their statement

18 years agomake this test runnable stand-alone
Jason Kirtland [Sat, 21 Jul 2007 20:00:20 +0000 (20:00 +0000)] 
make this test runnable stand-alone

18 years ago- merged bind unittest fix from r2999
Mike Bayer [Fri, 20 Jul 2007 20:27:27 +0000 (20:27 +0000)] 
- merged bind unittest fix from r2999

REV 3000 !!!  WOO HOO !

18 years ago- added query.populate_existing().. - marks the query to reload
Mike Bayer [Fri, 20 Jul 2007 20:02:41 +0000 (20:02 +0000)] 
- added query.populate_existing().. - marks the query to reload
  all attributes and collections of all instances touched in the query,
  including eagerly-loaded entities [ticket:660]

- added eagerload_all(), allows eagerload_all('x.y.z') to specify eager
  loading of all properties in the given path

18 years agomerged most recent overflow mutex tweak
Mike Bayer [Fri, 20 Jul 2007 18:58:46 +0000 (18:58 +0000)] 
merged most recent overflow mutex tweak

18 years agodont clobber existing methodnames, [ticket:596]
Mike Bayer [Fri, 20 Jul 2007 17:17:46 +0000 (17:17 +0000)] 
dont clobber existing methodnames, [ticket:596]

18 years agoimplemented Class.any(criterion)
Mike Bayer [Fri, 20 Jul 2007 17:00:53 +0000 (17:00 +0000)] 
implemented Class.any(criterion)

18 years agochanged assignmapper API per [ticket:636]
Mike Bayer [Fri, 20 Jul 2007 16:52:00 +0000 (16:52 +0000)] 
changed assignmapper API per [ticket:636]

18 years agomerged pool fix from [changeset:2989] and timeout fix from [changeset:2990]
Mike Bayer [Fri, 20 Jul 2007 15:42:46 +0000 (15:42 +0000)] 
merged pool fix from [changeset:2989] and timeout fix from [changeset:2990]

18 years ago- Eager loading now functions at any arbitrary depth along self-referential
Mike Bayer [Fri, 20 Jul 2007 03:20:33 +0000 (03:20 +0000)] 
-  Eager loading now functions at any arbitrary depth along self-referential
and cyclical structures.  When loading cyclical structures, specify "join_depth"
on relation() indicating how many times you'd like the table to join
to itself; each level gets a distinct table alias.
- adds a stack to the Mapper->eagerloader->Mapper process which is the single
point of tracking the various AliasedClause objects both at query compile
time as well as result fetching time.  self-referential relationships narrow
down the "aliasing" of tables more sharply so as to produce the correct
eager joins in those cases without stepping on more generalized cases.
the mechanism of detecting "too deep" of an eager load now works based on
locating a true cycle, but only if join_depth is not specified; otherwise
join_depth is used.
[ticket:659]

18 years agoRemove unused imports, typo and light formatting tweaks.
Jason Kirtland [Thu, 19 Jul 2007 23:13:23 +0000 (23:13 +0000)] 
Remove unused imports, typo and light formatting tweaks.
Fixed comparison of _UnaryExpressions

18 years agoRemove mysql enum out of range test, not really needed and seems WAY too dependent...
Jason Kirtland [Thu, 19 Jul 2007 22:56:04 +0000 (22:56 +0000)] 
Remove mysql enum out of range test, not really needed and seems WAY too dependent on server version

18 years agosmall fix to detect a "scalar" query when constructing columns clauses
Mike Bayer [Thu, 19 Jul 2007 21:02:36 +0000 (21:02 +0000)] 
small fix to detect a "scalar" query when constructing columns clauses

18 years ago- changed set used to generate FROM list to an ordered set; may fix [ticket:669]
Mike Bayer [Thu, 19 Jul 2007 20:36:51 +0000 (20:36 +0000)] 
- changed set used to generate FROM list to an ordered set; may fix [ticket:669]
- improvements to select generative capability, ClauseAdapter
- one select test is failing, but not from this checkin

18 years agoBetter quoting of identifiers when manipulating schemas.
Jason Kirtland [Thu, 19 Jul 2007 19:24:51 +0000 (19:24 +0000)] 
Better quoting of identifiers when manipulating schemas.

18 years agoadded info on DB types
Mike Bayer [Thu, 19 Jul 2007 16:58:47 +0000 (16:58 +0000)] 
added info on DB types

18 years agodocstrings
Mike Bayer [Thu, 19 Jul 2007 16:05:29 +0000 (16:05 +0000)] 
docstrings

18 years agoremoved ancient group_parenthesized() method, its purpose handled by _Grouping now
Mike Bayer [Thu, 19 Jul 2007 15:57:20 +0000 (15:57 +0000)] 
removed ancient group_parenthesized() method, its purpose handled by _Grouping now

18 years agofixed LIKE/BEWTEEN operators
Mike Bayer [Thu, 19 Jul 2007 07:21:50 +0000 (07:21 +0000)] 
fixed LIKE/BEWTEEN operators

18 years agoremoved print statement...this is the year i start using a debugger
Mike Bayer [Thu, 19 Jul 2007 07:17:01 +0000 (07:17 +0000)] 
removed print statement...this is the year i start using a debugger

18 years ago- all "type" keyword arguments, such as those to bindparam(), column(),
Mike Bayer [Thu, 19 Jul 2007 07:11:55 +0000 (07:11 +0000)] 
- all "type" keyword arguments, such as those to bindparam(), column(),
  Column(), and func.<something>(), renamed to "type_".  those objects
  still name their "type" attribute as "type".
- new SQL operator implementation which removes all hardcoded operators
  from expression structures and moves them into compilation;
  allows greater flexibility of operator compilation; for example, "+"
  compiles to "||" when used in a string context, or "concat(a,b)" on
  MySQL; whereas in a numeric context it compiles to "+".  fixes [ticket:475].
- major cruft cleanup in ANSICompiler regarding its processing of update/insert
  bind parameters.  code is actually readable !
- a clause element embedded in an UPDATE, i.e. for a correlated update, uses
  standard "grouping" rules now to place parenthesis.  Doesn't change much, except
  if you embed a text() clause in there, it will not be automatically parenthesized
  (place parens in the text() manually).

18 years agoTarget testcreate schema test better.
Jason Kirtland [Thu, 19 Jul 2007 01:23:01 +0000 (01:23 +0000)] 
Target testcreate schema test better.

18 years agoClarity fix for assocproxy example code
Jason Kirtland [Wed, 18 Jul 2007 23:25:07 +0000 (23:25 +0000)] 
Clarity fix for assocproxy example code

18 years ago.pop() on association proxies is no longer problematic with 0.4 collections.
Jason Kirtland [Wed, 18 Jul 2007 22:19:12 +0000 (22:19 +0000)] 
.pop() on association proxies is no longer problematic with 0.4 collections.

18 years ago- unittest cleanup: after removal of threadlocal mod + changes to session calling...
Mike Bayer [Wed, 18 Jul 2007 21:00:14 +0000 (21:00 +0000)] 
- unittest cleanup: after removal of threadlocal mod + changes to session calling signature,
got sqlite, postgres, mysql all working again (one unresolved failure for mysql)

18 years agopartial progress on adding prop.compare(), new behavior for prop ==
Mike Bayer [Wed, 18 Jul 2007 20:07:25 +0000 (20:07 +0000)] 
partial progress on adding prop.compare(), new behavior for prop ==