PyDispatcher

PyDispatcher provides the Python programmer with a multiple-producer-multiple-consumer signal-registration and routing infrastructure for use in multiple contexts.  The mechanism of PyDispatcher started life as a highly rated recipe in the Python Cookbook.  The SourceForge project aims to include various enhancements to the recipe developed during use in various applications.

To be more concrete about what PyDispatcher does for you:

The dispatcher mechanism is particularly useful when constructing Model-View-Controller style applications where it is not desirable to have the Model objects aware of the event model.

Acquisition and Installation

PyDispatcher is available as a standard Python distutils installation package from the SourceForge project file repository.  To install, unzip the source archive into a temporary directory and run:

python setup.py install

PyDispatcher does not include any binary packages, so there should be no issues in installation.  To use the CVS version of PyDispatcher (useful for developers of PyDispatcher), simply check out the module to a directory on your PythonPath.

Due to problems with the Python 2.2.2 (and earlier) weak reference implementation, it is strongly recommended that you use Python 2.2.3 or later when using PyDispatcher.

Documentation

You can find usage samples in the examples directory of the distribution.  The dispatcher module's reference documentation is currently the major source of information regarding usage.

PyDispatcher welcomes contributions, suggestions, and feedback from users in the pydispatcher-dev mailing list.