summaryrefslogtreecommitdiff
path: root/slixmpp/xmlstream
AgeCommit message (Collapse)Author
2015-02-24Fix dns resolution without aiodnsmathieui
(use loop.getaddrinfo instead of the blocking version)
2015-02-24Remove the filesocket shim (2.6 compatibility)mathieui
2015-02-23Add back stanza-specific exception handlersmathieui
(fixes the test suite too)
2015-02-23Add a coroutine_wrapper decoratormathieui
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-22Use CallbackCoroutine with Iq callbacks toomathieui
2015-02-22Allow event handlers to be coroutine functionsmathieui
And do not copy data when running events with XMLStream.event()
2015-02-17Check that ciphers have been initializedmathieui
(if not, python will use the system default)
2015-02-12Fix 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-04XMLStream must provide the BaseProtocol interfaceFlorent Le Coz
2015-01-05Fix the call of iscoroutinefunction()Florent Le Coz
2015-01-03Do not copy the stanza before calling each handlerexp_idle_callFlorent Le Coz
2015-01-03Use a deque for the idle listFlorent Le Coz
2015-01-03Delay the handling of stanza for when the process is not busyFlorent 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-17Make the ca_certs option useful again (CA-based cert validation)mathieui
It was broken since the fork.
2014-12-11Bring back authentication through SASL EXTERNALmathieui
(and only update the ssl context before it gets used)
2014-11-14Lower the timeout for each DNS resolution attemptFlorent Le Coz
2014-11-12Let loop.create_connection do its getaddrinfo coroutine if there are no dns ↵mathieui
records left/available
2014-11-05Also work without SRV recordsFlorent Le Coz
2014-11-02Fix default value of dns_answers to None (instead of [])Florent Le Coz
2014-11-02Use aiodns instead of dnspython to query DNS recordsmathieui
2014-10-30Add the ssl_cert and ssl_invalid_chain backmathieui
- hack the stdlib to get the peercert, remove that hack when http://bugs.python.org/issue22768 gets fixed
2014-10-30Make the "ciphers" option work againmathieui
2014-10-30Remove the ssl_version option, as the defaults in python3.4 are sanemathieui
2014-10-11Something something get_stanza_valuesFlorent Le Coz
Fix something that was broken by Link Mauve
2014-09-28Remove all deprecated alias in the core of slixmpp, and wherever they were used.Emmanuel Gil Peyrot
2014-09-28Remove the now useless Queue wrapper in slixmpp.util.Emmanuel Gil Peyrot
2014-09-01Remove all trailing whitespaces.Emmanuel Gil Peyrot
2014-09-01Always use OrderedDict from collections, and remove its implementation in ↵Emmanuel Gil Peyrot
slixmpp.thirdparty.
2014-09-01Reintroduce XMLStream.process, making it run the asyncio event loop.Emmanuel Gil Peyrot
2014-09-01Add pygments support to debug output.Emmanuel Gil Peyrot
2014-09-01Remove sys.version_info checks for python2 and clean some imports.Emmanuel Gil Peyrot
2014-08-16Remove deprecated xmlstream/jid.pyFlorent Le Coz
2014-08-01Add the 'connecting' eventFlorent Le Coz
2014-07-30Fix the connection (and a few minor things) in xmlstreamFlorent Le Coz
2014-07-30Fix the iq.send() function, and a bunch of places where it is calledFlorent Le Coz
This is a big-and-dirty commit with a bunch of cleanup, maybe breaking a few things, and not fixing all iq.send() calls yet.
2014-07-23And thatFlorent Le Coz
2014-07-23Forgot to remove thatFlorent Le Coz
2014-07-23Cleanup how events are run, they are always direct by definition nowFlorent Le Coz
2014-07-22Use ".remove()" instead of "is in" followed by ".pop()"Emmanuel Gil Peyrot
2014-07-22An other cleanup of xmlstream.pyFlorent Le Coz
Remove some useless things (like handling signals, managing the threads, etc), add some comment to recently added/fixed methods…
2014-07-22Remove unused RestartStream exceptionFlorent Le Coz
2014-07-21Remove the now useless state machineFlorent Le Coz
2014-07-21Make connect(), abort() and reconnect() workFlorent Le Coz
All the auto_reconnect, connect_retry logic and that kind of stuf has been entirely removed.
2014-07-21Clean a new bunch of stufFlorent Le Coz
2014-07-21Remove the send_thread() function, and the stop threading.eventFlorent Le Coz
2014-07-20Make xmlstream use an asyncio loopFlorent Le Coz
Scheduled events, connection, TLS handshake (with STARTTLS), read and write on the socket are all done using only asyncio. A lot of threads, and thread-related (and thus useless) things still remain. This is only a first step.
2014-07-17Rename to slixmppFlorent Le Coz