Commit Graph

17 Commits

Author SHA1 Message Date
Mike Bayer 9e56ff1a44 another py3k fix 2012-01-28 16:04:38 -05:00
Mike Bayer 029ae72b2f - [bug] Fixed bug where unpickled object didn't
have enough of its state set up to work
correctly within the unpickle() event established
by the mutable object extension, if the object
needed ORM attribute access within
__eq__() or similar. [ticket:2362]
2012-01-28 13:48:05 -05:00
Mike Bayer d9adb2a4fd - [bug] the value of a composite attribute is now
expired after an insert or update operation, instead
of regenerated in place.  This ensures that a
column value which is expired within a flush
will be loaded first, before the composite
is regenerated using that value.  [ticket:2309]

- [bug] The fix in [ticket:2309] also emits the
"refresh" event when the composite value is
loaded on access, even if all column
values were already present, as is appropriate.
This fixes the "mutable" extension which relies
upon the "load" event to ensure the _parents
dictionary is up to date, fixes [ticket:2308].
Thanks to Scott Torborg for the test case here.
2011-10-26 12:41:18 -04:00
Mike Bayer 409a95adf4 - Fixed bug in the mutable extension whereby
if None or a non-corresponding type were set,
    an error would be raised.  None is now accepted
    which assigns None to all attributes,
    illegal values raise ValueError.
2011-07-01 11:32:07 -04:00
Mike Bayer 287e9d6a77 - Fixed bug in the mutable extension whereby
if the same type were used twice in one
    mapping, the attributes beyond the first
    would not get instrumented.
2011-06-30 10:43:53 -04:00
Mike Bayer 5cac2468b6 - Repaired new "mutable" extension to propagate
events to subclasses correctly; don't
create multiple event listeners for
subclasses either.  [ticket:2180]
2011-06-04 19:43:39 -04:00
Mike Bayer 953d72df6b py3k test fix 2011-05-14 13:54:00 -04:00
Mike Bayer 501b8aec1b - Fixed bugs in sqlalchemy.ext.mutable extension where
`None` was not appropriately handled, replacement
    events were not appropriately handled.
    [ticket:2143]
2011-05-14 10:23:12 -04:00
Mike Bayer 68a350d462 - remove test.sql._base, test.engine._base, test.orm._base, move those classes to a new test.lib.fixtures module
- move testing.TestBase to test.lib.fixtures
- massive search and replace
2011-03-27 16:27:27 -04:00
Mike Bayer 14a2fae239 - remove @testing.resolve_artifact_names, replace with direct attribute
access to the cls/self.tables/classes registries
- express orm/_base.py ORMTest in terms of engine/_base.py TablesTest,
factor out common steps into TablesTest, remove AltEngineTest as a
separate class.   will further consolidate these base classes
2011-03-26 19:03:11 -04:00
Mike Bayer 8ca1e58032 - oracle fixes 2011-01-15 19:50:01 -05:00
Mike Bayer 4f18ce0af5 - add support for pickling with mutable scalars, mutable composites
- add pickle/unpickle events to ORM events.  these are needed
for the mutable extension.
- finish mutable extension documentation, consolidate examples,
add full descriptions
2011-01-02 19:54:31 -05:00
Mike Bayer 350aed3fdb - whitespace removal bonanza 2011-01-02 14:23:42 -05:00
Mike Bayer 6d36d4635c - add length to varchars 2010-12-31 11:47:38 -05:00
Mike Bayer 426c4356eb - removes the "on_" prefix. 2010-12-30 14:22:43 -05:00
Mike Bayer 7f7bccfc83 - they don't want "on_". First step, change the naming convention on Events
so that non-events are just _name.
2010-12-30 13:43:39 -05:00
Mike Bayer b1c90de449 - mutable examples now move into sqlalchemy.ext.mutable
- streamline interfaces, get Mutable/MutableComposite to be as minimal
in usage as possible
- docs for mutable, warnings regrarding mapper events being global
- move MutableType/mutable=True outwards, move orm tests to its
own module, note in all documentation
- still need more events/tests for correct pickling support of
composites, mutables.  in the case of composites its needed
even without mutation.  see [ticket:2009]
2010-12-29 15:04:35 -05:00