Maxime “pep” Buquet
412a9169bd
Fixes #3432 . Allow execute to be used with the meaning of 'next'.
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-14 02:34:22 +01:00
Maxime “pep” Buquet
72b355de8c
xep_0050: Fix indentation
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-14 02:19:58 +01:00
Maxime “pep” Buquet
af246dcfe1
slixmpp/jid: add types
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-07 23:14:44 +01:00
Maxime Buquet
9612e518fb
Merge branch 'master' into 'master'
...
Communicate the reason for a disconnect to the application
See merge request poezio/slixmpp!12
2019-04-07 00:24:50 +02:00
Maxime “pep” Buquet
fde8264191
xep_0202: Fix plugin_init docstring
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-06 13:44:05 +01:00
Maxime “pep” Buquet
1cdc656208
Fixes poezio/poezio#3472 : Don't remove TZ in 0202 utc tag
...
<utc/> MUST conform to 0082 dateTime profile and thus include a
timezone definition.
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-06 13:42:26 +01:00
Maxime “pep” Buquet
0042108a67
poezio/poezio#3472 : Ensure tz is correctly set when offset is an int
...
Thanks lovetox!
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-04-03 23:16:37 +01:00
Georg Lukas
704161a285
mark end-of-stream as session-ending event
2019-03-26 15:16:52 +01:00
Georg Lukas
6b1b58a339
XEP-0199: use new 0-timeout reconnect() with reason
2019-03-26 12:09:43 +01:00
Georg Lukas
4f96e5fa75
Do not directly enqueue connect() as event handler, parameter mismatch
2019-03-26 12:09:43 +01:00
Georg Lukas
bcb90a653e
Do not close stream on 0-timeout disconnect, allows 0198 resume
2019-03-26 11:02:28 +01:00
Georg Lukas
7e435b703d
Propagate disconnect() reason into 'disconnected' event
2019-03-26 11:01:36 +01:00
Maxime “pep” Buquet
2dda6b80d4
Partially fix poezio/poezio#3452 . Prevent groupchat_subject
from triggered sent when body or thread are in the message.
...
0045 says:
> The subject is changed by sending a message of type "groupchat" to the
> <room@service>, where the <message/> MUST contain a <subject/> element that
> specifies the new subject but MUST NOT contain a <body/> element (or a
> <thread/> element). In accordance with the core definition of XMPP, other child
> elements are allowed (although the entity that receives them might ignore
> them).
>
> Note: A message with a <subject/> and a <body/> or a <subject/> and a <thread/>
> is a legitimate message, but it SHALL NOT be interpreted as a subject change.
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-03-23 17:06:07 +00:00
mathieui
5629e44710
Merge branch 'patch-1' into 'master'
...
Fix slixmpp.ClientXMPP.cancel_connection_attempt()
See merge request poezio/slixmpp!10
2019-03-15 00:38:35 +01:00
Maxime “pep” Buquet
6a06881d8b
xep_0030: fix typo on 'remote' in get_info docstring
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-03-05 00:00:14 +00:00
Maxime “pep” Buquet
88260cc240
xep_0380: Add add_eme method
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-02-23 12:54:56 +00:00
Maxime “pep” Buquet
e9f2f503b8
xep_0380: Remove remove_handler call in plugin_end
...
Remove probable copy paste fail in EME plugin_end handler.
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-02-23 12:36:40 +00:00
ehendrix23
696a72247b
Fix slixmpp.ClientXMPP.cancel_connection_attempt()
2019-02-22 00:41:02 +01:00
mathieui
b42fafabb4
Make the cache encode and decode not crash if something goes wrong
2019-02-02 17:42:24 +01:00
mathieui
93f385562f
Add a "remove" action on the cache API
2019-02-02 17:31:48 +01:00
mathieui
9cab02438b
Fix XEP-0335
2019-02-02 15:41:55 +01:00
Emmanuel Gil Peyrot
74ed50e626
Set @id by default on outgoing messages and presences.
...
Respects RFC6120 §8.1.3’s RECOMMENDED.
2019-01-31 16:46:51 +01:00
mathieui
9d378c611c
Release 1.4.2
2019-01-31 14:50:26 +01:00
Link Mauve
d85d8f4479
Merge branch 'xep-0335' into 'master'
...
Add xep_0335: JSON Containers
See merge request poezio/slixmpp!5
2019-01-22 19:28:38 +01:00
Emmanuel Gil Peyrot
fb75f7cda9
Stop requesting avatar without the intervention of the client.
2019-01-22 15:12:00 +01:00
Emmanuel Gil Peyrot
41419a2161
Fix authenticating on a non-TLS socket.
...
This was broken since c1562b76b2
.
2019-01-21 01:02:06 +01:00
Emmanuel Gil Peyrot
7cd73b594e
XEP-0223: Fix default access_model, it MUST be whitelist.
2019-01-17 12:08:51 +01:00
Emmanuel Gil Peyrot
15c6b775ff
Simplify the non-CDATA path of tostring.escape.
2019-01-09 15:03:05 +01:00
Emmanuel Gil Peyrot
4b482477e2
Split ns only once in fix_ns().
2019-01-09 14:57:39 +01:00
Emmanuel Gil Peyrot
f7e4caadfe
Split tag and attrib only once in tostring().
2019-01-09 14:55:27 +01:00
Emmanuel Gil Peyrot
5f25b0b6a0
Add a default timeout to iq.send().
...
This fixes a leak of MatchIDSender in handlers, making it more and more
expensive to match stanzas as more iqs have been sent.
2019-01-09 14:20:31 +01:00
mathieui
ecdc44a601
Merge branch 'master' into 'master'
...
Decode bytes in GSSAPI handling, as expected by the kerberos module API.
See merge request poezio/slixmpp!8
2018-12-27 16:55:47 +01:00
Emmanuel Gil Peyrot
33370e42f1
XEP-0363: Use a specific exception for HTTP errors
2018-11-20 07:44:09 +01:00
Florian Klien
4699861925
catch http upload errors on upload
2018-11-20 07:34:56 +01:00
Jelmer Vernooij
2d228bdb56
Decode bytes in GSSAPI handling, as expected by the kerberos module API.
2018-10-30 22:29:20 +00:00
mathieui
570e653ac2
Release slixmpp 1.4.1
2018-10-28 14:15:51 +01:00
Emmanuel Gil Peyrot
e241d4e3c7
XEP-0030: Don’t call the timeout_callback on each domain which doesn’t reply to disco#info.
2018-10-27 23:21:27 +02:00
Emmanuel Gil Peyrot
bd22a41a78
XEP-0363: Also check for disco#info’s feature instead of just the identity.
2018-10-27 23:14:39 +02:00
Emmanuel Gil Peyrot
a29a29227a
XEP-0363: Add a domain argument to discover an upload service on a specific domain.
2018-10-27 22:51:04 +02:00
Florian Klien
d4d542b741
fixing uncaught async exceptions due to missing await
...
fixes uncaught exceptions in the event loop.
passing timeout and timeout_callback through.
2018-10-27 22:51:04 +02:00
Florian Klien
d33366badd
fixing deprecation warnings for pytest
2018-10-15 14:59:23 +02:00
mathieui
809c500002
Add the loop parameters at places where it has been forgotten
2018-10-09 12:34:56 +02:00
Emmanuel Gil Peyrot
8c09d932c8
stanzabase: Remove python2 legacy.
2018-10-03 14:56:07 +02:00
Maxime “pep” Buquet
31f5e84671
Add xep_0335: JSON Containers
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2018-09-16 22:13:41 +01:00
Emmanuel Gil Peyrot
7c3b3827b4
jid: Make property aliases proper aliases.
2018-08-20 00:23:21 +01:00
Emmanuel Gil Peyrot
9f6fa65139
examples, tests: Replace all @asyncio.coroutines with proper async functions.
2018-08-19 17:47:26 +01:00
mathieui
35fa33e3c2
Release slixmpp 1.4.0
2018-08-12 21:11:21 +02:00
mathieui
490f15b8fc
Fix compatibility with python 3.5 and 3.6
...
which do not have loop.start_tls and require the old ssl implementation.
2018-08-08 23:35:33 +02:00
Emmanuel Gil Peyrot
62661ee04f
xep_0092: Return <service-unavailable/> instead. Fixes #3415 .
2018-08-08 16:52:40 +02:00
Emmanuel Gil Peyrot
37d1f2a6b0
xep_0092: Send a <forbidden/> error if we don’t want to send our version. (thanks lovetox!)
2018-08-08 16:49:16 +02:00
mathieui
20107ad516
features/starttls: handle the case where the socket is an sslobject
...
Thanks pep.
2018-08-07 23:30:41 +02:00
mathieui
7738a01311
Fix TLS with python 3.7
...
Use the "new" sslproto API instead of the deprecated TLS API.
Also remove the unused "socket" parameter in XMLStream.__init__.
2018-08-07 23:20:38 +02:00
mathieui
a9abed6151
xep-0054: XMPP clients should not reply to vcard "get" requests
2018-08-07 21:30:13 +02:00
Emmanuel Gil Peyrot
59d4420739
XEP-0323: Display the requested time in addition to the current time on error.
2018-07-29 10:37:28 +02:00
Emmanuel Gil Peyrot
a88f317bbf
XEP-0009: Fix invalid function name under Python 3.7.
2018-07-24 18:21:03 +02:00
Link Mauve
2fc2a88970
Merge branch 'factor_find_identities' into 'master'
...
Factor find identities
See merge request poezio/slixmpp!2
2018-07-22 12:49:37 +02:00
Emmanuel Gil Peyrot
c55e9279ac
Fix missing async def in function.
2018-07-02 14:33:21 +02:00
Emmanuel Gil Peyrot
3502480384
Switch from @asyncio.coroutine to async def everywhere.
2018-07-01 18:46:33 +02:00
Maxime “pep” Buquet
caae713dd6
xep_0030: rename find_identities; return all domain infos and let caller filter itself
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2018-07-01 01:36:26 +01:00
Maxime “pep” Buquet
df0198abfe
xep_0030: Add callback parameter to find_identities
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2018-07-01 01:32:00 +01:00
Maxime “pep” Buquet
c20f4bf5fa
xep_0030: Add cached parameter to find_identities, defaults to True
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2018-07-01 01:29:31 +01:00
Maxime “pep” Buquet
9740e93aeb
xep_0030: Pass kwargs down in find_identities
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2018-07-01 01:29:31 +01:00
Maxime “pep” Buquet
e7872aaa29
xep_0030: Use self directly as we're already in disco
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2018-07-01 01:29:31 +01:00
Maxime “pep” Buquet
037706552c
Factor out fetching of identities in xep_0363 to xep_0030
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2018-07-01 01:29:31 +01:00
Maxime “pep” Buquet
b881c6729b
xep_0363: Remove unused parameters to find_upload_services
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2018-07-01 01:29:31 +01:00
Emmanuel Gil Peyrot
66909aafb3
XEP-0153: Prevent a panic when the BINVAL is invalid.
2018-06-23 14:34:24 +02:00
Emmanuel Gil Peyrot
fe66c022ad
Revert "XEP-0060: Add support for node configuration."
...
This reverts commit dd7f67d10d
.
2018-05-13 21:12:46 +02:00
Emmanuel Gil Peyrot
dd7f67d10d
XEP-0060: Add support for node configuration.
2018-05-13 20:47:21 +02:00
Emmanuel Gil Peyrot
c1562b76b2
slixmpp is Python 3.4.4+, remove check for channel binding.
2018-03-31 02:22:53 +02:00
Emmanuel Gil Peyrot
32839f5252
util.cache: Let the user select the bare JID or not.
2018-03-31 00:44:53 +02:00
Emmanuel Gil Peyrot
80b7cf6ff8
util.cache: Support None for encode and decode.
2018-03-31 00:44:23 +02:00
Emmanuel Gil Peyrot
128cc2eeb4
XEP-0115: Use the new cache system.
2018-03-31 00:25:28 +02:00
Emmanuel Gil Peyrot
037912ee89
util.cache: New module handling both in-memory and on-file system caching.
2018-03-31 00:24:21 +02:00
Emmanuel Gil Peyrot
769bc6d3bf
session: Also fire the session_start event.
2018-03-14 19:39:01 +01:00
Emmanuel Gil Peyrot
084d6cb5d9
session: Don’t bind if it is optional.
...
See https://tools.ietf.org/html/draft-cridland-xmpp-session-01
2018-03-14 18:54:17 +01:00
Emmanuel Gil Peyrot
5184713356
Rearm an iq callback if it was addressed to ourself.
2018-03-14 17:37:55 +01:00
Emmanuel Gil Peyrot
2f1225bad3
Carry the node attribute to the disco#info result.
...
Fixes #3323 .
2018-03-14 16:25:21 +01:00
Emmanuel Gil Peyrot
841f5a5a5b
xep_0363: Only send the basename() of the filename to the server.
2018-03-11 19:40:15 +01:00
Emmanuel Gil Peyrot
0c6de5e972
xep_0363: Simplify Content-Type guessing.
2018-03-11 19:39:51 +01:00
Emmanuel Gil Peyrot
81dc61c55c
xep_0363: Fix max_file_size variable name.
2018-03-11 19:39:30 +01:00
Emmanuel Gil Peyrot
bd63b1ce70
Simplify usage of HTTP File Upload plugin.
...
This makes it usable only on Python 3.5, as documented.
2018-03-08 14:29:07 +01:00
Emmanuel Gil Peyrot
66500ef5fb
Add an HTTP File Upload plugin.
2018-03-08 03:38:59 +01:00
mathieui
979396bb1e
asyncio.async has been scheduled for removal for a long time now
...
move to asyncio.ensure_future
2018-02-11 19:25:38 +01:00
mathieui
e177726387
Fix usage of the 0004 plugin interface
...
form['fields'] is an ordered list of fields while most plugins expect a
dict there. Fixes, among other things, a caps bug.
2018-02-11 16:42:59 +01:00
Emmanuel Gil Peyrot
20e88fda50
Fix typos, thanks codespell
!
2018-01-10 02:18:07 +01:00
Emmanuel Gil Peyrot
f252be9b6d
XEP-0115: Fix typo.
2018-01-05 18:03:42 +01:00
Emmanuel Gil Peyrot
c6443af29a
stringprep: Make pure-Python punycode() return bytes.
...
Fixes #3366 .
2017-12-27 15:48:42 +01:00
mathieui
d73f56a7af
Release slixmpp 1.3.0
2017-11-28 20:16:08 +01:00
Emmanuel Gil Peyrot
7c7f4308c5
Add a Markup plugin.
2017-11-23 12:18:01 +00:00
mathieui
eab8c265f4
Record the current connection attempt in a future and allow cancellation
...
It does not make sense to have competing connection attempts, as the
XMLStream class is not designed for this. On slow and unpredictable
networks, it means we could have two c2s connections opened, leading to
mayhem.
2017-11-23 00:00:37 +01:00
Emmanuel Gil Peyrot
e3fd0af9c8
xep_0054: Fix parsing BINVAL element.
2017-10-08 15:42:48 +01:00
mathieui
27e23672c1
Update the MAM plugin for asyncio & new namespace
...
And add an example
2017-09-24 17:43:06 +02:00
mathieui
b38e229359
Update RSM for asyncio
...
- Use an async iterator
- Add a "recv_interface" parameter in order to differenciate the stanza
we send from the stanza we receive (required for MAM)
- Add a pre_cb to run before sending the query stanza
- Add a post_cb to run after receiving the result stanza
2017-07-21 15:01:13 +02:00
Emmanuel Gil Peyrot
9a563f1425
XEP-0030: Optimise add_node usage a bit.
2017-07-17 22:46:48 +01:00
Emmanuel Gil Peyrot
8b6f5953a7
XEP-0319: Use the correct timezone.
...
This fixes a specification violation, XEP-0082 says that a date MUST
have a timezone, but we were sending the *local* time without any
timezone information.
2017-07-17 22:20:30 +01:00
Emmanuel Gil Peyrot
2d2a80c73d
xmlstream: Remove pygments dumping.
...
It’s slow and makes the debug logs difficult to parse.
2017-07-17 21:17:02 +01:00
Mathias Ertl
4dfdd5d8e3
always define ssl_context
2017-05-24 13:18:22 +02:00
Mathias Ertl
1994ed3025
pass SSL context to TLS connections
2017-05-24 11:31:13 +02:00
Mathias Ertl
aaa45846d3
add function to explicitly get the ssl context
2017-05-24 11:31:13 +02:00
louiz’
d7ffcb54eb
Merge remote-tracking branch 'samwhited/sslsocket_workaround'
2017-05-16 17:24:46 +02:00