| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
| |
as possible
|
| |
|
| |
|
| |
|
|
|
|
| |
- went through examples/ and cleaned out excess list() calls
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
220/skip tests
- Fixed potential memory leak which could occur if an
arbitrary number of :class:`.sessionmaker` objects
were created. The anonymous subclass created by
the sessionmaker, when dereferenced, would not be garbage
collected due to remaining class-level references from the
event package. This issue also applies to any custom system
that made use of ad-hoc subclasses in conjunction with
an event dispatcher. Also in 0.7.10. [ticket:2650]
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
:meth:`.MutableBase.coerce` method to be used, even though
the code seemed to indicate this intent, so this now works
and a brief example is added. As a side-effect,
the mechanics of this event handler have been changed so that
new :class:`.MutableComposite` types no longer add per-type
global event handlers. Also in 0.7.10
[ticket:2624]
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
mapped classes allows that unmapped classes
can be specified for instance- and mapper-events.
The established events will be automatically
set up on subclasses of that class when the
propagate=True flag is passed, and the
events will be set up for that class itself
if and when it is ultimately mapped.
[ticket:2585]
- [bug] The instrumentation events class_instrument(),
class_uninstrument(), and attribute_instrument()
will now fire off only for descendant classes
of the class assigned to listen(). Previously,
an event listener would be assigned to listen
for all classes in all cases regardless of the
"target" argument passed. [ticket:2590]
|
|
|
|
| |
classlevel, continuing [ticket:2516]
|
|
|
|
|
|
|
|
|
| |
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]
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
usage of the event system; instance-level
collections are no longer created for a
particular type of event until
instance-level listeners are established
for that event. [ticket:2516] Also in 0.7.9.
|
|
|
|
|
|
|
|
| |
which would primarily show up as
events not being registered with
sessionmaker() instances created
after the event was associated
with the Session class. [ticket:2424]
|
| |
|
|
|
|
|
|
| |
target + event name, applies the decorated
function as a listener. [ticket:2106]
- remove usage of globals from test.base.test_events
|
|
|
|
|
|
| |
needed yet tho)
- render foreign key constraints in the order in which they were cerated
|
|
|
|
|
|
|
|
| |
- simplify connection event model to be inline inside Connection, don't use ad-hoc
subclasses (technically would leak memory for the app that keeps creating engines
and adding events)
- not doing listen-per-connection yet. this is closer. overall things
are much simpler now (until we put listen-per-connection in...)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
SchemaEventTarget, which supplies dispatch
- the dispatch now provides before_parent_attach(),
after_parent_attach(), events which generally bound the _set_parent()
event. [ticket:2037]
- the _on_table_attach mechanism now usually uses the
event dispatch
- fixed class-level event dispatch to propagate to all subclasses, not just
immediate subclasses
- fixed class-level event unpickling to handle more involved
inheritance hierarchies, needed by the new schema event dispatch.
- ForeignKeyConstraint doesn't re-call the column attach event
on ForeignKey objects that are already associated with the correct
Column
- we still need that ImportError on mysqldb CLIENT FLAGS to support
mock DBAPIs
|
|
|
|
|
|
| |
prevents confusion
when stringing the attr during an exception for something else like a bad event listen
|
| |
|
|
|
|
|
| |
a consistent tag
- AUTHORS file
|
| |
|
|
|
|
| |
so that non-events are just _name.
|
| |
|
| |
|
| |
|
|
|
|
| |
0.7 tip soon
|
|
|
|
| |
- poolevent accepts Engine as a target
|
|
|
|
|
|
|
|
|
|
|
| |
in a separate collection. this collection also propagates during update()
- ClassManager now handles bases, subclasses collections.
- ClassManager looks at __bases__ instead of __mro__ for superclasses.
It's assumed ClassManagers are in an unbroken chain upwards through __mro__.
- trying to get a clear() that makes sense on cls.dispatch
- implemented propagate for attribute events, plus permutation-based test
- implemented propagate for mapper / instance events with rudimentary test
- some pool events tests are failing for some reason
|
|
|
|
| |
instance methods as listeners.
|
| |
|
| |
|
|
|
|
|
| |
- fix pickling again
- other test fixes
|
|
|
|
|
|
|
|
|
| |
- simplify listen_for_events example with new system
- add "propagate", "retval", "raw" flags to attribute events. this solves the "return value"
issue as well as the "subclass" issue.
- begin thinking about event removal. Each listen() method will have a corresponding remove().
Custom listen() methods will have to package all the info onto the event function that is needed
to remove its state.
|
| |
|
| |
|
| |
|
|
|
|
|
| |
need both forms, the wrapping thing is just silly
- fixed the listen() to not re-wrap continuously.
|
|
|
|
|
|
|
| |
and....doesn't work.
on_before_execute and on_after_execute really not appealing here. might have to just go back to
what it was the other day.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
def listen(target, args)
so here we provide a "wrapper" approach that allows this, and it is
basically pass-by-value. a pass-by-value event *may* support rewriting
some of the args in the dictionary.
the current
listen will become "listen_raw" since it saves about 100% overhead versus
the coercion to dict, and will be used internally, and will remain
pass-by-reference.
proxyconnection probably will rely upon the newer style of pass-by-value
for "rewrite the args" types of calls.
|
|
|
|
|
|
| |
cut down on extraneous stuff, cleanup
The Event class never gets instantiated and its methods stay the same
so that sphinx can get to it.
|
|
|
|
|
|
|
|
|
| |
object.
this leaves the original Event class alone so sphinx documents it.
this is all a mess right now but the pool/engine tests are working fully
at the moment so wanted to mark a working version.
|
| |
|
| |
|
| |
|
| |
|