How is this simpler:
eventnet.driver.post('my_event', arg1=something, arg2=something_else)
dispatcher.send('my_event', arg1=something, arg2=something_else)
Or listening with:
It's not a decorator, but that would be very easy to implement. PyDispatcher also has has the concept of "sender", which I find useful, as I'm actually expecting to listen to events on a per-class basis (and SQLObject classes are the senders).
The events I'm proposing are listed in sqlobject.events in the repository -- it could quickly become a core part of how basic concepts like joins and columns are implemented. E.g., a column with a cascade=True setting would listen for a delete event.