Age | Commit message (Collapse) | Author |
|
|
|
|
|
|
|
|
|
This allowed us to schedule events in-order later in the event loop, but
was detrimental to using other event loops and debugging.
|
|
Previously, trying to get a text node with a lang which is different
from the one we specified would return nothing, which means e.g. a
message would be ignored because its body is of lang 'fr' when we setup
slixmpp to prefer 'en'. We want to return something when there is an
available, valid content in a different language.
|
|
Thanks tchiroux for raising the issue and providing the fix as well.
|
|
|
|
This gains about 1/8th of the time spent in __getitem__.
|
|
|
|
|
|
|
|
|
|
function
This makes it go down from 8.767s to 7.960s in a random benchmark.
Remove unnecessary assignations, don’t create an OrderedDict from a
dict to then convert it to a dict again, only obtain the get_method2
name if get_method wasn’t present.
get_method2 (the title-case one) takes about 1/8th of the total time
spent in this function, we should eliminate it as soon as possible.
|
|
|
|
|
|
|
|
Conflicts:
README.rst
examples/IoT_TestDevice.py
examples/disco_browser.py
setup.py
sleekxmpp/jid.py
sleekxmpp/plugins/google/auth/stanza.py
sleekxmpp/plugins/google/gmail/notifications.py
sleekxmpp/plugins/google/nosave/stanza.py
sleekxmpp/plugins/google/settings/settings.py
sleekxmpp/thirdparty/__init__.py
sleekxmpp/thirdparty/socks.py
sleekxmpp/thirdparty/statemachine.py
sleekxmpp/util/__init__.py
sleekxmpp/xmlstream/xmlstream.py
slixmpp/basexmpp.py
slixmpp/plugins/xep_0004/stanza/form.py
slixmpp/plugins/xep_0009/rpc.py
slixmpp/plugins/xep_0050/adhoc.py
slixmpp/plugins/xep_0065/proxy.py
slixmpp/plugins/xep_0084/stanza.py
slixmpp/plugins/xep_0202/time.py
slixmpp/plugins/xep_0323/sensordata.py
slixmpp/plugins/xep_0325/control.py
slixmpp/plugins/xep_0325/stanza/control.py
slixmpp/roster/single.py
slixmpp/stanza/atom.py
slixmpp/stanza/rootstanza.py
slixmpp/test/slixtest.py
slixmpp/util/sasl/mechanisms.py
slixmpp/version.py
slixmpp/xmlstream/stanzabase.py
tests/test_stanza_xep_0323.py
tests/test_stanza_xep_0325.py
tests/test_stream_xep_0323.py
tests/test_stream_xep_0325.py
|
|
|
|
|
|
|
|
This will work until the old ssl implementation is finally deprecated.
Hopefully, new features to painlessy implement starttls will be around
by then.
|
|
(and use install_requires instead of requires in the setup.py)
|
|
|
|
|
|
Punishing a server for being down by sending more traffic is not a nice
thing to do. Taking 100% of the CPU is not nice either.
|
|
|
|
are enabled.
Makes poezio about 11% faster when sending/receiving messages.
|
|
select whether we want to stop the event loop after a disconnection
|
|
|
|
Fixes SCRAM-SHA-1-PLUS.
|
|
remove coroutine_wrapper, add a future_wrapper (which is only needed
when the result stanza can be cached).
Update the documentation as well.
|
|
- update most of the examples with slixmpp
- change the help channels pointed out in the doc
- add a page listing differences from slixmpp and how to use asyncio
nicely with slixmpp
- fix some in-code rst documentation
|
|
(use loop.getaddrinfo instead of the blocking version)
|
|
|
|
(fixes the test suite too)
|
|
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.
|
|
|
|
And do not copy data when running events with XMLStream.event()
|
|
(if not, python will use the system default)
|
|
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.
|
|
|
|
|
|
|
|
|
|
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)
|
|
It was broken since the fork.
|
|
(and only update the ssl context before it gets used)
|
|
|
|
records left/available
|