]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/log
thirdparty/sqlalchemy/sqlalchemy.git
13 years ago- merge
Mike Bayer [Sat, 25 Aug 2012 19:41:43 +0000 (19:41 +0000)] 
- merge

13 years ago- more oracle tweaks for returning; the method here is still kind of brittle and...
Mike Bayer [Sat, 25 Aug 2012 19:41:14 +0000 (19:41 +0000)] 
- more oracle tweaks for returning; the method here is still kind of brittle and might have issues with
pks, multiple function calls

13 years agooracle fixes...
Mike Bayer [Sat, 25 Aug 2012 18:19:47 +0000 (14:19 -0400)] 
oracle fixes...

13 years ago- fix for pypy
Mike Bayer [Sat, 25 Aug 2012 17:30:58 +0000 (13:30 -0400)] 
- fix for pypy
- more oracle fixes

13 years agofix 2.5 ism
Mike Bayer [Sat, 25 Aug 2012 16:03:14 +0000 (12:03 -0400)] 
fix 2.5 ism

13 years agoa few oracle fixes
Mike Bayer [Sat, 25 Aug 2012 16:00:11 +0000 (12:00 -0400)] 
a few oracle fixes

13 years ago- [feature] Added support for .info dictionary argument to
Mike Bayer [Fri, 24 Aug 2012 22:48:42 +0000 (18:48 -0400)] 
- [feature] Added support for .info dictionary argument to
column_property(), relationship(), composite().
All MapperProperty classes have an auto-creating .info
dict available overall.

13 years agofuture for with statement
Mike Bayer [Fri, 24 Aug 2012 22:42:28 +0000 (18:42 -0400)] 
future for with statement

13 years ago- correct the argument signature for GenericFunction to be more predictable
Mike Bayer [Fri, 24 Aug 2012 20:14:47 +0000 (16:14 -0400)] 
- correct the argument signature for GenericFunction to be more predictable

13 years agosmall tweaks to make insert() behavior more consistent, mostly tests, [ticket:2461]
Mike Bayer [Thu, 23 Aug 2012 22:49:33 +0000 (18:49 -0400)] 
small tweaks to make insert() behavior more consistent, mostly tests, [ticket:2461]

13 years ago - [feature] The before_cursor_execute event
Mike Bayer [Thu, 23 Aug 2012 19:40:09 +0000 (15:40 -0400)] 
  - [feature] The before_cursor_execute event
    fires off for so-called "_cursor_execute"
    events, which are usually special-case
   executions of primary-key bound sequences
    and default-generation SQL
    phrases that invoke separately when RETURNING
    is not used with INSERT.  [ticket:2459]

13 years ago- [bug] Fixed bug whereby usage of a UNION
Mike Bayer [Wed, 22 Aug 2012 22:55:59 +0000 (18:55 -0400)] 
- [bug] Fixed bug whereby usage of a UNION
or similar inside of an embedded subquery
would interfere with result-column targeting,
in the case that a result-column had the same
ultimate name as a name inside the embedded
UNION. [ticket:2552]

13 years ago- [bug] Fixed cextension bug whereby the
Mike Bayer [Wed, 22 Aug 2012 22:41:46 +0000 (18:41 -0400)] 
- [bug] Fixed cextension bug whereby the
"ambiguous column error" would fail to
function properly if the given index were
a Column object and not a string.
Note there are still some column-targeting
issues here which are fixed in 0.8.
[ticket:2553]
- find more cases where column targeting is being inaccurate, add
more information to result_map to better differentiate "ambiguous"
results from "present" or "not present".  In particular, result_map
is sensitive to dupes, even though no error is raised; the conflicting
columns are added to the "obj" member of the tuple so that the two
are both directly accessible in the result proxy
- handwringing over the damn "name fallback" thing in results.  can't
really make it perfect yet
- fix up oracle returning clause.  not sure why its guarding against
labels, remove that for now and see what the bot says.

13 years agothis is already in an automodule...
Mike Bayer [Wed, 22 Aug 2012 18:23:13 +0000 (14:23 -0400)] 
this is already in an automodule...

13 years ago - [feature] Enhanced GenericFunction and func.*
Mike Bayer [Wed, 22 Aug 2012 17:54:13 +0000 (13:54 -0400)] 
  - [feature] Enhanced GenericFunction and func.*
    to allow for user-defined GenericFunction
    subclasses to be available via the func.*
    namespace automatically by classname,
    optionally using a package name as well.

13 years agofixes for pg9
Mike Bayer [Wed, 22 Aug 2012 07:37:10 +0000 (03:37 -0400)] 
fixes for pg9

13 years ago- MySQL's update does work. add some logic to compiler to convert from ORM column...
Mike Bayer [Mon, 20 Aug 2012 22:28:32 +0000 (18:28 -0400)] 
- MySQL's update does work.  add some logic to compiler to convert from ORM column to Table column

13 years ago- [feature] The Query.update() method is now
Mike Bayer [Mon, 20 Aug 2012 22:18:17 +0000 (18:18 -0400)] 
- [feature] The Query.update() method is now
more lenient as to the table
being updated.  Plain Table objects are better
supported now, and additional a joined-inheritance
subclass may be used with update(); the subclass
table will be the target of the update,
and if the parent table is referenced in the
WHERE clause, the compiler will call upon
UPDATE..FROM syntax as allowed by the dialect
to satisfy the WHERE clause.  Target columns
must still be in the target table i.e.
does not support MySQL's multi-table update
feature (even though this is in Core).
PG's DELETE..USING is also not available
in Core yet.

13 years ago- [feature] The Core oeprator system now includes
Mike Bayer [Mon, 20 Aug 2012 21:04:25 +0000 (17:04 -0400)] 
- [feature] The Core oeprator system now includes
the `getitem` operator, i.e. the bracket
operator in Python.  This is used at first
to provide index and slice behavior to the
Postgresql ARRAY type, and also provides a hook
for end-user definition of custom __getitem__
schemes which can be applied at the type
level as well as within ORM-level custom
operator schemes.

Note that this change has the effect that
descriptor-based __getitem__ schemes used by
the ORM in conjunction with synonym() or other
"descriptor-wrapped" schemes will need
to start using a custom comparator in order
to maintain this behavior.

- [feature] postgresql.ARRAY now supports
indexing and slicing.  The Python [] operator
is available on all SQL expressions that are
of type ARRAY; integer or simple slices can be
passed.  The slices can also be used on the
assignment side in the SET clause of an UPDATE
statement by passing them into Update.values();
see the docs for examples.

- [feature] Added new "array literal" construct
postgresql.array().  Basically a "tuple" that
renders as ARRAY[1,2,3].

13 years ago- [bug] Fixes to the interpretation of the
Mike Bayer [Mon, 20 Aug 2012 17:20:09 +0000 (13:20 -0400)] 
- [bug] Fixes to the interpretation of the
Column "default" parameter as a callable
to not pass ExecutionContext into a keyword
argument parameter.  [ticket:2520]

13 years ago- expand out all the methods on insert/update/delete/select for now
Mike Bayer [Mon, 20 Aug 2012 02:04:33 +0000 (22:04 -0400)] 
- expand out all the methods on insert/update/delete/select for now
- remove deprecation test

13 years ago - [feature] The prefix_with() method is now available
Mike Bayer [Mon, 20 Aug 2012 01:15:40 +0000 (21:15 -0400)] 
  - [feature] The prefix_with() method is now available
    on each of select(), insert(), update(), delete(),
    all with the same API, accepting multiple
    prefix calls, as well as a "dialect name" so that
    the prefix can be limited to one kind of dialect.
    [ticket:2431]

13 years ago- [bug] Lazy loads emitted within flush events
Mike Bayer [Sun, 19 Aug 2012 16:35:39 +0000 (12:35 -0400)] 
- [bug] Lazy loads emitted within flush events
such as before_flush(), before_update(),
etc. will now function as they would
within non-event code, regarding consideration
of the PK/FK values used in the lazy-emitted
query.   Previously,
special flags would be established that
would cause lazy loads to load related items
based on the "previous" value of the
parent PK/FK values specifically when called
upon within a flush; the signal to load
in this way is now localized to where the
unit of work actually needs to load that
way.  Note that the UOW does
sometimes load these collections before
the before_update() event is called,
so the usage of "passive_updates" or not
can affect whether or not a collection will
represent the "old" or "new" data, when
accessed within a flush event, based
on when the lazy load was emitted.
The change is backwards incompatible in
the exceedingly small chance that
user event code depended on the old
behavior. [ticket:2350]

13 years agotighten this up
Mike Bayer [Sat, 18 Aug 2012 14:41:17 +0000 (10:41 -0400)] 
tighten this up

13 years agoversionadded
Mike Bayer [Sat, 18 Aug 2012 05:12:55 +0000 (01:12 -0400)] 
versionadded

13 years ago- aaaaand fix one more glitch I just thought of
Mike Bayer [Sat, 18 Aug 2012 05:03:31 +0000 (01:03 -0400)] 
- aaaaand fix one more glitch I just thought of

13 years ago- fix the labeled column with column_expression() issue, finishes [ticket:1534]
Mike Bayer [Sat, 18 Aug 2012 04:54:00 +0000 (00:54 -0400)] 
- fix the labeled column with column_expression() issue, finishes [ticket:1534]
- epic documentation sweep for new operator system, making ORM links consistent
and complete, full documentation and examples for type/SQL expression feature
- type_coerce() explicitly accepts BindParamClause objects
- change UserDefinedType to coerce the other side to itself by default as this
is much more likely what's desired
- make coerce_compared_type() fully public on all types
- have profiling run the test no matter what so that the test_zoomarks don't fail
when callcounts are missing

13 years agoadd a note
Mike Bayer [Fri, 17 Aug 2012 23:11:21 +0000 (19:11 -0400)] 
add a note

13 years ago- really start making postgis example slick.
Mike Bayer [Fri, 17 Aug 2012 23:09:31 +0000 (19:09 -0400)] 
- really start making postgis example slick.

13 years ago- [feature] To complement [ticket:2547], types
Mike Bayer [Fri, 17 Aug 2012 22:35:25 +0000 (18:35 -0400)] 
- [feature] To complement [ticket:2547], types
can now provide "bind expressions" and
"column expressions" which allow compile-time
injection of SQL expressions into statements
on a per-column or per-bind level.   This is
to suit the use case of a type which needs
to augment bind- and result- behavior at the
SQL level, as opposed to in the Python level.
Allows for schemes like transparent encryption/
decryption, usage of Postgis functions, etc.
[ticket:1534]
- update postgis example fully.
- still need to repair the result map propagation
here to be transparent for cases like "labeled column".

13 years ago- modernize most of the postgis example. would like to do [ticket:1534] also.
Mike Bayer [Fri, 17 Aug 2012 02:20:53 +0000 (22:20 -0400)] 
- modernize most of the postgis example.  would like to do [ticket:1534] also.
- we don't have coverage for type-wide instrumentation events, the listener was broke.
could break again too.

13 years agoupdate the postgis example to actually work, using the old way (we'll update shortly)
Mike Bayer [Fri, 17 Aug 2012 01:45:18 +0000 (21:45 -0400)] 
update the postgis example to actually work, using the old way (we'll update shortly)

13 years ago_adapt_expression() moves fully to _DefaultColumnComparator which resumes
Mike Bayer [Thu, 16 Aug 2012 20:11:42 +0000 (16:11 -0400)] 
_adapt_expression() moves fully to _DefaultColumnComparator which resumes
its original role as stateful, forms the basis of TypeEngine.Comparator.  lots
of code goes back mostly as it was just with cleaner typing behavior, such
as simple flow in _binary_operate now.

13 years ago-we move all the invocation of "_adapt_expression" into TypeEngine.Comparator. ...
Mike Bayer [Thu, 16 Aug 2012 18:07:33 +0000 (14:07 -0400)] 
-we move all the invocation of "_adapt_expression" into TypeEngine.Comparator.   at this point
the split of operator stuff is getting awkward and we might want to move _DefaultComparator.

13 years ago- we're going to attempt to get the type/operator system to eat its own dogfood and
Mike Bayer [Thu, 16 Aug 2012 17:25:46 +0000 (13:25 -0400)] 
- we're going to attempt to get the type/operator system to eat its own dogfood and
use the type-based comparator in all cases.  will attempt to remove the _adapt_expression()
method entirely as this represents an incomplete and redundant system (though it might
be a lot faster)

13 years agodocs for custom ops...
Mike Bayer [Thu, 16 Aug 2012 16:36:13 +0000 (12:36 -0400)] 
docs for custom ops...

13 years agoadd a note, no autoflush with execute, [ticket:2550]
Mike Bayer [Thu, 16 Aug 2012 14:02:41 +0000 (10:02 -0400)] 
add a note, no autoflush with execute, [ticket:2550]

13 years agoremove duped test
Mike Bayer [Wed, 15 Aug 2012 22:48:54 +0000 (18:48 -0400)] 
remove duped test

13 years ago- [bug] Declarative can now propagate a column
Mike Bayer [Wed, 15 Aug 2012 22:42:59 +0000 (18:42 -0400)] 
- [bug] Declarative can now propagate a column
declared on a single-table inheritance subclass
up to the parent class' table, when the parent
class is itself mapped to a join() or select()
statement, directly or via joined inheritane,
and not just a Table.   [ticket:2549]

13 years agothings should work fine without this
Mike Bayer [Wed, 15 Aug 2012 16:24:03 +0000 (12:24 -0400)] 
things should work fine without this

13 years ago- also, this seems like a bug in any case.
Mike Bayer [Wed, 15 Aug 2012 15:48:45 +0000 (11:48 -0400)] 
- also, this seems like a bug in any case.

13 years agochangelog
Mike Bayer [Wed, 15 Aug 2012 15:45:20 +0000 (11:45 -0400)] 
changelog

13 years agoUpdated mysqlconnector to support client flags and added character set information
David McNelis [Wed, 15 Aug 2012 15:22:03 +0000 (10:22 -0500)] 
Updated mysqlconnector to support client flags and added character set information

13 years ago- update all the visit_mod() functions with new naming scheme
Mike Bayer [Tue, 14 Aug 2012 21:24:57 +0000 (17:24 -0400)] 
- update all the visit_mod() functions with new naming scheme
- visit_mods all seemed to not propagate **kw down to process().
this is [ticket:2548] which may be backported to 0.7 pending
a test case to illustrate wrong behavior.

13 years ago- for the moment, the default comparisons don't need the ColumnOperator interface.
Mike Bayer [Tue, 14 Aug 2012 17:55:54 +0000 (13:55 -0400)] 
- for the moment, the default comparisons don't need the ColumnOperator interface.
Still a little concerned about the "self.expr" vs. "expr passed in" thing.

13 years ago- fix concat() operator, tests
Mike Bayer [Tue, 14 Aug 2012 17:47:58 +0000 (13:47 -0400)] 
- fix concat() operator, tests
- [feature] Custom unary operators can now be
  used by combining operators.custom_op() with
  UnaryExpression().
- clean up the operator dispatch system and make it more consistent.
This does change the compiler contract for custom ops.

13 years ago- hashable
Mike Bayer [Mon, 13 Aug 2012 23:44:54 +0000 (19:44 -0400)] 
- hashable

13 years agomerge tip.
Mike Bayer [Mon, 13 Aug 2012 21:54:47 +0000 (17:54 -0400)] 
merge tip.

13 years agodocs
Mike Bayer [Mon, 13 Aug 2012 21:53:35 +0000 (17:53 -0400)] 
docs

13 years ago- update engine docstrings due to move
Mike Bayer [Mon, 13 Aug 2012 21:35:27 +0000 (17:35 -0400)] 
- update engine docstrings due to move
- struggle with Operators class autodoc

13 years ago- all tests pass
Mike Bayer [Mon, 13 Aug 2012 20:53:38 +0000 (16:53 -0400)] 
- all tests pass

13 years agomove the whole thing to TypeEngine. the feature is pretty much for free like this.
Mike Bayer [Mon, 13 Aug 2012 20:18:12 +0000 (16:18 -0400)] 
move the whole thing to TypeEngine.  the feature is pretty much for free like this.

13 years ago- develop new system of applying custom operators to ColumnElement classes. resembles
Mike Bayer [Mon, 13 Aug 2012 18:37:58 +0000 (14:37 -0400)] 
- develop new system of applying custom operators to ColumnElement classes.  resembles
that of the ORM so far.

13 years ago- [feature] Adding/removing None from a mapped collection
Mike Bayer [Mon, 13 Aug 2012 15:00:58 +0000 (11:00 -0400)] 
- [feature] Adding/removing None from a mapped collection
now generates attribute events.  Previously, a None
append would be ignored in some cases.  Related
to [ticket:2229].

- [feature] The presence of None in a mapped collection
now raises an error during flush.   Previously,
None values in collections would be silently ignored.
[ticket:2229]

13 years ago- allow compatibility with string ops passed here from custom libraries
Mike Bayer [Mon, 13 Aug 2012 14:57:33 +0000 (10:57 -0400)] 
- allow compatibility with string ops passed here from custom libraries

13 years ago- [bug] Fixed compiler bug whereby a given
Mike Bayer [Mon, 13 Aug 2012 01:07:24 +0000 (21:07 -0400)] 
- [bug] Fixed compiler bug whereby a given
select() would be modified if it had an "offset"
attribute, causing the construct to not compile
correctly a second time.  [ticket:2545]

13 years ago- [bug] Fixed bug whereby user error in related-object
Mike Bayer [Mon, 13 Aug 2012 00:37:40 +0000 (20:37 -0400)] 
- [bug] Fixed bug whereby user error in related-object
assignment could cause recursion overflow if the
assignment triggered a backref of the same name
as a bi-directional attribute on the incorrect
class to the same target.  An informative
error is raised now.

13 years agofix profiles, no cext, somehow got ran with c ext partially present or something
Mike Bayer [Sun, 12 Aug 2012 03:06:33 +0000 (23:06 -0400)] 
fix profiles, no cext, somehow got ran with c ext partially present or something

13 years ago- more fixes to py 3.3 tests, [ticket:2542]
Mike Bayer [Sun, 12 Aug 2012 02:15:29 +0000 (22:15 -0400)] 
- more fixes to py 3.3 tests, [ticket:2542]

13 years ago- adjustments for py3.3 unit tests, [ticket:2542]
Mike Bayer [Sun, 12 Aug 2012 01:46:48 +0000 (21:46 -0400)] 
- adjustments for py3.3 unit tests, [ticket:2542]

13 years ago- update file text
Mike Bayer [Sat, 11 Aug 2012 22:14:00 +0000 (18:14 -0400)] 
- update file text

13 years ago- this is a refcount test
Mike Bayer [Sat, 11 Aug 2012 21:55:37 +0000 (17:55 -0400)] 
- this is a refcount test

13 years ago- add 2.5 callcounts
Mike Bayer [Sat, 11 Aug 2012 20:35:13 +0000 (16:35 -0400)] 
- add 2.5 callcounts

13 years ago- adjustments
Mike Bayer [Sat, 11 Aug 2012 20:04:52 +0000 (16:04 -0400)] 
- adjustments
- OK lets try again...

13 years agoOK! let's turn this around completely. Forget making a single count across
Mike Bayer [Sat, 11 Aug 2012 19:51:08 +0000 (15:51 -0400)] 
OK! let's turn this around completely.   Forget making a single count across
all platforms.  let's instead store callcounts for *all* observed platforms in a datafile.
Will try to get enough platforms in the file for jenkins to have meaningful results.
for platforms not in the file, it's just skiptest.

13 years agoadjustments
Mike Bayer [Sat, 11 Aug 2012 06:57:25 +0000 (02:57 -0400)] 
adjustments

13 years agofinal cleanup
Mike Bayer [Fri, 10 Aug 2012 15:10:21 +0000 (11:10 -0400)] 
final cleanup

13 years agoadjust
Mike Bayer [Thu, 9 Aug 2012 21:49:36 +0000 (17:49 -0400)] 
adjust

13 years ago- make sure event mechanics have completed before running this test, lower callcount
Mike Bayer [Thu, 9 Aug 2012 21:38:59 +0000 (17:38 -0400)] 
- make sure event mechanics have completed before running this test, lower callcount

13 years agoadjustment
Mike Bayer [Thu, 9 Aug 2012 20:52:11 +0000 (16:52 -0400)] 
adjustment

13 years agomore adjustments
Mike Bayer [Thu, 9 Aug 2012 20:43:46 +0000 (16:43 -0400)] 
more adjustments

13 years ago- a new approach to profiling where we attempt to strip out
Mike Bayer [Thu, 9 Aug 2012 20:08:48 +0000 (16:08 -0400)] 
- a new approach to profiling where we attempt to strip out
parts of the pstats that are idiosyncratic to different platforms.
the goal is no per-version assertions on tests, version differences
in theory would go into the list of profiling exceptions.

13 years ago- remove an unused function, hooray
Mike Bayer [Thu, 9 Aug 2012 00:01:41 +0000 (20:01 -0400)] 
- remove an unused function, hooray

13 years ago - [bug] Fixed the repr() of Enum to include
Mike Bayer [Wed, 8 Aug 2012 23:41:49 +0000 (19:41 -0400)] 
  - [bug] Fixed the repr() of Enum to include
    the "name" and "native_enum" flags.  Helps
    Alembic autogenerate.

13 years agodon't need this is_really_none() thing anymore
Mike Bayer [Wed, 8 Aug 2012 23:20:17 +0000 (19:20 -0400)] 
don't need this is_really_none() thing anymore

13 years agobig rework of is_active and SessionTransaction docs
Mike Bayer [Wed, 8 Aug 2012 22:00:22 +0000 (18:00 -0400)] 
big rework of is_active and SessionTransaction docs

13 years ago- continue editing the merge docs
Mike Bayer [Wed, 8 Aug 2012 15:54:28 +0000 (11:54 -0400)] 
- continue editing the merge docs

13 years ago- modernize some merge docs a bit
Mike Bayer [Wed, 8 Aug 2012 00:07:58 +0000 (20:07 -0400)] 
- modernize some merge docs a bit

13 years ago- [feature] SQL Server dialect can be given
Mike Bayer [Tue, 7 Aug 2012 20:51:14 +0000 (16:51 -0400)] 
- [feature] SQL Server dialect can be given
database-qualified schema names,
i.e. "schema='mydatabase.dbo'"; reflection
operations will detect this, split the schema
among the "." to get the owner separately,
and emit a "USE mydatabase" statement before
reflecting targets within the "dbo" owner;
the existing database returned from
DB_NAME() is then restored.

13 years ago- more import cleanup for MSSQL
Mike Bayer [Tue, 7 Aug 2012 20:49:02 +0000 (16:49 -0400)] 
- more import cleanup for MSSQL

13 years ago- another import fix
Mike Bayer [Tue, 7 Aug 2012 20:41:24 +0000 (16:41 -0400)] 
- another import fix

13 years ago- add new C extension "utils", so far includes distill_params
Mike Bayer [Tue, 7 Aug 2012 19:23:11 +0000 (15:23 -0400)] 
- add new C extension "utils", so far includes distill_params
- repair test_processors which wasn't hitting the python functions
- add another suite to test_processors that does distill_params

13 years ago- fixes
Mike Bayer [Tue, 7 Aug 2012 18:55:41 +0000 (14:55 -0400)] 
- fixes

13 years ago- break out engine/base.py into base, interfaces, result, util.
Mike Bayer [Tue, 7 Aug 2012 16:01:19 +0000 (12:01 -0400)] 
- break out engine/base.py into base, interfaces, result, util.
- remove deprecated 0.7 engine methods

13 years agomore import cleanups
Mike Bayer [Tue, 7 Aug 2012 15:08:14 +0000 (11:08 -0400)] 
more import cleanups

13 years agomo tests mo problems
Mike Bayer [Mon, 6 Aug 2012 16:19:22 +0000 (12:19 -0400)] 
mo tests mo problems

13 years ago - [bug] Improvements to joined/subquery eager
Mike Bayer [Mon, 6 Aug 2012 15:36:57 +0000 (11:36 -0400)] 
  - [bug] Improvements to joined/subquery eager
    loading dealing with chains of subclass entities
    sharing a common base, with no specific "join depth"
    provided.  Will chain out to
    each subclass mapper individually before detecting
    a "cycle", rather than considering the base class
    to be the source of the "cycle".  [ticket:2481]

13 years ago - [bug] An error is emitted when uselist=False
Mike Bayer [Mon, 6 Aug 2012 02:53:56 +0000 (22:53 -0400)] 
  - [bug] An error is emitted when uselist=False
    is combined with a "dynamic" loader.
    This is a warning in 0.7.9.

13 years ago- reorganization of declarative such that file sizes are managable again.
Mike Bayer [Sun, 5 Aug 2012 19:14:51 +0000 (15:14 -0400)] 
- reorganization of declarative such that file sizes are managable again.
the vast majority of file lines are spent on documentation, which moves
into package __init__.  The core declarative idea lives in base and
is back down to its originally low size of under 500 lines.  The various
helpers and such move into api.py, and the full span of string lookup
moves into a new module clsregistry.  the rest of declarative only
refers to two functions in clsregistry in three places inside of base.
- [feature] Declarative now maintains a registry
of classes by string name as well as by full
module-qualified name.   Multiple classes with the
same name can now be looked up based on a module-qualified
string within relationship().   Simple class name
lookups where more than one class shares the same
name now raises an informative error message.
[ticket:2338]
- lots of tests to ensure the new weak referencing memory management
is maintained by the new class registry system.   this ticket was
served very well by waiting to do #2526 first, else this would
have needed to be rewritten anyway.

13 years agopep8 stuff
Mike Bayer [Sun, 5 Aug 2012 15:39:17 +0000 (11:39 -0400)] 
pep8 stuff

13 years ago - [feature] A warning is emitted when a reference
Mike Bayer [Sat, 4 Aug 2012 22:32:38 +0000 (18:32 -0400)] 
  - [feature] A warning is emitted when a reference
    to an instrumented collection is no longer
    associated with the parent class due to
    expiration/attribute refresh/collection
    replacement, but an append
    or remove operation is received on the
    now-detached collection.  [ticket:2476]

13 years ago - [feature] Can now provide class-bound attributes
Mike Bayer [Sat, 4 Aug 2012 22:11:18 +0000 (18:11 -0400)] 
  - [feature] Can now provide class-bound attributes
    that override columns which are of any
    non-ORM type, not just descriptors.
    [ticket:2535]

13 years ago- [bug] with_polymorphic() produces JOINs
Mike Bayer [Wed, 1 Aug 2012 04:08:55 +0000 (00:08 -0400)] 
- [bug] with_polymorphic() produces JOINs
in the correct order and with correct inheriting
tables in the case of sending multi-level
subclasses in an arbitrary order or with
intermediary classes missing.  [ticket:1900]

13 years ago2.5 ism
Mike Bayer [Sat, 28 Jul 2012 22:10:59 +0000 (18:10 -0400)] 
2.5 ism

13 years ago - [feature] Added reduce_columns() method
Mike Bayer [Sat, 28 Jul 2012 21:12:09 +0000 (17:12 -0400)] 
  - [feature] Added reduce_columns() method
    to select() construct, replaces columns inline
    using the util.reduce_columns utility function
    to remove equivalent columns.  reduce_columns()
    also adds "with_only_synonyms" to limit the
    reduction just to those columns which have the same
    name.  The deprecated fold_equivalents() feature is
    removed [ticket:1729].
  - [feature] Added with_labels and
    reduce_columns keyword arguments to
    Query.subquery(), to provide two alternate
    strategies for producing queries with uniquely-
    named columns.  [ticket:1729].

13 years ago-whitespace bonanza, contd
Mike Bayer [Sat, 28 Jul 2012 21:05:50 +0000 (17:05 -0400)] 
-whitespace bonanza, contd

13 years agotrailing whitespace bonanza
Mike Bayer [Sat, 28 Jul 2012 19:50:05 +0000 (15:50 -0400)] 
trailing whitespace bonanza

13 years ago- [bug] Added gaerdbms import to mysql/__init__.py,
Mike Bayer [Tue, 24 Jul 2012 16:47:11 +0000 (12:47 -0400)] 
- [bug] Added gaerdbms import to mysql/__init__.py,
the absense of which was preventing the new
GAE dialect from being loaded.  [ticket:2529]

13 years ago- we probably need to keep the __clause_element__() logic in, else we have
Mike Bayer [Tue, 24 Jul 2012 16:43:43 +0000 (12:43 -0400)] 
- we probably need to keep the __clause_element__() logic in, else we have
a serious callcount problem.   keeping the inspect() usage for those
cases where we want to interpret ORM-level FROM objects only.

13 years ago- rework some more __clause_element__ methods to use inspection, but theres a ton...
Mike Bayer [Tue, 24 Jul 2012 03:15:12 +0000 (23:15 -0400)] 
- rework some more __clause_element__ methods to use inspection, but theres a ton more of these