]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/log
thirdparty/sqlalchemy/sqlalchemy.git
17 years ago- fixed wrong varname in session exception throw
Mike Bayer [Wed, 5 Dec 2007 20:55:33 +0000 (20:55 +0000)] 
- fixed wrong varname in session exception throw
- fixed vertical example to just use a scoped session

17 years ago- a major behavioral change to collection-based backrefs: they no
Mike Bayer [Wed, 5 Dec 2007 20:43:16 +0000 (20:43 +0000)] 
- a major behavioral change to collection-based backrefs: they no
longer trigger lazy loads !  "reverse" adds and removes
are queued up and are merged with the collection when it is
actually read from and loaded; but do not trigger a load beforehand.
For users who have noticed this behavior, this should be much more
convenient than using dynamic relations in some cases; for those who
have not, you might notice your apps using a lot fewer queries than
before in some situations. [ticket:871]

17 years ago- basic framework for generic functions, [ticket:615]
Mike Bayer [Wed, 5 Dec 2007 03:07:21 +0000 (03:07 +0000)] 
- basic framework for generic functions, [ticket:615]
- changed the various "literal" generation functions to use an anonymous
bind parameter.  not much changes here except their labels now look
like ":param_1", ":param_2" instead of ":literal"
- from_obj keyword argument to select() can be a scalar or a list.

17 years ago- fixed backref bug where you could not del instance.attr if attr
Mike Bayer [Tue, 4 Dec 2007 17:55:25 +0000 (17:55 +0000)] 
- fixed backref bug where you could not del instance.attr if attr
was None

17 years ago- relaxed rules on column_property() expressions having labels; any
Mike Bayer [Tue, 4 Dec 2007 17:06:55 +0000 (17:06 +0000)] 
- relaxed rules on column_property() expressions having labels; any
ColumnElement is accepted now, as the compiler auto-labels non-labeled
ColumnElements now.  a selectable, like a select() statement, still
requires conversion to ColumnElement via as_scalar() or label().

17 years agotypo
Gaëtan de Menten [Tue, 4 Dec 2007 16:22:44 +0000 (16:22 +0000)] 
typo

17 years agofixed replacement of existing column properties with synonyms, [ticket:888]
Mike Bayer [Tue, 4 Dec 2007 15:53:23 +0000 (15:53 +0000)] 
fixed replacement of existing column properties with synonyms, [ticket:888]

17 years ago- moved class-level attributes placed by the attributes package into a _class_state
Mike Bayer [Sun, 2 Dec 2007 00:31:26 +0000 (00:31 +0000)] 
- moved class-level attributes placed by the attributes package into a _class_state
variable attached to the class.
- mappers track themselves primarily using the "mappers" collection on _class_state.
ClassKey is gone and mapper lookup uses regular dict keyed to entity_name; removes
a fair degree of WeakKeyDictionary overhead as well as ClassKey overhead.
- mapper_registry renamed to _mapper_registry; is only consulted by the
compile_mappers(), mapper.compile() and clear_mappers() functions/methods.

17 years ago- several ORM attributes have been removed or made private:
Mike Bayer [Sat, 1 Dec 2007 23:00:05 +0000 (23:00 +0000)] 
- several ORM attributes have been removed or made private:
mapper.get_attr_by_column(), mapper.set_attr_by_column(),
mapper.pks_by_table, mapper.cascade_callable(),
MapperProperty.cascade_callable(), mapper.canload()
- refinements to mapper PK/table column organization, session cascading,
some naming convention work

17 years agoadded test to ensure two conflicting m2m + backrefs raise an error
Mike Bayer [Fri, 30 Nov 2007 21:25:42 +0000 (21:25 +0000)] 
added test to ensure two conflicting m2m + backrefs raise an error

17 years agoremove a little cruft
Mike Bayer [Fri, 30 Nov 2007 03:34:06 +0000 (03:34 +0000)] 
remove a little cruft

17 years ago- added support for version_id_col in conjunction with inheriting mappers.
Mike Bayer [Fri, 30 Nov 2007 00:40:56 +0000 (00:40 +0000)] 
- added support for version_id_col in conjunction with inheriting mappers.
version_id_col is typically set on the base mapper in an inheritance
relationship where it takes effect for all inheriting mappers.
[ticket:883]
- a little rearrangement of save_obj()

17 years ago- adjustment to the previous checkin regarding inheritance to not conflict with globals
Mike Bayer [Thu, 29 Nov 2007 19:37:05 +0000 (19:37 +0000)] 
- adjustment to the previous checkin regarding inheritance to not conflict with globals
- fix to self-referential eager loading such that if the same mapped
instance appears in two or more distinct sets of columns in the same
result set, its eagerly loaded collection will be populated regardless
of whether or not all of the rows contain a set of "eager" columns for
that collection.  this would also show up as a KeyError when fetching
results with join_depth turned on.

17 years ago- fixed bug where Query would not apply a subquery to the SQL when LIMIT
Mike Bayer [Thu, 29 Nov 2007 15:36:13 +0000 (15:36 +0000)] 
- fixed bug where Query would not apply a subquery to the SQL when LIMIT
was used in conjunction with an inheriting mapper where the eager
loader was only in the parent mapper.

17 years agocleanup
Mike Bayer [Wed, 28 Nov 2007 23:44:14 +0000 (23:44 +0000)] 
cleanup

17 years agofixed unicode-ness for Unicode values
Mike Bayer [Wed, 28 Nov 2007 22:09:57 +0000 (22:09 +0000)] 
fixed unicode-ness for Unicode values

17 years ago- fixed bug which could arise when using session.begin_nested() in conjunction
Mike Bayer [Wed, 28 Nov 2007 22:03:14 +0000 (22:03 +0000)] 
- fixed bug which could arise when using session.begin_nested() in conjunction
with more than one level deep of enclosing session.begin() statements

17 years agonew synonym() behavior, including auto-attribute gen, attribute decoration,
Mike Bayer [Wed, 28 Nov 2007 21:13:35 +0000 (21:13 +0000)] 
new synonym() behavior, including auto-attribute gen, attribute decoration,
and auto-column mapping implemented; [ticket:801]

17 years agodefault value of assert_unicode is None on String, False on create_engine(), and...
Mike Bayer [Wed, 28 Nov 2007 00:44:16 +0000 (00:44 +0000)] 
default value of assert_unicode is None on String, False on create_engine(), and True on Unicode type.

17 years ago- column labels in the form "tablename.columname", i.e. with a dot, are now
Mike Bayer [Tue, 27 Nov 2007 16:57:56 +0000 (16:57 +0000)] 
- column labels in the form "tablename.columname", i.e. with a dot, are now
supported.

17 years agoopened up the test for "reflection with convert_unicode=True". this is since convert...
Mike Bayer [Tue, 27 Nov 2007 16:23:02 +0000 (16:23 +0000)] 
opened up the test for "reflection with convert_unicode=True".  this is since convert_unicode by default has assert_unicode, want to ensure that other dialects (at least oracle) support this (i.e. not unicode schema names themselves, just that they dont sent thru bytestrings to a String).

if maxdb or sybase *should* be able to handle this too though I can't test on this end.

17 years agoadded None to support zope __provides__, [ticket:882]
Mike Bayer [Tue, 27 Nov 2007 16:15:32 +0000 (16:15 +0000)] 
added None to support zope __provides__, [ticket:882]

17 years agoadded a test to validate ResultProxy truncation behavior
Mike Bayer [Tue, 27 Nov 2007 16:13:45 +0000 (16:13 +0000)] 
added a test to validate ResultProxy truncation behavior

17 years agoun-screw up the attribute manager checkin
Mike Bayer [Tue, 27 Nov 2007 05:44:16 +0000 (05:44 +0000)] 
un-screw up the attribute manager checkin

17 years agofixed reflection of unicode, [ticket:881]
Mike Bayer [Tue, 27 Nov 2007 05:37:57 +0000 (05:37 +0000)] 
fixed reflection of unicode, [ticket:881]

17 years agoAttributeManager class and "cached" state removed....attribute listing
Mike Bayer [Tue, 27 Nov 2007 05:15:13 +0000 (05:15 +0000)] 
AttributeManager class and "cached" state removed....attribute listing
is tracked from _sa_attrs class collection

17 years agoFix: MSSQL set identity_insert and errors [ticket:538]
Paul Johnston [Sun, 25 Nov 2007 23:56:38 +0000 (23:56 +0000)] 
Fix: MSSQL set identity_insert and errors [ticket:538]

17 years ago- check for NoneType too with unicode....
Mike Bayer [Sun, 25 Nov 2007 23:46:05 +0000 (23:46 +0000)] 
- check for NoneType too with unicode....
- fixed ORM tests to have proper unicode

17 years agoMSSQL doesn't support subqueries in insert values; disable test
Paul Johnston [Sun, 25 Nov 2007 23:36:20 +0000 (23:36 +0000)] 
MSSQL doesn't support subqueries in insert values; disable test

17 years agoFix: test_decimal on MSSQL - use a value that is accurately represented as a float...
Paul Johnston [Sun, 25 Nov 2007 23:34:39 +0000 (23:34 +0000)] 
Fix: test_decimal on MSSQL - use a value that is accurately represented as a float, and make when asdecimal=False, convert Decimal to float

17 years agoedits
Mike Bayer [Sun, 25 Nov 2007 23:34:26 +0000 (23:34 +0000)] 
edits

17 years agoFix: MSSQL concatenate operator is + not || [ticket:879]
Paul Johnston [Sun, 25 Nov 2007 23:17:02 +0000 (23:17 +0000)] 
Fix: MSSQL concatenate operator is + not || [ticket:879]

17 years ago- added new flag to String and create_engine(), assert_unicode=(True|False|None).
Mike Bayer [Sun, 25 Nov 2007 23:14:03 +0000 (23:14 +0000)] 
- added new flag to String and create_engine(), assert_unicode=(True|False|None).
When convert_unicode=True, this flag also defaults to `True`, and results in all
unicode conversion operations raising an exception when a non-unicode bytestring
is passed as a bind parameter.  It is strongly advised that all unicode-aware
applications make proper use of Python unicode objects (i.e. u'hello' and
not 'hello').

17 years agoAvoid doubling quoting of identifier in MSSQL reflection
Paul Johnston [Sun, 25 Nov 2007 23:10:17 +0000 (23:10 +0000)] 
Avoid doubling quoting of identifier in MSSQL reflection

17 years agoMake function a reserved word in MSSQL
Paul Johnston [Sun, 25 Nov 2007 22:58:14 +0000 (22:58 +0000)] 
Make function a reserved word in MSSQL

17 years agoMSSQL/PyODBC no longer has a global set nocount on
Paul Johnston [Sun, 25 Nov 2007 22:46:22 +0000 (22:46 +0000)] 
MSSQL/PyODBC no longer has a global set nocount on

17 years agoChange to make PyODBC result fetching a bit more reliable
Paul Johnston [Sun, 25 Nov 2007 17:40:49 +0000 (17:40 +0000)] 
Change to make PyODBC result fetching a bit more reliable

17 years agocolumn.foreign_key -> foreign_keys in MSSQL
Paul Johnston [Sun, 25 Nov 2007 17:32:06 +0000 (17:32 +0000)] 
column.foreign_key -> foreign_keys in MSSQL

17 years agobump for py2.4
Mike Bayer [Sun, 25 Nov 2007 04:00:44 +0000 (04:00 +0000)] 
bump for py2.4

17 years agoOrderedSet to appease the unit tests....need to find a way to get rid of this
Mike Bayer [Sun, 25 Nov 2007 03:45:20 +0000 (03:45 +0000)] 
OrderedSet to appease the unit tests....need to find a way to get rid of this

17 years ago- named_with_column becomes an attribute
Mike Bayer [Sun, 25 Nov 2007 03:28:49 +0000 (03:28 +0000)] 
- named_with_column becomes an attribute
- cleanup within compiler visit_select(), column labeling
- is_select() removed from dialects, replaced with returns_rows_text(), returns_rows_compiled()
- should_autocommit() removed from dialects, replaced with should_autocommit_text() and
should_autocommit_compiled()
- typemap and column_labels collections removed from Compiler, replaced with single "result_map" collection.
- ResultProxy uses more succinct logic in combination with result_map to target columns

17 years ago- decruftify old visitors used by orm, convert to functions that
Mike Bayer [Sat, 24 Nov 2007 01:59:29 +0000 (01:59 +0000)] 
- decruftify old visitors used by orm, convert to functions that
use a common traversal function.
- TranslatingDict is finally gone, thanks to column.proxy_set simpleness...hooray !
- shoved "slice" use case on RowProxy into an exception case.  knocks noticeable time off of large result set operations.

17 years ago- all kinds of cleanup, tiny-to-slightly-significant speed improvements
Mike Bayer [Sat, 24 Nov 2007 00:55:39 +0000 (00:55 +0000)] 
- all kinds of cleanup, tiny-to-slightly-significant speed improvements

17 years agomore changes to merge(dont_load); since we now have a guarantee that
Mike Bayer [Fri, 23 Nov 2007 19:01:40 +0000 (19:01 +0000)] 
more changes to merge(dont_load); since we now have a guarantee that
all merged instances aren't dirty, we can copy the attribues without using
any append/replace events, and therefore don't have any concern of lazy loaders
firing off.  added tests to ensure that '_is_orphan()' doesn't get screwed up,
and also that the 'dirty' list on the new session stays empty, which is an
extra bonus of this approach.

17 years ago- some clarifications and fixes to merge(instance, dont_load=True).
Mike Bayer [Fri, 23 Nov 2007 05:24:32 +0000 (05:24 +0000)] 
- some clarifications and fixes to merge(instance, dont_load=True).
fixed bug where lazy loaders were getting disabled on returned instances.
Also, we currently do not support merging an instance which has uncommitted
changes on it, in the case that dont_load=True is used....this will
now raise an error.  This is due to complexities in merging the
"committed state" of the given instance to correctly correspond to the
newly copied instance.  Since the use case for dont_load=True is
caching, the given instances shouldn't have any uncommitted changes on them
anyway.

17 years agoTypo fix
Jason Kirtland [Tue, 20 Nov 2007 18:32:01 +0000 (18:32 +0000)] 
Typo fix

17 years ago- clarified the error message which occurs when you try to update()
Mike Bayer [Tue, 20 Nov 2007 15:55:36 +0000 (15:55 +0000)] 
- clarified the error message which occurs when you try to update()
an instance with the same identity key as an instance already present
in the session.
- opened up the recursive checks in session.merge() a little bit

17 years ago- fixed endless loop issue when using lazy="dynamic" on both
Mike Bayer [Mon, 19 Nov 2007 08:30:52 +0000 (08:30 +0000)] 
- fixed endless loop issue when using lazy="dynamic" on both
sides of a bi-directional relationship [ticket:872]

17 years agoadd a polymorphic get() test
Mike Bayer [Mon, 19 Nov 2007 04:08:48 +0000 (04:08 +0000)] 
add a polymorphic get() test

17 years agodoctest fixups rel_0_4_1
Mike Bayer [Sun, 18 Nov 2007 22:47:55 +0000 (22:47 +0000)] 
doctest fixups

17 years ago- added tests for [ticket:768]
Mike Bayer [Sun, 18 Nov 2007 22:35:19 +0000 (22:35 +0000)] 
- added tests for [ticket:768]

17 years ago- added op() operator to instrumented attributes; i.e.
Mike Bayer [Sun, 18 Nov 2007 22:19:05 +0000 (22:19 +0000)] 
- added op() operator to instrumented attributes; i.e.
User.name.op('ilike')('%somename%') [ticket:767]

17 years ago- MSSQL anonymous labels for selection of functions made deterministic
Mike Bayer [Sun, 18 Nov 2007 21:32:13 +0000 (21:32 +0000)] 
- MSSQL anonymous labels for selection of functions made deterministic
- propagate correct **kwargs through mssql methods

17 years agorepaired FB functions, [ticket:862]
Mike Bayer [Sun, 18 Nov 2007 21:20:32 +0000 (21:20 +0000)] 
repaired FB functions, [ticket:862]

17 years agoTests for mysql casts and a couple adjustments.
Jason Kirtland [Sun, 18 Nov 2007 20:44:20 +0000 (20:44 +0000)] 
Tests for mysql casts and a couple adjustments.

17 years ago- Clarified use of python's Decimal
Jason Kirtland [Sun, 18 Nov 2007 19:01:42 +0000 (19:01 +0000)] 
- Clarified use of python's Decimal

17 years agoMigrated Connection.properties to Connection.info ('info' is the new standard name...
Jason Kirtland [Sun, 18 Nov 2007 18:19:52 +0000 (18:19 +0000)] 
Migrated Connection.properties to Connection.info ('info' is the new standard name for user-writable property collections that came out of [ticket:573]).  'properties' is now an alias, will be removed in 0.5.

17 years ago- added a little more checking for garbage-collection dereferences in
Mike Bayer [Sun, 18 Nov 2007 17:31:09 +0000 (17:31 +0000)] 
- added a little more checking for garbage-collection dereferences in
InstanceState.__cleanup() to reduce "gc ignored" errors on app
shutdown

17 years agoadded some ORDER BYs to appease the ever picky postgres
Mike Bayer [Sun, 18 Nov 2007 17:17:04 +0000 (17:17 +0000)] 
added some ORDER BYs to appease the ever picky postgres

17 years ago- PickleType will compare using `==` when set up with mutable=False,
Mike Bayer [Sun, 18 Nov 2007 16:32:47 +0000 (16:32 +0000)] 
- PickleType will compare using `==` when set up with mutable=False,
and not the `is` operator.  To use `is` or any other comparator, send
in a custom comparison function using PickleType(comparator=my_custom_comparator).

17 years agotest cases were not fully testing contains_eager() with regards to [ticket:777],...
Mike Bayer [Sun, 18 Nov 2007 16:18:54 +0000 (16:18 +0000)] 
test cases were not fully testing contains_eager() with regards to [ticket:777], fixed contains_eager() for more than one level deep

17 years agosome wide zoomark ranges...
Mike Bayer [Sun, 18 Nov 2007 07:23:00 +0000 (07:23 +0000)] 
some wide zoomark ranges...

17 years agocut down a good deal of Join construction overhead
Mike Bayer [Sun, 18 Nov 2007 06:51:17 +0000 (06:51 +0000)] 
cut down a good deal of Join construction overhead

17 years agologging fixes
Mike Bayer [Sun, 18 Nov 2007 05:46:45 +0000 (05:46 +0000)] 
logging fixes

17 years agofixed both group-deferred attributes and expired attributes to not
Mike Bayer [Sun, 18 Nov 2007 05:16:52 +0000 (05:16 +0000)] 
fixed both group-deferred attributes and expired attributes to not
blow away changes made on attributes before the load takes place

17 years ago- oracle will now reflect "DATE" as an OracleDateTime column, not
Mike Bayer [Sun, 18 Nov 2007 02:44:15 +0000 (02:44 +0000)] 
- oracle will now reflect "DATE" as an OracleDateTime column, not
OracleDate

- added awareness of schema name in oracle table_names() function,
fixes metadata.reflect(schema='someschema') [ticket:847]

17 years agoremoved is_expired() method since the meaning of "expired" is per-attribute now
Mike Bayer [Sun, 18 Nov 2007 02:22:41 +0000 (02:22 +0000)] 
removed is_expired() method since the meaning of "expired" is per-attribute now

17 years agooops, print statements...
Mike Bayer [Sun, 18 Nov 2007 02:18:52 +0000 (02:18 +0000)] 
oops, print statements...

17 years agotypos
Mike Bayer [Sun, 18 Nov 2007 02:15:34 +0000 (02:15 +0000)] 
typos

17 years ago- session.refresh() and session.expire() now support an additional argument
Mike Bayer [Sun, 18 Nov 2007 02:13:56 +0000 (02:13 +0000)] 
- session.refresh() and session.expire() now support an additional argument
"attribute_names", a list of individual attribute keynames to be refreshed
or expired, allowing partial reloads of attributes on an already-loaded
instance.
- finally simplified the behavior of deferred attributes, deferred polymorphic
load, session.refresh, session.expire, mapper._postfetch to all use a single
codepath through query._get(), which now supports a list of individual attribute names
to be refreshed.  the *one* exception still remaining is mapper._get_poly_select_loader(),
which may stay that way since its inline with an already processing load operation.
otherwise, query._get() is the single place that all "load this instance's row" operation
proceeds.
- cleanup all over the place

17 years agofixed further issues with row translation [ticket:868]
Mike Bayer [Thu, 15 Nov 2007 15:10:05 +0000 (15:10 +0000)] 
fixed further issues with row translation [ticket:868]

17 years agoRestored Python 2.3 compatibility (in IdentitySet)
Jason Kirtland [Wed, 14 Nov 2007 22:46:14 +0000 (22:46 +0000)] 
Restored Python 2.3 compatibility (in IdentitySet)

17 years agomodified last commit; the eager loader only undefers columns from the primary mapped...
Mike Bayer [Wed, 14 Nov 2007 16:59:49 +0000 (16:59 +0000)] 
modified last commit; the eager loader only undefers columns from the primary mapped table.

17 years ago- DeferredColumnLoader checks row for column, if present sends it to
Mike Bayer [Wed, 14 Nov 2007 16:43:21 +0000 (16:43 +0000)] 
- DeferredColumnLoader checks row for column, if present sends it to
ColumnLoader to create the row processor
- eager loaders ensure deferred foreign key cols are present in the primary list of columns (and secondary...).  because eager loading with LIMIT/OFFSET doesn't re-join to the parent table anymore this is now necessary. [ticket:864]

17 years agoRemoved some distractions, ala r3770.
Jason Kirtland [Wed, 14 Nov 2007 01:26:50 +0000 (01:26 +0000)] 
Removed some distractions, ala r3770.

17 years agoRemoved some distractions.
Jason Kirtland [Wed, 14 Nov 2007 00:43:49 +0000 (00:43 +0000)] 
Removed some distractions.

17 years ago - added having() method to Query, applies HAVING to the generated statement
Mike Bayer [Tue, 13 Nov 2007 23:07:01 +0000 (23:07 +0000)] 
  - added having() method to Query, applies HAVING to the generated statement
    in the same way as filter() appends to the WHERE clause.

17 years agoMore column type __repr__ corrections.
Jason Kirtland [Tue, 13 Nov 2007 19:29:16 +0000 (19:29 +0000)] 
More column type __repr__ corrections.

17 years agoAbstractType __repr__ robustification.
Jason Kirtland [Tue, 13 Nov 2007 16:50:16 +0000 (16:50 +0000)] 
AbstractType __repr__ robustification.

17 years agoRemove usage of deprecated in_ syntax
Paul Johnston [Sun, 11 Nov 2007 18:23:59 +0000 (18:23 +0000)] 
Remove usage of deprecated in_ syntax

17 years ago- Pool listeners preserved on pool.recreate()
Jason Kirtland [Sat, 10 Nov 2007 19:31:06 +0000 (19:31 +0000)] 
- Pool listeners preserved on pool.recreate()
- Docstring rampage

17 years agoRemoved out of date identity map language (thanks, Jiten)
Jason Kirtland [Sat, 10 Nov 2007 15:47:19 +0000 (15:47 +0000)] 
Removed out of date identity map language (thanks, Jiten)

17 years agoadded self referential test
Mike Bayer [Sat, 10 Nov 2007 14:36:03 +0000 (14:36 +0000)] 
added self referential test

17 years ago - anonymous column expressions are automatically labeled.
Mike Bayer [Sat, 10 Nov 2007 03:02:16 +0000 (03:02 +0000)] 
  - anonymous column expressions are automatically labeled.
    e.g. select([x* 5]) produces "SELECT x * 5 AS anon_1".
    This allows the labelname to be present in the cursor.description
    which can then be appropriately matched to result-column processing
    rules. (we can't reliably use positional tracking for result-column
    matches since text() expressions may represent multiple columns).

  - operator overloading is now controlled by TypeEngine objects - the
    one built-in operator overload so far is String types overloading
    '+' to be the string concatenation operator.
    User-defined types can also define their own operator overloading
    by overriding the adapt_operator(self, op) method.

  - untyped bind parameters on the right side of a binary expression
    will be assigned the type of the left side of the operation, to better
    enable the appropriate bind parameter processing to take effect
    [ticket:819]

17 years ago- mysql float types now do an end run around the base class and respect precision...
Jason Kirtland [Fri, 9 Nov 2007 19:55:31 +0000 (19:55 +0000)] 
- mysql float types now do an end run around the base class and respect precision=None and length=None
- Added the mysteriously missing mysql cast support
- Added mysql REAL synonym for schema generation

17 years agomore searching for equiv columns
Mike Bayer [Fri, 9 Nov 2007 16:54:47 +0000 (16:54 +0000)] 
more searching for equiv columns

17 years ago- fixed error where Query.add_column() would not accept a class-bound
Mike Bayer [Fri, 9 Nov 2007 16:36:46 +0000 (16:36 +0000)] 
- fixed error where Query.add_column() would not accept a class-bound
attribute as an argument; Query also raises an error if an invalid
argument was sent to add_column() (at instances() time) [ticket:858]

17 years ago- query doesn't throw an error if you use distinct() and an order_by()
Mike Bayer [Fri, 9 Nov 2007 16:25:28 +0000 (16:25 +0000)] 
- query doesn't throw an error if you use distinct() and an order_by()
containing UnaryExpressions (or other) together [ticket:848]

17 years agoa tweak, still requiring test coverage, to add more "foreign key equivalents" to...
Mike Bayer [Fri, 9 Nov 2007 15:11:38 +0000 (15:11 +0000)] 
a tweak, still requiring test coverage, to add more "foreign key equivalents" to the equivalent_columns collection

17 years agomore changes to traverse-and-clone; a particular element will only be cloned once...
Mike Bayer [Thu, 8 Nov 2007 18:06:21 +0000 (18:06 +0000)] 
more changes to traverse-and-clone; a particular element will only be cloned once and is
then re-used.  the FROM calculation of a Select normalizes the list of hide_froms against all
previous incarnations of each FROM clause, using a tag attached from cloned clause to
previous.

17 years ago- identified some cases where Alias needs to be cloned; but still cant clone
Mike Bayer [Thu, 8 Nov 2007 00:26:23 +0000 (00:26 +0000)] 
- identified some cases where Alias needs to be cloned; but still cant clone
when its an alias of a Table; added some test coverage for one particular
case from the doctests
- fixed "having" example in doctests, updated eager load example

17 years agoupdated zoomark test_1a_populate callcounts. if the calls keep being removed like...
Ants Aasma [Thu, 8 Nov 2007 00:11:46 +0000 (00:11 +0000)] 
updated zoomark test_1a_populate callcounts. if the calls keep being removed like this then soon there will be none left.

17 years ago- fixed remainder of [ticket:853]
Mike Bayer [Wed, 7 Nov 2007 22:25:01 +0000 (22:25 +0000)] 
- fixed remainder of [ticket:853]
- bindparam 'shortname' is deprecated
- fixed testing.assert_compile() to actually generate bind param dict before asserting
- added bind param assertions to CRUDTest.test_update

17 years ago - <Engine|Connection>._execute_clauseelement becomes a public method
Mike Bayer [Wed, 7 Nov 2007 21:56:23 +0000 (21:56 +0000)] 
  - <Engine|Connection>._execute_clauseelement becomes a public method
    Connectable.execute_clauseelement

17 years ago - fix to compiled bind parameters to not mistakenly populate None
Mike Bayer [Wed, 7 Nov 2007 21:48:16 +0000 (21:48 +0000)] 
  - fix to compiled bind parameters to not mistakenly populate None
    [ticket:853]

17 years agofixed the previous TLTransaction checkin
Mike Bayer [Wed, 7 Nov 2007 21:46:48 +0000 (21:46 +0000)] 
fixed the previous TLTransaction checkin

17 years ago- fixed the close() method on Transaction when using strategy='threadlocal'
Mike Bayer [Wed, 7 Nov 2007 18:31:35 +0000 (18:31 +0000)] 
- fixed the close() method on Transaction when using strategy='threadlocal'

17 years agoadjusted "blank out primary key" rule to check for "allow_null_pks" on target mapper...
Mike Bayer [Wed, 7 Nov 2007 01:36:16 +0000 (01:36 +0000)] 
adjusted "blank out primary key" rule to check for "allow_null_pks" on target mapper.  this was revealed by
recent attributes.py change in r3695 that causes a value of "None" to register as part of the attribute history's
added_items() collection (i.e. since AttributeHistory compares against NO_VALUE instead of None).

17 years ago - fixed very hard-to-reproduce issue where by the FROM clause of Query
Mike Bayer [Wed, 7 Nov 2007 00:52:49 +0000 (00:52 +0000)] 
  - fixed very hard-to-reproduce issue where by the FROM clause of Query
    could get polluted by certain generative calls [ticket:852]

17 years agofixed/added coverage for list extension; [ticket:855]
Mike Bayer [Tue, 6 Nov 2007 19:19:30 +0000 (19:19 +0000)] 
fixed/added coverage for list extension; [ticket:855]