summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-12-14Log received data AFTER filtering.Lance Stout
This allows applications to filter out sensitive information, such as passwords, so that it won't appear in the logs. It does mean that the debug logs will not show the actual received data, and there will be no indication of tampering, unless the filter author explicitly logs and notes that a change was made.
2011-12-13Add tests for filters.Lance Stout
2011-12-13Merge branch 'develop' into develop-1.1Lance Stout
2011-12-13Use OrderedDicts instead of regular dictionaries when returning values from ↵Lance Stout
forms.
2011-12-13Ensure that item fields have the proper type.Lance Stout
The item fields were not setting their type based on the reported field's type attribute, so values were not being encoded properly. Fixes issue #121
2011-12-12Add parameter docs for add_filter.Lance Stout
2011-12-12Add support for incoming/outgoing filters.Lance Stout
A filter accepts and returns a stanza, but potentially modified. To prevent sending/receiving a stanza, a filter may return None. Incoming: self.add_filter('in', in_filter) Outgoing: self.add_filter('out', out_filter) Filters are applied in the order thay are added. However, you may add an order parameter, which is the place in the list to insert the filter: self.add_filter('in', in_filter, order=0)
2011-12-12Allow disco info/items handlers to return full Iq stanzas.Lance Stout
Only allowing handlers to return a DiscoInfo/DiscoItem stanza works for the majority of cases, but does not allow for the addition of an RSM stanza, or other extensions. An Iq stanza returned by a handler must already be configured as a reply.
2011-12-12Pass the Iq stanza to disco item handlers.Lance Stout
2011-12-11Fix iterable substanzas when added as normal plugin.Lance Stout
If an iterable plugin was an enabled, it wasn't added to the iterables list.
2011-12-09Use UTC for xep_0082.date.Lance Stout
2011-12-09Allow sending stanzas on session_end.Lance Stout
May set self.disconnect_wait=True so that all disconnect calls wait for the send queue to empty, unless explicitly overridden with wait=False. The session_end now fires before closing the socket so that final stanzas may be sent, such as unavailable presences for components.
2011-12-09Fix logging when loading plugins.Lance Stout
2011-12-07Prevent hang when terminating during delayed connection.Lance Stout
2011-12-05Updated last bit of core files to use new API format.Lance Stout
2011-12-05Fix example boilerplate code syntax.Lance Stout
2011-12-05More doc updatesLance Stout
2011-12-04Update the API docs for XMLStreamLance Stout
2011-12-04Add API docs for the schedulerLance Stout
2011-12-04Update api docs for handlers and matchersLance Stout
2011-12-04Update supported XEP listLance Stout
2011-12-04Update api docs for JIDLance Stout
2011-12-04Ensure that adhoc command clients have form plugin registered.Lance Stout
The form plugin was being registered on first use for providers, but not for clients receiving the form. NOTE: Use of non-form payloads will have this issue - adhoc command clients will need to have an expectation beforehand of what the command payload will be to properly load stanza plugins.
2011-11-28Ensure that saving a roster item includes the correct subscription value.Lance Stout
Fixes issue #118
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-22Some more docs house cleaningLance Stout
2011-11-22Update docs for tostringLance Stout
2011-11-21Moar docs!Lance Stout
2011-11-21Add more stanzabase docsLance Stout
2011-11-21Fix stream handler test for multiple handlers to exist properly.Lance Stout
2011-11-21Update stanzabase docsLance Stout
2011-11-20Update docs indexLance 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-19Add unit test for copying stanzas when passed to events.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-18Bump next release version to 1.0-RC4Lance Stout