summaryrefslogtreecommitdiff
path: root/sleekxmpp/plugins/base.py
AgeCommit message (Collapse)Author
2012-07-26Enhance plugin config with attribute accessors.Lance Stout
This makes updating the config after plugin initialization much easier.
2012-07-10Add default plugin session_bind handler.Lance Stout
All plugins may now simply define a session_bind method where disco features and other actions which require the bound JID may be done.
2012-06-19Limit except clause to just ImportErrors when loading plugins.Lance Stout
2012-06-19PEP8 formatting updates.Lance Stout
2012-05-04Fix loading plugins from custom modules when passing the module itself.Lance Stout
Loading plugins from custom modules when passed as a string still works.
2012-04-06Don't break test plugins that use None instead of a stream object.Lance Stout
2012-04-06Begin experiment with a centralized API callback registry.Lance Stout
The API registry generalizes the node handler system from the xep_0030 plugin so that other plugins can use it.
2012-03-12Cleanup plugin import logic.Lance Stout
Checking for a 'xep' or 'rfc' attribute is more reliable for detecting an old style plugin than 'name'.
2012-03-12Enable using post_init() to resolve circular dependencies.Lance Stout
We really shouldn't have any. However, we may later introduce one with XEP-0030 and XEP-0059.
2012-03-12Remove extra logging statement, add backward compatible references.Lance Stout
2012-03-12Handle loading plugins on demand.Lance Stout
Plugins that are referenced as dependencies, but have not been registered now will be imported. Newer plugins should register themselves automatically, but older style plugins will be explicitly registered after import.
2012-03-12Introduce new plugin system.Lance Stout
The new system is backward compatible and will load older style plugins. The new plugin framework allows plugins to track their dependencies, and will auto-enable plugins as needed. Dependencies are tracked via a class-level set named `dependencies` in each plugin. Plugin names are no longer tightly coupled with the plugin class name, Pso EP8 style class names may be used. Disabling plugins is now allowed, but ensuring proper cleanup is left to the plugin implementation. The use of a `post_init()` method is no longer needed for new style plugins, but plugins following the old style will still require a `post_init()` method.
2011-06-30Reorganize features into plugins.Lance Stout
2011-06-08Added session_end event and some docs.Lance Stout
For now, session_end is the same as disconnected, but once support is added later for stream management, the two events will become distinct. Plugins should add handlers for session_end for cleaning any session state.
2010-10-20pep8 fixes on core libraryNathan Fritz
2010-07-20Updated license notices to use the correct MIT format. Also corrected ↵Lance Stout
references to nonexistant license.txt to LICENSE.
2010-05-26plugins now are checked for post_init having ran when process() is calledNathan Fritz
2009-06-03moved seesmic branch to trunkNathan Fritz