621255027d
This is just a hotfix workaround for an underlying problem. The `_connect_routine` code is "blocking" (in an async way) for `connect_loop_wait` seconds, so that a fresh-started manual reconnect will be silenty delayed. This code does the following changes: 1. It moves the delay to before the DNS resolution (with the exponential back-off it might well be that the DNS records are changed while slixmpp is waiting). 2. It adds a new event `reconnect_delay` that gets passed the number of seconds it will delay before actually reconnecting 3. It resets the `connect_loop_wait` timer on a manual connect/reconnect call to fix the interactive experience. A *proper fix* would replace the sleep in `_connect_routine` with a properly timered re-invocation of it, but I don't understand enough of asyncio for pulling off that magic, and this is actually a proper improvement. Also I tested this and it works! |
||
---|---|---|
.. | ||
features | ||
plugins | ||
roster | ||
stanza | ||
test | ||
thirdparty | ||
util | ||
xmlstream | ||
__init__.py | ||
api.py | ||
basexmpp.py | ||
clientxmpp.py | ||
componentxmpp.py | ||
exceptions.py | ||
jid.py | ||
stringprep.py | ||
stringprep.pyx | ||
version.py |