Commit graph

2551 commits

Author SHA1 Message Date
mathieui
1e1576473b tests: add basic reconnect/connect integration tests 2021-01-29 16:48:30 +01:00
Link Mauve
dbcd0c6050 Merge branch 'reconnect-logic-doomed' into 'master'
fix reconnect logic

See merge request poezio/slixmpp!104
2021-01-29 16:11:29 +01:00
mathieui
f93af07882 XEP-0198: do not send acks when disconnected 2021-01-29 16:07:44 +01:00
mathieui
3f739e513b xmlstream: keep value of "end_session_on_disconnect"
That value should be set statically. Worst case is we fail to resume the
session.
2021-01-29 15:33:44 +01:00
mathieui
fc7d7b4eb7 XEP-0198: Enable SM even if we failed resuming the session
And trigger session_end only after we fail the resuming.
2021-01-29 15:33:44 +01:00
mathieui
3642e2c7f4 xmlstream: ensure slow futures are scheduled on this loop 2021-01-29 15:33:44 +01:00
mathieui
f15311bda8 xmlstream: Make the reconnect handler a coroutine 2021-01-29 15:33:44 +01:00
mathieui
b2dfb4c1f3 xmlstream: do not touch connection state on abort()
leave it to the connection_lost handler
2021-01-29 15:33:44 +01:00
mathieui
d227579d56 xmlstream: set disconnected future on event 2021-01-29 15:33:44 +01:00
mathieui
571774edb4 xmlstream: end the parser when the stream has ended 2021-01-29 15:33:44 +01:00
mathieui
456dff0b61 xmlstream: rename run_filters 2021-01-29 15:33:44 +01:00
mathieui
a0b6bfcefe xmlstream: change the connection logic
* use asyncio wait_for to wait for a disconnected event
* abort the connection if the timeout is not enough
2021-01-29 15:33:44 +01:00
mathieui
9fbd40578c xmlstream: purge send queue and pending tasks on session end
and keep track of slow tasks
2021-01-29 15:33:44 +01:00
mathieui
8700f8d162 xmlstream: do not cancel the send filter task
it does not make sense to cancel it, it does not do anything when the
sending queue is empty, and clients should not fill the send queue when
not connected anyway.
2021-01-28 17:54:40 +01:00
mathieui
efdcd396d8 xmlstream: fix race conditions on handlers 2021-01-28 17:54:40 +01:00
mathieui
0eed84d0b2 xmlstream: handle done tasks in wait_until
and handle other loops properly
2021-01-28 17:54:40 +01:00
mathieui
370abb1d98 Merge branch 'block-threaded-examples-docs' into 'master'
Remove the remaining block and threaded from examples

See merge request poezio/slixmpp!105
2021-01-27 00:20:31 +01:00
mathieui
51866f0d46 docs: update the tutorials a bit 2021-01-27 00:16:56 +01:00
mathieui
9390794401 examples: updates to reflect asyncio 2021-01-27 00:09:26 +01:00
mathieui
70b5081018 Merge branch 'xep-0382-spoiler-messages' into 'master'
XEP-0382: Spoiler Messages

See merge request poezio/slixmpp!100
2021-01-27 00:07:36 +01:00
mathieui
4cb679ae2a Merge branch 'fix-emoji-update' into 'master'
XEP-0444: Fix emoji detection

See merge request poezio/slixmpp!103
2021-01-24 11:33:57 +01:00
mathieui
ab280b44cc XEP-0444: Fix emoji detection
the emoji lib just released a major release after 5 years, which breaks
the API. This new code is compatible with both.
2021-01-24 11:31:17 +01:00
mathieui
0193667ace Merge branch 'ping-cancel-iqs-on-session-end' into 'master'
Cancel  0199 pings on session end

See merge request poezio/slixmpp!102
2021-01-24 11:30:51 +01:00
mathieui
9cb5131f1c XEP-0199: Fix handler default parameter, add typing
Clear futures when disabling the keepalive, and do it on every
disconnect instead of only at session end.
2021-01-24 11:20:43 +01:00
mathieui
0bf1b96859 Merge branch 'handle-connection-errors-in-starttls' into 'master'
Handle connection errors in start_tls (fix #3449)

Closes #3449

See merge request poezio/slixmpp!101
2021-01-24 10:30:45 +01:00
mathieui
c6a0da63ae XEP-0199: cancel ongoing handlers on session end
and keep track of them but be careful to not store too many

fix for #3442
2021-01-22 22:57:15 +01:00
mathieui
3f10dfe138 iq: only update the future if it is not done 2021-01-22 22:55:39 +01:00
mathieui
49577e6c84 Handle connection errors in start_tls (fix #3449) 2021-01-22 22:04:41 +01:00
mathieui
04dcc8628d XEP-0382: update DOAP file 2021-01-22 19:24:11 +01:00
mathieui
81ebf4e8ba XEP-0382: Spoiler Messages 2021-01-22 18:40:37 +01:00
mathieui
b784b68bcd Merge branch 'disconnect-event-after-cleanup' into 'master'
XMLStream: Only fire "disconnected" after removal of related objects

See merge request poezio/slixmpp!99
2021-01-19 21:12:52 +01:00
mathieui
f38c61a6b9 XMLStream: Only fire "disconnected" after removal of related objects
Otherwise we could end up reconnecting and getting some useful things
like the XML parser or other stuff removed afterwards.

Also, move 'session_end' before 'disconnected', it makes more sense that
way.
2021-01-17 18:30:57 +01:00
Link Mauve
2631b25e3e Merge branch 'ad-mucjoin-component-event' into 'master'
XEP-0045: Add a groupchat_join MUC event for components

See merge request poezio/slixmpp!98
2021-01-12 20:36:36 +01:00
mathieui
2b11d81b86 XEP-0045: Add a groupchat_join MUC event for components 2021-01-12 20:29:27 +01:00
Link Mauve
ca465032e7 Merge branch 'xep-0045-fixes-misc' into 'master'
Misc fixes for XEP-0045

See merge request poezio/slixmpp!97
2021-01-10 15:12:20 +01:00
mathieui
6369ee0e5f XEP-0045: Better component handling 2021-01-10 15:07:48 +01:00
mathieui
1e23167ce4 XEP-0045: Better "groupchat_presence" targeting
(do not make EVERY SINGLE presence go through the 0045 handler)
2021-01-10 15:07:48 +01:00
mathieui
cccc1253aa XEP-0045: add more elements (<actor/>) 2021-01-10 15:07:48 +01:00
mathieui
fb31e9c1fd Merge branch 'test-skip-dependency' into 'master'
CI: Skip test if the emoji dep is not here

See merge request poezio/slixmpp!96
2021-01-10 11:27:48 +01:00
mathieui
b4dd1e0132 CI: Skip test if the emoji dep is not here 2021-01-10 11:12:00 +01:00
Link Mauve
525855c17b Fix homepage in DOAP. Thanks mathieui! 2021-01-01 14:35:55 +01:00
mathieui
ce0d615786 Merge branch 'muc-mypy-fixes' into 'master'
XEP-0045: Fix issues found by mypy

See merge request poezio/slixmpp!95
2020-12-27 19:44:31 +01:00
Emmanuel Gil Peyrot
1e08c90018 XEP-0045: Add a set_subject() helper 2020-12-27 02:59:43 +01:00
Emmanuel Gil Peyrot
c05cafc963 XEP-0045: Add missing reason for affiliation and role changes
This is especially useful for ban/kick reasons.
2020-12-27 02:59:09 +01:00
Emmanuel Gil Peyrot
166b265de0 XEP-0045: Fix issues found by mypy 2020-12-27 01:14:17 +01:00
mathieui
d91eea3a3a Merge branch 'fix-moderation-stanzaid' into 'master'
XEP-0425: Use stanzaid in integration test

See merge request poezio/slixmpp!93
2020-12-14 19:04:50 +01:00
mathieui
569b9c5ee2 XEP-0425: Use stanzaid in integration test
It only worked due to a prosody quirk
2020-12-14 18:59:51 +01:00
a3ca4c11c3 Merge branch 'retract-in-groupchats' into 'master'
XEP-0424: fire event even with groupchat messages

See merge request poezio/slixmpp!92
2020-12-13 23:39:12 +01:00
mathieui
489e419e38 XEP-0424: fire event even with groupchat messages 2020-12-13 22:48:17 +01:00
Link Mauve
0b2594aa2c Merge branch 'doap-predict-next-version' into 'master'
doap: add next release link

See merge request poezio/slixmpp!91
2020-12-12 16:59:36 +01:00