summaryrefslogtreecommitdiff
path: root/sleekxmpp/basexmpp.py
AgeCommit message (Collapse)Author
2012-03-05Cleanup logging when loading a custom plugin.Lance Stout
2012-03-05Ensure that roster nodes aren't empty strings.Lance Stout
This would happen when receiving presence without a 'to' field, which happens when receiving presence from other resources for the same account.
2012-02-17More extraneous import cleanup.Lance Stout
2012-02-17More import cleanups based on pyflakes results.Lance Stout
2012-01-12Don't dump exception logs for XML stream parsing errors.Lance Stout
The exceptions are handled, so we don't need to clutter the output logs.
2011-12-09Fix logging when loading plugins.Lance Stout
2011-12-05More doc updatesLance Stout
2011-11-19Merge remote-tracking branch 'vijayp/master' into HEADLance Stout
Conflicts: examples/ping.py sleekxmpp/basexmpp.py sleekxmpp/clientxmpp.py sleekxmpp/features/feature_bind/bind.py sleekxmpp/features/feature_mechanisms/mechanisms.py sleekxmpp/plugins/gmail_notify.py sleekxmpp/plugins/jobs.py sleekxmpp/plugins/xep_0009/remote.py sleekxmpp/plugins/xep_0009/rpc.py sleekxmpp/plugins/xep_0012.py sleekxmpp/plugins/xep_0045.py sleekxmpp/plugins/xep_0050/adhoc.py sleekxmpp/plugins/xep_0078/legacyauth.py sleekxmpp/plugins/xep_0085/chat_states.py sleekxmpp/plugins/xep_0199/ping.py sleekxmpp/plugins/xep_0224/attention.py sleekxmpp/xmlstream/handler/waiter.py sleekxmpp/xmlstream/matcher/xmlmask.py sleekxmpp/xmlstream/xmlstream.py Conflicts: examples/ping.py sleekxmpp/basexmpp.py sleekxmpp/clientxmpp.py sleekxmpp/features/feature_bind/bind.py sleekxmpp/features/feature_mechanisms/mechanisms.py sleekxmpp/plugins/gmail_notify.py sleekxmpp/plugins/jobs.py sleekxmpp/plugins/xep_0009/remote.py sleekxmpp/plugins/xep_0009/rpc.py sleekxmpp/plugins/xep_0012.py sleekxmpp/plugins/xep_0045.py sleekxmpp/plugins/xep_0050/adhoc.py sleekxmpp/plugins/xep_0078/legacyauth.py sleekxmpp/plugins/xep_0085/chat_states.py sleekxmpp/plugins/xep_0199/ping.py sleekxmpp/plugins/xep_0224/attention.py sleekxmpp/xmlstream/handler/waiter.py sleekxmpp/xmlstream/matcher/xmlmask.py sleekxmpp/xmlstream/xmlstream.py
2011-11-19remove unnecessary copies when only one handler matches. This was taking up ↵Vijay Pandurangan
~ 15% of CPU on moderate load.
2011-11-19Tidy up logging calls.Lance Stout
2011-11-20This change stops sleekxmpp from spending huge amounts of time unnecessarily ↵Vijay Pandurangan
computing logging data that may never be used. This is a HUGE performance improvement; in some of my test runs, unnecessary string creation was accounting for > 60% of all CPU time. Note that using % in a string will _always_ perform the sting substitutions, because the strings are constructed before the function is called. So log.debug('%s' % expensiveoperation()) will take about the same CPU time whether or not the logging level is DEBUG or INFO. if you use , no substitutions are performed unless the string is actually logged
2011-11-19This change stops sleekxmpp from spending huge amounts of time unnecessarily ↵Vijay Pandurangan
computing logging data that may never be used. This is a HUGE performance improvement; in some of my test runs, unnecessary string creation was accounting for > 60% of all CPU time. Note that using % in a string will _always_ perform the sting substitutions, because the strings are constructed before the function is called. So log.debug('%s' % expensiveoperation()) will take about the same CPU time whether or not the logging level is DEBUG or INFO. if you use , no substitutions are performed unless the string is actually logged
2011-11-18Fix changed_status eventLance Stout
Once again only fires when a resource's presence show value changes.
2011-11-06Restore original behaviour for auto_authorize and auto_subscribe.Lance Stout
The change to using the new roster broke the original auto_* values and used per-roster versions. The original auto_* values will now set the behaviour globally. Use the per-roster values to override for a specific JID.
2011-08-19Make Iq exceptions more discoverable and simpler to use.Lance Stout
IqError and IqTimeout now extend XMPPError, so if you don't care about the difference, you can use: try: self.do_something_with_iqs() except XMPPError: # Error? Timeout? I don't care! pass If you do need to distinguish between timeouts and error replies, you can still continue to use: try: self.do_somethin_with_iqs() except IqError as err: pass except IqTimeout: pass If you don't catch any Iq errors and you're processing a stanza then an error response will be sent, just like normal if you raise XMPPError or any other exception, except that the error messages will be generic to prevent leaking too much information.
2011-08-18Remove extra, unhelpful presence debug log.Lance Stout
2011-08-12Merge branch 'develop' into rosterLance Stout
Conflicts: setup.py sleekxmpp/clientxmpp.py
2011-08-06Save the stream ID when the stream starts.Lance Stout
2011-08-06If no config for a plugin is given, try using self.plugin_config.Lance Stout
Sleek loads a few plugins by default, which made it difficult to configure or even disable them. Now, if a plugin is registered without any configuration, then sleek will try finding a configuration in self.plugin_config.
2011-08-04Cosmetic PEP8 fixes.Lance Stout
2011-08-04added block as process option and updated documentation. added typical use ↵Nathan Fritz
example to ClientXMPP.
2011-08-04Merge branch 'develop' into rosterLance Stout
Conflicts: setup.py
2011-07-01Continued reorganization and streamlining.Lance Stout
2011-06-30Reorganize features into plugins.Lance Stout
2011-06-16Integrate roster with BaseXMPP.Lance Stout
Last sent stanzas are saved regardless of if the roster is used directly or self.send_presence
2011-06-15Merge branch 'develop' into stream_featuresLance Stout
2011-06-15Fix another roster issue.Lance Stout
Caused by same issue of a JID being in the roster, but with an incomplete entry.
2011-06-14Merge branch 'develop' into rosterLance Stout
Conflicts: sleekxmpp/basexmpp.py
2011-06-14Merge branch 'develop' into stream_featuresLance Stout
2011-06-14Fix issue with components and roster.Lance Stout
If the roster contained a JID, but not any resource presence data, then an error would occur when accessing self.roster[jid]['presence'].
2011-04-14remove roster item state responsibility from clientsNathan Fritz
2011-02-14Merge branch 'develop' into stream_featuresLance Stout
Conflicts: sleekxmpp/xmlstream/stanzabase.py
2011-02-14Reset the roster on disconnect instead of replacing it.Lance Stout
2011-02-14Merge branch 'develop' into rosterLance Stout
Conflicts: sleekxmpp/clientxmpp.py
2011-02-14Remap old method names in a better way.Lance Stout
This should prevent some reference cycles that will cause garbage collection issues.
2011-02-02Merge branch 'develop' into rosterLance Stout
Conflicts: sleekxmpp/basexmpp.py
2011-01-27Update tostring methods.Lance Stout
Will now always show top-level namespace, unless it is the same as the stream's default namespace. Also added the XMPP stream namespace to the namespace map as 'stream'.
2011-01-16Add StreamError stanza and a stream_error event.Lance Stout
Note that the stream may automatically attempt to reconnect when a stream error is received.
2011-01-10Add self.client_roster to make things simpler for clients.Lance Stout
2011-01-05Merge branch 'develop' into rosterLance Stout
2010-12-29Keep things lined up.Lance Stout
2010-12-28Fixed typo in comment.Andrzej Bieniek
2010-12-28Fix some typos.Lance Stout
2010-12-16Merge branch 'develop' into rosterLance Stout
2010-12-16Added more options to the make_iq_* methods.Lance Stout
May include a to and from JID in make_iq_* calls. May pass an existing iq stanza to most of them instead of generating a new stanza. make_iq now accepts a 'to' value, 'type' value, and 'query' value to simplify things a bit more.
2010-12-13Merge branch 'develop' into rosterLance Stout
Conflicts: sleekxmpp/basexmpp.py
2010-11-18Adding stream tests for XEP-0030.Lance Stout
Fixed some errors when responding to disco requests.
2010-11-17Cleaned basexmpp.pyLance Stout
2010-11-17Cleaned up names.Lance Stout
2010-11-17First pass at integrating the new roster manager.Lance Stout