summaryrefslogtreecommitdiff
path: root/sleekxmpp
AgeCommit message (Collapse)Author
2011-02-14Merge branch 'develop' into stream_featuresLance Stout
Conflicts: sleekxmpp/xmlstream/stanzabase.py
2011-02-14Use the _build_stanza method.Lance Stout
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-14More attempts at fixing garbage collection.Lance Stout
Don't keep a reference to stanzas in Callback objects.
2011-02-14Break references that can prevent garbage collection.Lance Stout
2011-02-13Simplification when removing a deletable handler.Lance Stout
2011-02-13Return the name of the registered callback.Lance Stout
Instead of the actual callback object, return just the name of the callback object created when using iq.send(callback=..). This will help prevent memory leaks by not keeping an additional reference to the object, but still allows for the callback to be canceled by using self.remove_handler("handler_name").
2011-02-13Make one-off Callbacks ready for deletion after the prerun step.Lance Stout
Waiting until the actual run step means that the handler is not marked for deletion when checked in the __spawn_event() thread, causing the callback to stay in the handler list.
2011-02-12Return the registered callback when using iq.send(callback=foo).Lance Stout
Allows for a callback to be canceled by unregistering the returned handler.
2011-02-11XMPPError exceptions can keep a stanza's contents.Lance Stout
This allows exceptions to include the original content of a stanza in the error response by including the parameter clear=False when raising the exception.
2011-02-11Updated XEP-0199 plugin.Lance Stout
Now has docs and uses the new plugin format.
2011-02-10added option to return false on ping error, added ping exampleNathan Fritz
2011-02-09Fix same error for get_info default behaviour.Lance Stout
2011-02-09Fix get_items default behaviour.Lance Stout
2011-02-09Replace the print statement by a log.debug callFlorent Le Coz
This print syntax is deprecated in python3, so the plugin was working only with python2
2011-02-09Fix the xep_0009 import (no more relatives)Florent Le Coz
Also, remove trailing spaces in all files of this plugin
2011-02-07This fixes the configuration stuff, because type is form not submit with ↵Stefan de Konink
setNodeConfiguration.
2011-02-07Fixed failing tests from new XEP-0009 pluginLance Stout
2011-02-05fixed mergeNathan Fritz
2011-01-31Fixes for XEP-0202Lance Stout
2011-01-28First pass at re-worked stream features.Lance Stout
Stream features now use stanza objects! Features are given a ranking that expresses the dependency relationships (since only one feature is negotiated at a time, the dependency graph can be replaced by a line). >>> xmpp.register_feature('my_feature', _my_handler, >>> restart=True, # Requires stream restart >>> order=600) # Ranking (out of ~ 10,000, >>> # lower #'s executed first) SASL mechanisms may now be added or disabled as needed. Each mechanism is given a priority value indicating the order in which the client wishes for mechanisms to be tried. Higher priority numbers are executed first. >>> xmpp.register_sasl_mechanism('SASL-MECH', _mech_handler, >>> priority=0) Disabling a SASL mechanism: >>> xmpp.remove_sasl_mechanism('ANONYMOUS')
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-27Merge branch 'develop' of github.com:fritzy/SleekXMPP into developLance Stout
2011-01-27Make StreamError work properly.Lance Stout
Now uses the correct namespaces and condition names.
2011-01-27Make stanza.plugins an OrderedDict.Lance Stout
This allows you to determine the order in which substanzas were added in the original XML.
2011-01-27Recognize stanzas that don't use the default namespace.Lance Stout
2011-01-27xep_0045: fix the 'to' value when configuring roomFlorent Le Coz
2011-01-26Cleanup for stanzabase.Lance Stout
Use stanza.values instead of _get/set_stanza_values where used. ElementBase stanzas can now use .tag May use class method tag_name() for stanza classes. ElementBase now has .clear() method.
2011-01-26Upgraded how subitem works.Lance Stout
May now use register_stanza_plugin(Foo, Bar, iterable=True) to add to the set of stanza classes used for iterable substanzas. It is no longer necessary to manually specify the contents of subitem if the new method is used.
2011-01-23My hunch is that these should also be updated.Stefan de Konink
2011-01-19Make extending stanza objects nicer.Lance Stout
A stanza object may add is_extension = True to its class definition to provide a single new interface to a parent stanza. For example: import sleekxmpp from sleekxmpp import Iq from sleekxmpp.xmlstream import ElementBase, register_stanza_plugin, ET class Foo(ElementBase): """ Test adding just an attribute to a parent stanza. Adding subelements works as expected. """ is_extension = True interfaces = set(('foo',)) plugin_attrib = 'foo' def setup(self, xml): # Don't include an XML element in the parent stanza # since we're adding just an attribute. # If adding a regular subelement, no need to do this. self.xml = ET.Element('') def set_foo(self, val): self.parent()._set_attr('foo', val) def get_foo(self): return self.parent()._get_attr('foo') def del_foo(self): self.parent()._del_attr('foo') register_stanza_plugin(Iq, Foo) i1 = Iq() i2 = Iq(xml=ET.fromstring("<iq xmlns='jabber:client' foo='bar' />")) >>> i1['foo'] = '3' >>> i1 '3' >>> i1 '<iq id="0" foo="3" />' >>> i2 '<iq id="0" foo="bar" />' >>> i2['foo'] 'bar' >>> del i2['foo'] >>> i2 '<iq id="0" />'
2011-01-19Merge branch 'develop' of github.com:fritzy/SleekXMPP into developLance Stout
2011-01-19Fix thirdparty imports for Python3Lance Stout
2011-01-20Do not traceback when DNS resolution time out.Florent Le Coz
Just log that the resolution timed out, and fall back to the hostname from the JID in this case
2011-01-19Fix disco add_item.Lance Stout
If no JID is specified for the item, use xmpp.boundjid.full.
2011-01-19Fix namespace for Nick stanza.Lance Stout
2011-01-19Fix error in disco add_item.Lance Stout
None values were not being treated properly.
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-16Raise the event 'socket_error' when a socket error occurs.Lance Stout
Will be most useful for debugging and responding to failed connection attempts.
2011-01-15Make it easier to import OrderedDictLance Stout
2011-01-15Fix how disco plugin looks up info and items for clients.Lance Stout
2011-01-14Add a note for debug statement when running scheduled events.Lance Stout
Fixes the intermittent DEBUG ((),) messages that give no explanation. Will now show as: DEBUG Scheduled event: ((), )
2011-01-13Fix bug in JID class. Attribute .jid now works properly.Lance Stout
2011-01-13Merge branch 'develop' of github.com:fritzy/SleekXMPP into developLance Stout
2011-01-13Fixed typo.Dann Martens
2011-01-13Fixed 'nil' bug in unmarshalling.Dann Martens
2011-01-13Removed binding XML namespace experiments.Dann Martens
2011-01-13Introduced new XEP-0009 into develop.Dann Martens
2011-01-12Fix setup.py and old_0004.py typo bugs.Lance Stout
2011-01-12Fix ordering error in Iq._set_stanza_values.Lance Stout
If iq['query'] was set before a plugin that used the query element was set, then the query element was duplicated.