summaryrefslogtreecommitdiff
path: root/sleekxmpp/xmlstream
AgeCommit message (Collapse)Author
2011-12-04Add API docs for the schedulerLance Stout
2011-12-04Update api docs for handlers and matchersLance Stout
2011-12-04Update api docs for JIDLance Stout
2011-11-25Send the encoded data (bytes) and not the str, on the socket.Florent Le Coz
2011-11-23Experimental support for handling SSL write errors.Lance Stout
2011-11-22Add docs for filesocketLance Stout
2011-11-22Update tostring docs, plus more doc cleanupLance Stout
2011-11-22Update docs for tostringLance Stout
2011-11-21Add more stanzabase docsLance Stout
2011-11-21Update stanzabase docsLance Stout
2011-11-20Ensure that reconnection happens properly after connection loss.Lance Stout
Calling reconnect() simultaneously from multiple threads (like when using XEP-0199 keepalive) could break because the connection state can transition and break the state expectations in one of the reconnect() calls.
2011-11-20Convert daemon threads back into normal threads.Lance Stout
This may need to be reverted if CTRL-C handling breaks, but everything works fine so far in testing. Resolves issue #95.
2011-11-19Tidy up logging some moreLance Stout
2011-11-19Fix logging exceptions from formatting issues.Lance Stout
2011-11-19Pass generic connection errors to XMLStream.exception()Lance Stout
2011-11-19Use a list comprehension instead of filter() to work with Python3.Lance 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-19double copyVijay Pandurangan
2011-11-19elide unnecessary copyVijay Pandurangan
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-14No need to continue processing loop if an error ocurred and ↵Lance Stout
auto_reconnect=False.
2011-11-14Explicitly test for inequality in JIDs.Lance Stout
Fixes issue #113
2011-11-08Don't just call self.disconnect in self.reconnect.Lance Stout
It messes up the auto_reconnect value and causes the XML processing loop to spin wildly with errors on a stream disconnect.
2011-11-07Continue trying to reconnect, even if the attempt fails.Lance Stout
The transition from disconnected to connected states must be done in a loop in case the transition fails, not just once and hope it worked.
2011-10-08Break reference cycle to fix potential memory leaks for callback handlers.Lance Stout
2011-09-23Fix del_event_handler for Python3 (different semantics for filter()).Lance Stout
Fixes issue #103
2011-09-22Fix regression for handling the case where the server terminates the stream.Lance Stout
The processing loop was continuing to call __read_xml after </stream> was received, which caused SyntaxErrors (can't find starting element). This should fix issue #102
2011-09-19SyntaxError requires a restartNathan Fritz
2011-09-01Add whitespace keepalive option.sleek-1.0-RC21.0-RC2Lance Stout
May be disabled by setting: self.whitespace_keepalive = False The keepalive interval can be adjusted using: self.whitespace_keepalive_interval = 300 The default interval is 5min.
2011-09-01Fix memory reference bugs.Lance Stout
2011-08-25Simplify the main process loop.Lance Stout
2011-08-25Make the timeout for event queue checks configurable.Lance Stout
Now defaults xmlstream.WAIT_TIMEOUT, and settable with self.wait_timeout. The new default timeout is 1sec instead of 5sec.
2011-08-25Added XMLStream.configure_dns.Lance Stout
This can be overridden to do custom configuration for the DNS resolver, or any other DNS related tasks such as calling the system's res_init().
2011-08-25Session timeout now defaults to 45sec, but can be adjusted.Lance Stout
e.g. self.session_timeout = 15 It is also managed by XMLStream instead of ClientXMPP now.
2011-08-25Handle sending stanzas in chunks if the socket has poor performance.Lance Stout
2011-08-25Shutdown socket before closing.Lance Stout
2011-08-25Update scheduler with locks and ability to remove tasks.Lance Stout
Scheduled tasks must have a unique name.
2011-08-25Add overridable method self.configure_socket().Lance Stout
Allows for setting app specific socket timeouts and other socket options.
2011-08-24Fix handling of DNS exceptions.Lance Stout
2011-08-18Route all unhandled exceptions through XMLStream.exception.Lance Stout
Or through an equivalent override.
2011-08-18PEP8 editsLance Stout
2011-08-18Up the timeout to 30sec instead of 10sec.Lance Stout
2011-08-18added inline documentation for new dns methodsNathan Fritz
2011-08-18Fix exceptions for Python3Lance Stout
2011-08-18DNS is now properly checked and different answers are tried for each ↵Nathan Fritz
reconnect until exhausted
2011-08-13I've seen people complain about Sleek taking so long to disconnect.Lance Stout
Added logging to say that we're waiting for the server to end the stream from its end.
2011-08-12Reduce the maximum delay between connection retries to 10min.Lance Stout