Age | Commit message (Collapse) | Author | |
---|---|---|---|
2015-02-24 | XEP-0115: fix a handler which expected an iq to block | mathieui | |
2015-02-24 | XEP-0153: wrap functions with coroutine_wrapper | mathieui | |
2015-02-24 | XEP-0054: wrap functions with coroutine_wrapper | mathieui | |
2015-02-24 | XEP-0084: wrap functions with coroutine_wrapper | mathieui | |
2015-02-24 | XEP-0163: wrap publish() with coroutine_wrapper | mathieui | |
2015-02-24 | XEP-0060: wrap all iq-sending functions with coroutine_wrapper | mathieui | |
2015-02-24 | XEP-0030: allow get_info and get_items to return a coroutine | mathieui | |
2015-02-24 | Fix dns resolution without aiodns | mathieui | |
(use loop.getaddrinfo instead of the blocking version) | |||
2015-02-24 | Remove the filesocket shim (2.6 compatibility) | mathieui | |
2015-02-23 | Add back stanza-specific exception handlers | mathieui | |
(fixes the test suite too) | |||
2015-02-23 | Import xmlstream.asyncio and coroutine_wrapper at the top level | mathieui | |
Since they will be used quite a lot in plugins. | |||
2015-02-23 | Add a coroutine_wrapper decorator | mathieui | |
This decorator checks for the coroutine=True keyword arg and wraps the result of the function call in a coroutine if it isn’t. This allows to have constructs like: @coroutine_wrapper def toto(xmpp, *, coroutine=False): if xmpp.cached: return xmpp.cached else: return xmpp.make_iq_get().send(coroutine=coroutine) @asyncio.coroutine def main(xmpp): result = yield from toto(xmpp, coroutine=True) xmpp.cached = result result2 = yield from toto(xmpp, coroutine=True) If the wrapper wasn’t there, the second fetch would fail. This decorator does not do anything if the coroutine argument is False. | |||
2015-02-23 | Add a coroutine parameter to iq.send() to return a coroutine | mathieui | |
(instead of exposing a different send_coroutine method) | |||
2015-02-22 | Use CallbackCoroutine with Iq callbacks too | mathieui | |
2015-02-22 | Allow event handlers to be coroutine functions | mathieui | |
And do not copy data when running events with XMLStream.event() | |||
2015-02-21 | Add a “blocking” send_coroutine method to the Iq class | mathieui | |
2015-02-17 | Check that ciphers have been initialized | mathieui | |
(if not, python will use the system default) | |||
2015-02-12 | Update the test suite. | mathieui | |
- monkey-patch our own monkey-patched idle_call to run events immediatly rather than adding them to the event queue, and add a fake transport with a fake socket. - remove the test file related to xep_0059 as it relies on blocking behavior, and comment out one xep_0030 test uses xep_0059 - remove many instances of threading and sleep()s because they do nothing except waste time and introduce race conditions. - keep exactly two sleep() in IoT xeps because they rely on timeouts | |||
2015-02-12 | Remove more threaded= and block= options from the plugins | mathieui | |
(also, correct a typo) | |||
2015-02-12 | Do the plugins post_init() upload loading | mathieui | |
(the top_level boolean used to load them at this point wasn’t ever set to true) | |||
2015-02-12 | Fix the uses of stanza.reply() | mathieui | |
This is relying on the stanzas being copied for each handler. We no longer do that for performance reasons, so instead of editing the copy in-place, stanza.reply() now returns a new stanza. | |||
2015-02-12 | Fix the componentxmpp interface | mathieui | |
2015-02-04 | XMLStream must provide the BaseProtocol interface | Florent Le Coz | |
2015-02-04 | Don’t set the msg['from'] and msg['id'] in receipt.ack() | mathieui | |
setting msg['id'] is wrong, and setting msg['from'] might lead to echoing back wrong input. | |||
2015-01-15 | Expose MUC support in disco#info | mathieui | |
http://xmpp.org/extensions/xep-0045.html#disco-client | |||
2015-01-05 | Fix the call of iscoroutinefunction() | Florent Le Coz | |
2015-01-03 | Do not copy the stanza before calling each handlerexp_idle_call | Florent Le Coz | |
2015-01-03 | Use a deque for the idle list | Florent Le Coz | |
2015-01-03 | Delay the handling of stanza for when the process is not busy | Florent Le Coz | |
We use some dirty monkey-patching to add a idle_call() function to the asyncio module. We then use that method to handle each received stanza only when the event loop is not busy with some other IO (mainly, the standard input) | |||
2014-12-17 | Make the ca_certs option useful again (CA-based cert validation) | mathieui | |
It was broken since the fork. | |||
2014-12-11 | Bring back authentication through SASL EXTERNAL | mathieui | |
(and only update the ssl context before it gets used) | |||
2014-12-11 | Fix xep-0257 for slixmpp, and fix an element name | mathieui | |
2014-11-14 | Lower the timeout for each DNS resolution attempt | Florent Le Coz | |
2014-11-12 | Let loop.create_connection do its getaddrinfo coroutine if there are no dns ↵ | mathieui | |
records left/available | |||
2014-11-05 | Also work without SRV records | Florent Le Coz | |
2014-11-03 | Depend on aiodns and not dnspython in the setup.py | mathieui | |
2014-11-02 | Fix default value of dns_answers to None (instead of []) | Florent Le Coz | |
2014-11-02 | Use aiodns instead of dnspython to query DNS records | mathieui | |
2014-10-30 | Add the ssl_cert and ssl_invalid_chain back | mathieui | |
- hack the stdlib to get the peercert, remove that hack when http://bugs.python.org/issue22768 gets fixed | |||
2014-10-30 | Make the "ciphers" option work again | mathieui | |
2014-10-30 | Remove the ssl_version option, as the defaults in python3.4 are sane | mathieui | |
2014-10-11 | Something something get_stanza_values | Florent Le Coz | |
Fix something that was broken by Link Mauve | |||
2014-09-28 | Remove all deprecated alias in the core of slixmpp, and wherever they were used. | Emmanuel Gil Peyrot | |
2014-09-28 | Remove the now useless Queue wrapper in slixmpp.util. | Emmanuel Gil Peyrot | |
2014-09-28 | Don’t check for logging.NullHandler, it got added in Python 3.1. | Emmanuel Gil Peyrot | |
2014-09-28 | Don’t set the wait time to True instead of leaving its float default, in ↵ | Emmanuel Gil Peyrot | |
examples. | |||
2014-09-01 | Improve run_tests.py, allowing it to run only specific tests. | Emmanuel Gil Peyrot | |
2014-09-01 | Remove useless ez_setup.py file, we use setuptools in the normal setup.py ↵ | Emmanuel Gil Peyrot | |
instead. | |||
2014-09-01 | Clean setup.py, using modern 3.4 features. | Emmanuel Gil Peyrot | |
2014-09-01 | Remove support for gevent, incompatible with python3. | Emmanuel Gil Peyrot | |