summaryrefslogtreecommitdiff
path: root/sleekxmpp
AgeCommit message (Collapse)Author
2010-07-01proper logging.Tom Nichols
2010-07-01catch XML parse errors & don't attempt to reconnect. Also removed ↵Tom Nichols
'connecting' state from setStream method
2010-07-01removed some superfluous debug loggingTom Nichols
2010-07-01fix for statemachine where operations would unintentionally block if the ↵Tom Nichols
lock was acquired in a long-running transition
2010-06-28Merge branch 'hacks' of git@github.com:tomstrummer/SleekXMPP into hackssleek-0.9-conn-fixes20.9-conn-fixes2Tom Nichols
2010-06-28race condition where we were transitioning to 'disconnected' and immediately ↵Tom Nichols
reconnecting in another thread before the socket.close call occurred. Now we're locking the state machine until the disconnect routine completes.
2010-06-28make the scheduler a daemon thread to prevent hanging when the main thread ↵Tom Nichols
exits.
2010-06-28print the traceback if we can't load a plugin for some reasonTom Nichols
2010-06-08fixed mis-named variable, doc typo and using conformant Condition methods.sleek-0.9-conn-fixes10.9-conn-fixes1Thom Nichols
2010-06-07added documentation for transition_ctx and removed some superfluous comment ↵Thom Nichols
lines
2010-06-07added __str__Thom Nichols
2010-06-07context manager now returns a boolean 'result' as the context variable to ↵Thom Nichols
indicate whether the transition timed out or if you are actually locked when entering the context body
2010-06-07context manager is working but there's a fatal flaw: inside the body of the ↵Thom Nichols
'with' statement, there's no way to tell whether or not the transition occurred or timed out.
2010-06-04connect uses the new function-on-state-transition so when the connect method ↵Thom Nichols
returns you are guaranteed to be either in the 'connected' or 'disconnected' state. Could remove the 'connecting' state except uses it.
2010-06-03tweaked connectTCP call slightly to reduce possibility of 'connecting' state ↵Thom Nichols
limbo
2010-06-03added function execution on transition, and more unit tests.Thom Nichols
2010-06-03added function execution on transition, and more unit tests.Thom Nichols
2010-06-03whups, somehow I lost the 'connecting' lock in connect()Thom Nichols
2010-06-03added function to retrieve the current stateThom Nichols
2010-06-03fixed quiesce algorithm; state transition if connect fails; note about ↵Thom Nichols
use_tls instance variable.
2010-06-02Merge branch 'master' into hacksThom Nichols
2010-06-02reconnection quiesce logicThom Nichols
2010-06-02removed unnecessary flags and arguments from disconnect methodThom Nichols
2010-06-02Merge branch 'master' into hacksThom Nichols
2010-06-03hack fix for session before bindNathan Fritz
2010-06-03if binding and session are advertised in the same go, do session firstNathan Fritz
2010-06-03added try/catch block to plugin loadingBrian Beggs
2010-06-03moddified plugin loading so plugins located outside of the plugins directory ↵Brian Beggs
in sleek may be loaded. Added optional argument pluginModule that is a string that represents the module the desired plugin should be loaded from. An exception on plugin loading now also will not cause the program to exit. The exception is caught and loading of other plugins contains.
2010-06-02overhauled state machine. Now allows for atomic transitions.Thom Nichols
Next step: atomic function calls (and maybe 'handlers') on state transition.
2010-06-01Merge branch 'hacks' of github.com:tomstrummer/SleekXMPPThom Nichols
2010-06-01merged changes from fritzyThom Nichols
2010-06-01fixed some major reconnection errorsThom Nichols
2010-06-01merged a lot of fritzy's changesThom Nichols
2010-06-01included jobs pluginNathan Fritz
2010-06-01Scheduler waits too longer, and pubsubstate registration was backwardsNathan Fritz
2010-06-01Added missing 'internal-server-error' condition to error stanza interface.Lance stout
2010-06-01Touched up the style of creating an Iq stanza.Lance stout
2010-06-01Added 'resource-constraint' to the list of error conditions.Lance stout
2010-06-01Updated the XEP-0030 plugin to work with stanza objects instead of ↵Lance Stout
manipulating XML directly. Four new events have been added: disco_info - A disco#info result has been received disco_info_request - A disco#info request has been received disco_items - A disco#items result has been received disco_items_request - A disco#items request has been received For disco_info_request and disco_items_request two default handlers are registered. These handlers will only run if they are the only handler for these two events so that multiple responses are not returned and cause errors. In your own handlers for these two events, you can call the default handlers to preserve the static node behaviour as so: self.plugin['xep_0030'].handle_disco_info(iq, True) The forwarded=True will disable the check for other registered handlers. Agents can now dynamically respond to disco requests by using these events. (cherry picked from commit 0fc3381492a8bd75e6a9858539a972334881d8ff)
2010-06-01control-c fixesNathan Fritz
2010-06-01added pubsub state stanzas and scheduled eventsNathan Fritz
2010-06-01adding schedulerNathan Fritz
2010-06-01plugins now are checked for post_init having ran when process() is calledNathan Fritz
2010-06-01Fixed error registering a plugin. To add a feature to another plugin, it ↵Hernan E Grecco
should look into xmpp.plugin dict
2010-06-01updated README, index fix for componentNathan Fritz
2010-06-01Added a flag to registerPlugin to control calling the plugin's post_init method.Lance Stout
2010-06-01Modified the return values for several methods so that they can be chained.Lance Stout
For example: iq.reply().error().setPayload(something.xml).send()
2010-06-01Added the error attribute 'code' to the Error object interface.Lance Stout
2010-06-01added plugin indexing to componentsNathan Fritz
2010-06-01Added del_event_handler to remove handler functions for a given event.Lance Stout
All registered handlers for the event which use the given function will be removed. Using this method allows agents to reconfigure their behaviour on the fly without needing to add extra state information to event handling functions.