mathieui
1b5fe57a5e
Fix XEP-0060 tests
2016-10-04 21:21:55 +02:00
mathieui
5da31db0c7
Fix stanza accessors case in tests
...
They were using deprecated (and-removed) style.
2016-10-04 21:15:01 +02:00
mathieui
f8cea760b6
Fix the gmail_notify plugin
2016-10-04 21:10:10 +02:00
mathieui
5ef01ecdd1
Fix XEP-0033
...
Re-add relevant stanza methods, broken in 7cd1cf32ae
2016-10-04 19:47:11 +02:00
mathieui
62aafe0ee7
Attrib property has been removed
2016-10-04 19:43:45 +02:00
mathieui
cf3f36ac52
Set unset part of a JID to empty string instead of None
...
it breaks assumptions on the type of the value
2016-10-04 19:42:05 +02:00
mathieui
b88d2ecd77
Add more checks in the XEP-0060 stanza building
...
Try to not append slixmpp stanzas to ElementTree objects.
2016-10-04 19:31:49 +02:00
mathieui
e691850a2b
Fix XEP-0128
...
Broken since 125336aeee
due to unforeseen consequences of a variable
removal.
2016-10-04 19:26:03 +02:00
mathieui
d4bff8dee6
Fix XEP-0009
...
Broken since 3a9b45e4f
because of an overzealous cleanup.
2016-10-04 19:23:21 +02:00
mathieui
187c350805
Update for slixmpp 1.2
2016-10-02 17:36:14 +02:00
mathieui
96d1c26f90
Add a fallback if the lang we want is not available
...
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.
2016-10-02 17:12:47 +02:00
mathieui
46a90749f8
Fix uses of super() in the codebase
...
Fix #3165 , we don’t need to use the long form to get the superobject in
our supported python versions.
2016-09-30 21:25:36 +02:00
mathieui
0c63a4bbda
Fix #3226 (unicity of scheduled event names)
...
Thanks tchiroux for raising the issue and providing the fix as well.
2016-09-30 20:59:31 +02:00
mathieui
e4696e0471
Merge branch 'doc_fixes' of https://github.com/SamWhited/slixmpp
2016-09-30 20:53:36 +02:00
Sam Whited
8217dc5239
Minor documentation fixes
2016-09-30 13:49:04 -05:00
mathieui
2586abc0d3
Fix xep-0050 stanza
...
broken in 3a9b45e4f2
2016-09-20 20:51:21 +02:00
Emmanuel Gil Peyrot
28f84ab3d9
ElementBase: Remove support for TitleCase methods.
...
This gains about 1/8th of the time spent in __getitem__.
2016-09-21 01:31:53 +09:00
Emmanuel Gil Peyrot
813b45aded
XEP-0045: Remove support for old-style {get,set,del}TitleCase methods.
2016-09-21 01:28:24 +09:00
Emmanuel Gil Peyrot
3a9b45e4f2
ElementBase: Remove deprecated find() and findall() methods.
2016-09-20 16:45:29 +09:00
Emmanuel Gil Peyrot
b8e091233e
XEP-0004: Remove deprecated getXML() and fromXML() methods.
2016-09-20 16:34:48 +09:00
Emmanuel Gil Peyrot
0edeefd977
BaseXMPP: Stop automatically enabling UserNick, and remove deprecated alias module.
2016-09-20 16:23:02 +09:00
Emmanuel Gil Peyrot
6ba53cf1ff
ElementBase: Remove attrib interface.
2016-09-20 16:23:02 +09:00
Emmanuel Gil Peyrot
d7758eb7f4
ElementBase: Remove subitem interface.
2016-09-20 16:23:02 +09:00
Emmanuel Gil Peyrot
125336aeee
Remove locking from static disco.
2016-09-20 16:23:02 +09:00
Emmanuel Gil Peyrot
7cd1cf32ae
Various XEPs: Remove deprecated aliases.
2016-09-20 16:23:02 +09:00
Emmanuel Gil Peyrot
d099e353a4
Implement XEP-0333: Chat Markers.
2016-08-26 22:42:24 +01:00
Emmanuel Gil Peyrot
1e4a301c6e
Replace _format_jid with a JID method updating both bare and full at the same time.
2016-08-26 22:25:58 +01:00
mathieui
f53b12d227
Fix the MUC address in contributing.rst
2016-08-23 23:10:17 +02:00
Dan Sully
e2562dcccf
Make session_bind_event awaitable
2016-08-23 23:05:22 +02:00
louiz’
7b69ae3738
Add a contributing file
2016-08-24 00:33:07 +02:00
Emmanuel Gil Peyrot
ab6df235d7
Pre-compute JID bare and full forms, and store that in each JID.
...
This wins about 4s over a 54s real-world benchmark.
2016-08-22 23:43:16 +01:00
mathieui
52cd8f4b22
Don’t trigger presence events on MUC presence
...
Specifically, previously, each MUC would be added as a roster item, and
then each join presence would be counted as a resource of that item,
triggering 1 to 5 events and more backend logic in slixmpp.
As a result, joining big rooms is tremendously slow, (JID() calls,
event() calls, __getitem__ calls for nothing), and takes RAM (a quick
tracemalloc tells me around 1 MiB for 3500 participants, i.e. 2 big IRC
rooms). Those resources may not necessarily be cleaned properly, leading
to memory leaks on long-term usage.
This is a micro-optimization that adds an attribute to roster items so
that MUC room events can be ignored safely while not affecting common
roster usage.
2016-08-22 01:29:07 +02:00
Emmanuel Gil Peyrot
e28318c271
Micro-optimise _format_jid.
2016-08-21 20:26:51 +01:00
mathieui
39ee833c29
Improve XEP-0070 and examples
2016-08-19 23:48:37 +02:00
Emmanuel Gil Peyrot
9019e2bc71
Initial work on XEP_0070, plugin and examples
2016-08-19 23:48:29 +02:00
louiz’
9208bf5bf1
Merge remote-tracking branch 'zejn/master'
2016-08-19 11:18:27 +02:00
Emmanuel Gil Peyrot
f0f1698e46
ElementBase: micro-optimise __getitem__, hands down the most often called 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.
2016-08-17 00:46:56 +01:00
Gasper Zejn
eccd7f1c98
Provide domain name to loop.create_connection if using SSL.
2016-08-12 15:32:42 +02:00
Emmanuel Gil Peyrot
2587d82af8
Make util.XOR about ten times faster by calling bytes only once.
2016-07-30 00:14:54 +01:00
mathieui
7ea121b115
Don’t swallow presence exceptions abritrarily
2016-06-28 20:58:47 +02:00
mathieui
bb81fbbdfc
Implement XEP-0256 (last activity in presence)
...
mostly useless, but allows to use LastActivity stanzas inside Presence
stanzas as well.
2016-06-05 02:04:52 +02:00
mathieui
1a00a08b7d
Make XEP-0186 return futures as well
...
Improving the api if the developer wants to wait on them.
2016-06-05 00:19:24 +02:00
mathieui
90ea2a3411
Implement XEP-0352 (client state indication)
2016-06-04 22:59:23 +02:00
mathieui
8fc6814b6d
Update XEP-0198 for asyncio
2016-06-04 20:51:59 +02:00
mathieui
ffced0ed9a
Add a xep-0334 plugin
2016-06-04 19:34:12 +02:00
mathieui
e7248d9af9
Fix the Waiter handler for asyncio
2016-05-28 20:53:41 +02:00
mathieui
6b1a04f59d
Fix xep-0199
...
The keepalive ping was not working, and and ping() was tracebacking due
to a wrong parameter.
2016-05-28 15:13:33 +02:00
mathieui
4905407092
Fix the ordering of stream features
...
since iq.send is non-blocking, some features handlers could end up
being executed before others were set, leading to issues. Adding yield
from where it’s necessary fixes that.
2016-05-28 14:46:39 +02:00
louiz’
bd6ec10939
Add some credits
2016-03-15 09:35:36 +01:00
Sam Whited
e15e6735f1
The XEP-0198 plugin exists now; fix the docs
2016-03-14 23:59:01 +01:00