James Shiffer
610923138f
Bump version to 1.7.2
2025-02-10 15:03:37 -08:00
James Shiffer
c4cbb59a44
Fix for Python 3.10+
2025-02-10 14:55:30 -08:00
mathieui
24375f3c47
Release slix 1.7.1
2021-04-30 18:52:13 +02:00
mathieui
8b90cdd73f
xmlstream: fix slow tasks scheduling
...
- wrong attribute used
- some mistakes in the slow tasks function
2021-04-30 18:51:07 +02:00
mathieui
ee671dfb29
Merge branch 'next-version-1.7.0' into 'master'
...
Increment version to 1.7.0
See merge request poezio/slixmpp!107
2021-01-29 21:57:26 +01:00
mathieui
d954283fb6
version: update to 1.7.0
2021-01-29 21:50:43 +01:00
mathieui
ed2c03fade
DOAP: add an 1.7.0 entry
...
also remove some duplicate description tags
2021-01-29 21:50:22 +01:00
Link Mauve
a381267d21
Merge branch 'connect-basic-itests' into 'master'
...
tests: add basic reconnect/connect integration tests
See merge request poezio/slixmpp!106
2021-01-29 16:51:05 +01:00
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
Maxime Buquet
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
mathieui
1b3a00c894
doap: add next release link
2020-12-12 16:57:07 +01:00
Link Mauve
ef201b6ae9
Merge branch 'oopsdate-doap' into 'master'
...
doap: replace NEXT with 1.6.0
See merge request poezio/slixmpp!90
2020-12-12 16:55:03 +01:00
mathieui
69af0fc1dc
doap: replace NEXT with 1.6.0
2020-12-12 16:52:42 +01:00
mathieui
7ecdc7fced
Merge branch 'update-slix-version' into 'master'
...
Release: update version to 1.6.0
See merge request poezio/slixmpp!89
2020-12-12 16:44:34 +01:00
mathieui
39c624f958
Release: update version to 1.6.0
2020-12-12 16:43:29 +01:00
Link Mauve
4c9591d5c9
Merge branch 'create-extras-require' into 'master'
...
setup.py: Move emoji and aiohttp to extras_require
See merge request poezio/slixmpp!88
2020-12-12 16:33:15 +01:00
mathieui
31841ef3bf
setup.py: Move emoji and aiohttp to extras_require
2020-12-12 16:30:34 +01:00
Link Mauve
6773dc4409
Merge branch 'fix-moderation' into 'master'
...
XEP-0425: small fix & integration test
See merge request poezio/slixmpp!86
2020-12-12 14:51:25 +01:00
Link Mauve
71888b24a6
Merge branch 'retraction-event' into 'master'
...
XEP-0424: Add an event for message retraction
See merge request poezio/slixmpp!87
2020-12-12 14:45:49 +01:00
mathieui
3b00c56bdc
XEP-0424: Add an event for message retraction
...
+ update the integration test
2020-12-12 14:43:18 +01:00
mathieui
bf17c32705
XEP-0425: Add integration test
2020-12-12 14:34:43 +01:00
mathieui
bc58c5a045
XEP-0425: Fix plugin registration, and add element
2020-12-12 14:33:48 +01:00
Link Mauve
d6be776640
Merge branch 'move-plugin-index-away' into 'master'
...
docs: move the plugin index away from the main page
See merge request poezio/slixmpp!85
2020-12-10 21:15:17 +01:00
mathieui
878870255f
docs: move the plugin index away from the main page
...
it’s too big
2020-12-10 20:45:26 +01:00
Link Mauve
1e2d15b8f5
Merge branch 'docs-event-sphinx-plugins' into 'master'
...
Docs: add more events, add plugins to the doc
See merge request poezio/slixmpp!84
2020-12-10 19:45:30 +01:00
mathieui
155fc58a22
docs: add sphinx_autodoc_typehints dep
2020-12-10 19:22:40 +01:00
mathieui
95d40a3ca3
docs: update docstrings for sphinx conformity
...
Remove most references to timeout/callback/ifrom/timeout_callbacks args
2020-12-10 19:22:40 +01:00
mathieui
010bf6dd70
docs: fix rest issues
2020-12-10 19:22:40 +01:00
mathieui
9d61655215
docs: Add plugins
2020-12-10 19:22:40 +01:00
mathieui
f768a980d8
docs: update event index
2020-12-10 19:22:38 +01:00
mathieui
d371828041
Merge branch 'rai' into 'master'
...
XEP-0437: Room Activity Indicators
See merge request poezio/slixmpp!83
2020-12-08 18:59:04 +01:00
mathieui
b63dc3bc8c
XEP-047: Room Activity Indicators
...
Implement the XEP
2020-12-08 18:56:26 +01:00
Link Mauve
8258202681
Merge branch 'xep-0333-fixes' into 'master'
...
XEP-0333: Fix some issues
See merge request poezio/slixmpp!80
2020-12-07 21:25:18 +01:00
Link Mauve
c892fba778
Merge branch 'xep-0439-improved' into 'master'
...
XEP-0439: add events & tests
See merge request poezio/slixmpp!82
2020-12-07 21:21:43 +01:00
mathieui
758dfb930c
XEP-0439: add integration tests
2020-12-07 20:59:04 +01:00
mathieui
91c3d64ca2
XEP-0439: Add events
2020-12-07 20:58:16 +01:00
mathieui
340b0f0f16
Merge branch 'no-emoji-required' into 'master'
...
CI: do not require the emoji package
See merge request poezio/slixmpp!81
2020-12-07 20:32:27 +01:00
mathieui
a1ef32a122
CI: do not require the emoji package
2020-12-06 21:58:10 +01:00
mathieui
ef6dab81b9
itests: Add a chat markers test
2020-12-06 21:45:53 +01:00
mathieui
b3e2a8eb91
XEP-0333: Add missing feature, and a send_marker method
2020-12-06 21:45:22 +01:00
mathieui
11ac5867ff
XEP-0333: Rename plugin file from "hints" to "markers"
2020-12-06 21:29:11 +01:00
mathieui
a61f2248fd
Merge branch 'update-readme' into 'master'
...
README: document integration tests
See merge request poezio/slixmpp!79
2020-12-06 21:01:16 +01:00
mathieui
7a4ea4c1ae
README: document integration tests
2020-12-06 20:59:00 +01:00
Link Mauve
c0acb7e34f
Merge branch 'more-tests' into 'master'
...
Add more integration tests
See merge request poezio/slixmpp!78
2020-12-06 19:24:08 +01:00
mathieui
c89a21463f
XEP-0444: fix a mistake in plugin_end
2020-12-06 18:59:59 +01:00
mathieui
1836b2b887
itests: add another bunch of tests
2020-12-06 18:59:59 +01:00
mathieui
12e3c9988d
itests: fix muc test name
2020-12-06 18:59:59 +01:00
mathieui
b8f368acf3
Integration tests: parallelize client connects
2020-12-06 18:41:21 +01:00
mathieui
bcd8cf085f
Merge branch 'no-ordered-stuff' into 'master'
...
Remove usage of OrderedDict
See merge request poezio/slixmpp!77
2020-12-06 17:08:00 +01:00
Emmanuel Gil Peyrot
cd4c9f82fc
Remove OrderedDict usage
...
We now support only Python 3.7+, this means we can rely on dict being
ordered by order of insertion, and thus no need to use OrderedDict from
collections.
2020-12-06 17:00:47 +01:00
mathieui
73cc2a4008
Merge branch 'first-integration-tests' into 'master'
...
First integration tests
See merge request poezio/slixmpp!75
2020-12-05 17:37:50 +01:00
Link Mauve
aa5d422f38
Merge branch 'doap' into 'master'
...
DOAP di doap
See merge request poezio/slixmpp!76
2020-12-05 01:20:45 +01:00
Emmanuel Gil Peyrot
684247b375
XEP-0352: Only enable the feature on ClientXMPP
2020-12-05 01:05:16 +01:00
Emmanuel Gil Peyrot
6db5bb65d3
XEP-0300: Fix tests
2020-12-05 01:00:52 +01:00
Emmanuel Gil Peyrot
cc96e4a6e7
Plugins: Update the list to match what’s available
...
Piugins for deprecated and obsolete XEPs aren’t loaded by default
anymore.
2020-12-05 01:00:27 +01:00
Emmanuel Gil Peyrot
bb3c61f6e0
DOAP: Add all of the releases
2020-12-04 23:58:13 +01:00
Emmanuel Gil Peyrot
2c764b7c7d
DOAP: List the correct versions and support status
2020-12-04 23:58:09 +01:00
mathieui
77587a4843
CI: add integration tests to the gitlab pipeline
2020-12-04 23:08:00 +01:00
mathieui
2cb2fcefbf
Add some very basic integration tests
2020-12-04 23:06:50 +01:00
mathieui
d3dc09ce94
CI: add a script to run integration tests
...
(same as run_tests.py, but use adifferent directory)
2020-12-04 23:04:21 +01:00
mathieui
e6d1badb81
CI: Add helper for integration tests
2020-12-04 23:01:54 +01:00
mathieui
3d1e539d2b
XMLStream: Add a wait_until coroutine
...
It will set a disposable handler on an event and wait on it with a
specific timeout. Useful for integration tests without callback hell.
2020-12-04 22:59:34 +01:00
Link Mauve
05749c4969
Merge branch 'more-xeps' into 'master'
...
Add a batch of newer XEPs
See merge request poezio/slixmpp!69
2020-12-04 20:03:32 +01:00
mathieui
c2b09c5c83
Update doap.xml
2020-12-04 19:49:41 +01:00
mathieui
fdb0749cd1
XEP-0422,0424,0425,0439: Add basic stanza tests
2020-12-04 19:45:05 +01:00
mathieui
2c523d1a3b
XEP-0439: Quick Response
2020-12-04 19:42:23 +01:00
mathieui
41dea80d94
XEP-0425: Message Moderation
2020-12-04 19:42:23 +01:00
mathieui
c4ca15a040
XEP-0424: Message Retraction
2020-12-04 19:14:32 +01:00
mathieui
54d556280a
XEP-0428: Fallback Indication
2020-12-04 19:14:32 +01:00
mathieui
c63e9a32b9
XEP-0359: Unique and Stable Stanza IDs
...
(was partially supported in places before)
2020-12-04 19:14:30 +01:00
mathieui
58c3579f74
XEP-0422: Message Fastening
2020-12-04 19:13:55 +01:00
Link Mauve
e592a46c99
Merge branch 'add-363' into 'master'
...
XEP-0363: Add 0363 to the extension list
See merge request poezio/slixmpp!74
2020-12-04 19:12:34 +01:00
mathieui
fa6fe5e851
CI: install aiohttp as well
2020-12-04 19:10:46 +01:00
mathieui
6c52843d71
XEP-0363: Add 0363 to the extension list
2020-12-04 18:55:55 +01:00
Link Mauve
d660e447ee
Merge branch 'fix-reactions' into 'master'
...
XEP-0444: Fix session_bind()
See merge request poezio/slixmpp!73
2020-12-04 18:36:25 +01:00
mathieui
70cf35e9bf
XEP-0444: Fix session_bind()
...
wrong method called: remove_feature instead of del_feature
2020-12-04 18:34:27 +01:00
mathieui
5c5780503a
Merge branch 'xep-0353' into 'master'
...
XEP-0353: Jingle Message Initiation
See merge request poezio/slixmpp!72
2020-12-04 13:14:24 +01:00
Emmanuel Gil Peyrot
203628d707
XEP-0353: Jingle Message Initiation
2020-12-04 12:38:59 +01:00
Link Mauve
922ad8d9ea
Merge branch 'muc-more' into 'master'
...
MUC: Fix invite/decline issue and add basic stanza tests
See merge request poezio/slixmpp!71
2020-12-04 00:30:13 +01:00
mathieui
8eb756d55c
XEP-0045: Add basic stanza tests
2020-12-04 00:27:26 +01:00
mathieui
4da1c8573e
XEP-0045: Register the missing invite/decline element
2020-12-04 00:22:22 +01:00
mathieui
380f0e4e38
Tests: Remove tabnanny
...
it is not actively useful and takes 70% of the time of the tests
2020-12-04 00:20:51 +01:00
mathieui
56f44dc47d
Merge branch 'muc-improvements' into 'master'
...
MUC improvements
See merge request poezio/slixmpp!70
2020-12-03 23:50:14 +01:00
mathieui
fa7e33110f
XEP-0045: Misc small fixes.
2020-12-03 23:28:27 +01:00
mathieui
7033bc0061
XEP-0045: Better invitation handling
2020-12-03 23:28:27 +01:00
mathieui
98b9a6f9e3
XEP-0045: Remove "self" returns from stanza methods
2020-12-03 23:28:27 +01:00
mathieui
de548fbcce
XEP-0045: Add status_codes interface to the MUC element
2020-12-03 23:28:27 +01:00
mathieui
af46efc12a
Merge branch 'doap' into 'master'
...
DOAP: Add the list of XEPs we support
See merge request poezio/slixmpp!68
2020-12-02 19:30:08 +01:00
Emmanuel Gil Peyrot
88132def60
DOAP: Add the list of XEPs we support
...
This comes from slixmpp/plugins/__init__.py
2020-12-02 19:27:58 +01:00
Link Mauve
26db6175f2
Merge branch 'doap' into 'master'
...
doap.xml
See merge request poezio/slixmpp!54
2020-12-02 19:22:53 +01:00
mathieui
4d5586f4a1
Merge branch 'mix-implementation' into 'master'
...
First try at a MIX implementation
See merge request poezio/slixmpp!63
2020-12-02 19:19:14 +01:00
mathieui
4eb2bb7da8
ElementBase: serialize JID objects as strings automatically
...
This is a shortcut to avoid defining custom methods each time a
substanza containing a JID exists in a plugin.
Same thing with attributes, there is no place where we do not want this.
2020-12-02 19:17:33 +01:00
mathieui
15bf6bc827
XEP-0405: add basic stanza tests
2020-12-02 19:17:33 +01:00
mathieui
3d1615ea54
XEP-0369: add basic stanza tests
2020-12-02 19:17:33 +01:00
mathieui
350f85a8d1
XEP-0403: MIX-Presence
2020-12-02 19:17:33 +01:00
mathieui
b62ea49de3
XEP-0404: MIX-Anon: JID hidden channels
...
(not found)
2020-12-02 19:17:33 +01:00
mathieui
bdc12c00c6
XEP-0405: MIX-PAM
2020-12-02 19:17:33 +01:00
mathieui
51cc459bd0
XEP-0369: MIX-Core
2020-12-02 19:17:33 +01:00
Link Mauve
54b9721f3a
Merge branch 'xep-0047-fix-sequence-number' into 'master'
...
XEP-0047: Fix the max sequence number
See merge request poezio/slixmpp!67
2020-12-02 17:28:03 +01:00
Link Mauve
c20b72376e
Merge branch 'muc-update' into 'master'
...
XEP-0045 examples: remove wait arg to join_muc calls
See merge request poezio/slixmpp!66
2020-12-02 17:27:47 +01:00
mathieui
b27510f05b
XEP-0047: Fix the max sequence number
...
The max seq allowed according to the XEP is 65535, therefore we must
modulo using 65536 to allow that value.
2020-12-01 20:13:34 +01:00
mathieui
45a14871ee
Examples: remove wait arg to join_muc calls
...
it hasn’t worked in years, and I removed it recently
2020-12-01 19:51:33 +01:00
mathieui
6ff5162fb4
Merge branch 'adhoc-execute-next' into 'master'
...
Allow execute to be used with the meaning of 'next'.
Closes #3432
See merge request poezio/slixmpp!13
2020-11-27 20:21:12 +01:00
mathieui
c3a6352a6b
Merge branch 'fix-xep_0115-disco-component' into 'master'
...
Fix 'from' attribute missing for ComponentXMPP Disco IQ
Closes #3455
See merge request poezio/slixmpp!60
2020-11-27 20:06:53 +01:00
Link Mauve
086dc894d1
Merge branch 'remove-protoxep-occupantid' into 'master'
...
Remove protoxep_occupantid
See merge request poezio/slixmpp!65
2020-11-27 20:03:41 +01:00
mathieui
a245ba54bd
Remove protoxep_occupantid
...
And fix some minor details in 0421 plugin.
2020-11-27 20:02:03 +01:00
Link Mauve
c86a6ad299
Merge branch 'xep-0444-and-not-protoxep' into 'master'
...
Promote protoxep_reactions to XEP-0444
See merge request poezio/slixmpp!64
2020-11-27 19:54:13 +01:00
mathieui
7e4b664742
Install emoji in docker
2020-11-27 19:46:42 +01:00
mathieui
ddc3974d1b
Update protoxep_reactions to XEP-0444
2020-11-27 19:44:13 +01:00
Link Mauve
9b5ab741c8
Merge branch 'xep-45-misc-fixes' into 'master'
...
Misc fixes for xep-0045
See merge request poezio/slixmpp!62
2020-11-26 20:48:44 +01:00
mathieui
a9a7bdc6c3
XEP-0045: update methods for asyncio & stanza, typing
...
- This rewrites most of the stuff in the plugin by using the newly added
elements instead of raw ElementTree stuff with hardcoded namespaces.
- Adds methods for affiliation/roles
- Adds some type hints
- Fix many cases where the call would simply not work since slixmpp
exists (and break the API but it was already broken ¯\_(ツ)_/¯)
2020-11-26 20:47:21 +01:00
mathieui
fe68d19f91
XEP-0045: register the new elements & reformat init
2020-11-22 18:11:18 +01:00
mathieui
fe46643f2f
XEP-0045: add more stanza elements
2020-11-22 18:11:18 +01:00
Maxime Buquet
985505297c
Merge branch 'master' into 'master'
...
Cancel run_filters task upon disconnect
See merge request poezio/slixmpp!57
2020-10-01 17:15:06 +02:00
Maxime Buquet
0b38eeaa4a
Merge branch 'xep-0363-callback-fix' into 'master'
...
XEP-0363 fix: call callback when receiving the upload slot.
See merge request poezio/slixmpp!58
2020-10-01 13:52:28 +02:00
Maxime Buquet
4dbabfa211
Merge branch 'stanzabase-docstring' into 'master'
...
StanzaBase.send: remove inexisting param in docstring -- thanks elghinn
See merge request poezio/slixmpp!61
2020-10-01 13:08:44 +02:00
Maxime “pep” Buquet
57c8196d9c
StanzaBase.send: remove inexisting param in docstring -- thanks elghinn
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-10-01 13:06:37 +02:00
aearil
f90713cb9e
Fix 'from' attribute missing for ComponentXMPP Disco IQ
...
Fixes #3455
This reuses the 'to' attribute of the received presence as a 'from' for
the Disco IQ. I don't know if this is the best way to do it, but in
testing with a simple component it fixed the error.
Also I'm not sure whether pres['to'] would also be valid when
is_component is False.
2020-08-05 20:35:30 -04:00
Maxime Buquet
9b9ace97f4
Merge branch 'muc-package' into 'master'
...
XEP-0045: Move into a package module. Add MUCMessage stanza plugin
See merge request poezio/slixmpp!56
2020-07-08 11:03:23 +02:00
Maxime “pep” Buquet
d497f94e6f
Revert "Merge branch 'muc-stanza-format' into 'master'"
...
This reverts commit cde9ac123d
, reversing
changes made to bb61f0f39d
.
2020-07-08 10:53:03 +02:00
Maxime Buquet
cde9ac123d
Merge branch 'muc-stanza-format' into 'master'
...
Muc stanza format
See merge request poezio/slixmpp!59
2020-07-08 10:23:05 +02:00
Maxime “pep” Buquet
c8d1eaa2dc
xep_0045: also return default value when attr doesn't exist
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-07-08 10:21:16 +02:00
Maxime “pep” Buquet
200e1a6128
xep_0045: Make format string actually format strings
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-07-08 10:20:58 +02:00
cnngimenez
9c7f3d59d8
XEP-363 fix: call callback when receiving the upload slot.
2020-06-28 21:01:40 -03:00
ehendrix23
145bb7a36e
Cancel run_filters task upon disconnect
2020-06-12 19:03:58 +02:00
Maxime “pep” Buquet
67fb5fe4c3
XEP-0045: register_stanza_plgin(Message, MUCMessage)
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-29 23:35:31 +02:00
Maxime “pep” Buquet
605a58a864
XEP-0045: Split __init__
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-29 23:35:31 +02:00
Maxime “pep” Buquet
a3d343b253
XEP-0045: Add MUCMessage
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-29 23:35:31 +02:00
Maxime “pep” Buquet
d58f59980f
XEP-0045: Remove unused MUCPresence attributes
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-29 23:35:31 +02:00
Maxime “pep” Buquet
9e8ac6b769
XEP-0045: Add some types in stanza
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-29 23:35:31 +02:00
Maxime “pep” Buquet
3b3eed544e
XEP-0045: Add stanza.NS* consts
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-29 17:27:51 +02:00
Maxime “pep” Buquet
03ee9bc4cc
XEP-0045: Split stanza into sub-module
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-29 17:25:18 +02:00
Maxime “pep” Buquet
4fad5c62ce
XEP-0045: Remove useless Python2-ness
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-29 14:15:28 +02:00
Maxime “pep” Buquet
5ccae3ce2a
XEP-0045: Change to a package module
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-29 14:15:04 +02:00
Maxime “pep” Buquet
a104e3722e
XEP-0045: Move into a package module. Add MUCMessage stanza plugin
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-29 01:33:32 +02:00
mathieui
bb61f0f39d
Merge branch 'xep-0421' into 'master'
...
New XEP: 0421 Occupant-id
See merge request poezio/slixmpp!55
2020-05-28 00:35:48 +02:00
Maxime “pep” Buquet
a29ce4b547
XEP-0421: Add shorthand to namespace
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-27 23:45:41 +02:00
Maxime “pep” Buquet
07b1a4c1cd
XEP-0421: add has_feature helper
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-27 22:39:52 +02:00
Maxime “pep” Buquet
cec34686fc
New XEP: 0421 Occupant-id
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-27 22:39:52 +02:00
Maxime “pep” Buquet
03148ed92e
WIP: doap.xml
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-24 22:59:05 +02:00
Maxime Buquet
6f4e9b485f
Merge branch 'plugin-377' into 'master'
...
Add a plugin for XEP-0377: spam reporting
See merge request poezio/slixmpp!53
2020-05-24 15:05:24 +02:00
mathieui
28123083f7
Add stanza tests for 0377
2020-05-24 15:00:20 +02:00
mathieui
ef961392be
Enforce <spam/> and <abuse/> quantity constraints
2020-05-24 13:46:47 +02:00
mathieui
2e31de3f45
Add a plugin for XEP-0377: spam reporting
2020-05-24 13:33:51 +02:00
mathieui
8a52730f11
Merge branch 'tutorial' into 'master'
...
Tutorial - english and polish version.
See merge request poezio/slixmpp!33
2020-05-24 13:05:56 +02:00
mathieui
04df50feac
Merge branch 'release-slix-1.5.2' into 'master'
...
Update version to 1.5.2
See merge request poezio/slixmpp!52
2020-05-23 23:46:01 +02:00
mathieui
c7bd224182
Update version to 1.5.2
2020-05-23 23:43:27 +02:00
mathieui
bac1e9b44a
Merge branch 'muc-presence' into 'master'
...
xep_0045: don't create empty item
See merge request poezio/slixmpp!51
2020-05-22 16:32:27 +02:00
Maxime “pep” Buquet
b62f0e90c1
xep_0045: don't create empty item
...
Only create an item if an attribute is set. Don't create it when reading
if it wasn't already present.
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-20 00:37:46 +02:00
mathieui
9ace053992
Merge branch 'upload-filetoobig' into 'master'
...
xep_0363: pass more information to FileTooBig exception
See merge request poezio/slixmpp!50
2020-05-12 01:53:00 +02:00
Maxime “pep” Buquet
c7cd2fcf33
xep_0363: pass more information to FileTooBig exception
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-12 01:49:56 +02:00
Maxime Buquet
e57289358f
Merge branch 'upload-disco-form' into 'master'
...
xep_0363: Ensure every form in disco#info is read
See merge request poezio/slixmpp!49
2020-05-12 01:04:41 +02:00
Maxime “pep” Buquet
4aa35c11ab
xep_0363: Ensure every form in disco#info is read
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-12 01:03:50 +02:00
mathieui
d6f7d32bbe
Merge branch 'version-1.5.1' into 'master'
...
Update version to 1.5.1
See merge request poezio/slixmpp!47
2020-05-02 19:44:54 +02:00
mathieui
0dd32be7f5
Update version to 1.5.1
...
1.5.0 changed what could be expected to be sent before calling
disconnect(), this fixes it.
2020-05-02 19:39:21 +02:00
Maxime Buquet
bf69698af1
Merge branch 'add-forever-false-examples' into 'master'
...
Add forever=False to some examples to make them terminate
See merge request poezio/slixmpp!46
2020-05-02 17:54:50 +02:00
Maxime Buquet
aa732b3c94
Merge branch 'fix-disconnect-send-queue' into 'master'
...
Fix a regression introduced in 1.5.0
See merge request poezio/slixmpp!45
2020-05-02 17:35:17 +02:00
mathieui
d076cef023
Add forever=False to some examples to make them terminate
2020-05-02 17:34:11 +02:00
mathieui
f884b67b8b
Fix a regression introduced in 1.5.0
...
Due to the send queue, messages sent immediatly before calling
"disconnect" would not be sent.
2020-05-02 17:17:08 +02:00
Maxime Buquet
0d3116dbdf
Merge branch 'fix-start-handlers' into 'master'
...
Change session_start callback to async in most examples
See merge request poezio/slixmpp!44
2020-05-02 16:51:51 +02:00
mathieui
f1ab9ab964
Change session_start callback to async in most examples
...
If we fetch the roster, we should probably wait until we get it back
2020-05-02 16:47:04 +02:00
mathieui
e520ab1f5e
Merge branch 'release-1.5.0' into 'master'
...
Update version to 1.5.0
See merge request poezio/slixmpp!43
2020-05-01 16:00:58 +02:00
mathieui
3dcb96d9d8
Update version to 1.5.0
2020-05-01 15:26:24 +02:00
Maxime Buquet
0a7a4c3abe
Merge branch 'python-version' into 'master'
...
Update Python version minimum requirement to 3.7
See merge request poezio/slixmpp!42
2020-05-01 15:14:49 +02:00
Maxime “pep” Buquet
a4bbc404ed
Update Python version minimum requirement to 3.7
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-05-01 15:13:19 +02:00
Paulina
1314e70460
Changing the use of 'threading' in python for more suitable 'subprocesses'. Change of English names to Polish equivalents, as requested by the authors.
2020-04-14 21:21:35 +02:00
Paulina
f84bfce5f3
Correction and editing of the tutorials.
...
[100%] English version
[100%] Polish version
[100%] Both version consistency check
[98 %] Final sanity check + formating
2020-04-10 12:37:31 +02:00
Maxime “pep” Buquet
c3fbc6cb80
xep_0196: Use correct tag local name (thanks ivucica)
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-04-06 12:57:12 +02:00
Maxime “pep” Buquet
355d789061
docs: remove andyet logo/link on every page
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2020-04-06 12:57:12 +02:00
mathieui
47ed67c04e
Merge branch 'add-github-pr-template' into 'master'
...
Add a github pull request template
See merge request poezio/slixmpp!41
2020-04-04 20:06:23 +02:00
mathieui
34567f450a
Add a github pull request template
2020-04-04 20:04:23 +02:00
mathieui
9126bd8392
Merge branch 'fix-deprecations' into 'master'
...
Fix deprecation warning regarding invalid escape sequences.
See merge request poezio/slixmpp!40
2020-04-04 18:53:15 +02:00
mathieui
02202f7cd8
Merge branch 'fix-nonetype-error' into 'master'
...
Fix an issue when deleting subelements: TypeError: 'NoneType' object is not an iterator
See merge request poezio/slixmpp!39
2020-04-04 18:44:25 +02:00
jheling
2add94f5b0
Fix TypeError: 'NoneType' object is not an iterator
...
When deleting sub-elements in a stanza.
2020-04-04 18:42:48 +02:00
Karthikeyan Singaravelan
5fc757f200
Fix deprecation warning regarding invalid escape sequences.
2020-04-04 16:08:44 +00:00
mathieui
98108d0445
Merge branch 'fix-celementtree-import' into 'master'
...
cElementTree has been deprecated since Python 3.3 and removed in Python 3.9.
See merge request poezio/slixmpp!38
2020-04-04 17:55:11 +02:00
Maxime Buquet
76f4fb49d6
Merge branch 'sync-fixes' into 'master'
...
Sync fixes
See merge request poezio/slixmpp!37
2020-04-04 15:28:59 +02:00
Georg Lukas
5be46a5e68
fire 'disconnected' callback from abort()
2020-04-04 13:16:33 +02:00
Georg Lukas
ab9040c30e
expose is_connecting state based on connection attempt future
2020-04-04 13:16:31 +02:00
Maxime Buquet
a16e2a0f6c
Merge branch 'fix-0198' into 'master'
...
XEP-0198: unset end_session_on_disconnect on resume/enable
See merge request poezio/slixmpp!36
2020-03-29 14:28:06 +02:00
Maxime Buquet
842aa3be8f
Merge branch 'fix-reconnect-2.0' into 'master'
...
Reset reconnect delay on manual reconnect, add delay event
See merge request poezio/slixmpp!35
2020-03-29 14:26:15 +02:00
Georg Lukas
6c28b49e7f
XEP-0198: unset end_session_on_disconnect on resume/enable
2020-03-29 14:21:40 +02:00
Georg Lukas
621255027d
Reset reconnect delay on manual reconnect, add delay event
...
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!
2020-03-29 14:21:05 +02:00
Maxime Buquet
efe316dc8c
Merge branch 'fix-0198' into 'master'
...
XEP-0198: properly disable on disconnect, fix reconnect-loop
See merge request poezio/slixmpp!34
2020-03-28 22:11:52 +01:00
Maxime Buquet
e9a87a0b77
Merge branch 'master' into 'master'
...
reconnect: fix callback when not currently connected
See merge request poezio/slixmpp!32
2020-03-28 22:11:34 +01:00
Georg Lukas
85c9967b9c
XEP-0198: fix race conditions on enable/resume
...
This code splits out the `enabled` property into `enabled_in` and
`enabled_out` to reflect that client and server enable 0198
asynchronously.
This also moves the actual enabling code into the stanza processing
logic, because apparently, `enable.send()` was just added into the end
of the send queue, but `enable` got enabled immediately, so that poezio
requested ACKs for whatever happened to be in the queue before.
Async is hard, let's go get fishing.
2020-03-28 21:49:18 +01:00
Georg Lukas
deb6d4f176
XEP-0198: properly disable on disconnect, fix reconnect-loop
...
When the connection is disconnected (but the session didn't "end",
because 0198 resumption is enabled), poezio will reconnect and try to
send an <r/> element because the 0198 plugin doesn't realize that SM
wasn't re-enabled yet.
2020-03-28 20:50:55 +01:00
Karthikeyan Singaravelan
7218bb4499
cElementTree has been deprecated since Python 3.3 and removed in Python 3.9.
2020-03-28 04:42:23 +00:00
Georg Lukas
d85efec7a2
reconnect: fix callback when not currently connected
...
The 'disconnected' event is normally fired from connection_lost(), which
is called by the connection code when the connection is lost after being
established. However, if the connection wasn't successfully established,
a manual /reconnect no-ops because it waits for the 'disconnected'
callback which never fires. This patch does two things:
1. Immediately fire a 'disconnected' event in disconnect() if there is
no transport.
2. Register the 'disconnected' event handler in reconnect() *before* it
can be fired.
2020-03-23 18:59:29 +01:00
Paulina
9fd8684c5a
Correction and editing of the tutorials.
...
[98 %] English version
[98 %] Polish version
[100%] Both version consistency check
[95 %] Final sanity check + formating
2020-03-21 17:08:31 +01:00
Paulina
fc77fb7648
Correction and editing of the tutorials.
...
[95 %] English version
[95 %] Polish version
[100%] Both version consistency check
[95 %] Final sanity check + formating
2020-03-15 18:02:46 +01:00
Paulina
c8d802a6c7
Correction and editing of the tutorials.
...
[95 %] English version
[95 %] Polish version
[100%] Both version consistency check
[80 %] Final sanity check + formating
2020-03-15 17:27:47 +01:00
Paulina
3529a36974
Merge branch 'tutorial' of https://lab.louiz.org/Hoacyn/slixmpp into tutorial
2020-03-15 15:27:36 +01:00
Paulina
fe6458303a
Correction and editing of the tutorials.
...
[85 %] English version
[90 %] Polish version
[45 %] Both version consistency check
[0 %] Final sanity check + formating
2020-03-15 15:26:21 +01:00
Paulina
b15d4aa0fa
Correction and editing of the tutorials.
...
[95 %] English version
[95 %] Polish version
[100%] Both version consistency check
[80 %] Final sanity check + formating
2020-03-15 15:17:00 +01:00
Paulina
01371041a3
Correction and editing of the tutorials.
...
[85 %] English version
[90 %] Polish version
[45 %] Both version consistency check
[0 %] Final sanity check + formating
2020-03-08 21:01:51 +01:00
Paulina
9c4e3956a7
Correction and editing of the tutorials.
...
[80 %] English version
[0 %] Polish version
[20 %] Both version consistency check
[0 %] Final sanity check
TODO:
- comments in the code blocks
- side-by-side consistency check
2020-02-29 10:31:52 +01:00
Paulina
cd5b47f76c
Eng and pl tutorials added.
2020-02-27 16:58:54 +01:00
mathieui
115c234527
Merge branch 'async-filters' into 'master'
...
Add async filters on the send process
See merge request poezio/slixmpp!24
2019-12-27 15:35:00 +01:00
mathieui
a0f5cb6e09
Put the queue exception at toplevel
2019-12-27 15:27:29 +01:00
mathieui
110bbf8afc
Improve the send queue code a bit
2019-12-27 15:27:29 +01:00
mathieui
d97efa0bd8
add a separate place for slow ass filters
2019-12-27 15:27:29 +01:00
mathieui
672f1b28f6
raise Exception
2019-12-27 15:27:29 +01:00
mathieui
27d3ae958b
Try/except around outbound stanza processing
...
to avoid killing the send loop when a filter has an error
2019-12-27 15:27:29 +01:00
mathieui
a32794ec35
Remove trailing whitespace
2019-12-27 15:27:28 +01:00
mathieui
aa11ba463e
Skip 0323 because
2019-12-27 15:27:28 +01:00
mathieui
a83c00e933
Update test framework to work with new filters
...
(eewww)
2019-12-27 15:27:28 +01:00
mathieui
31f6ef6814
Run the send queue in a separate coroutine
...
To be able to run async stream filters
2019-12-27 15:27:25 +01:00
Maxime “pep” Buquet
9b3874b5df
xep_0048: Ensure Conference jid is of type str when given a JID
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-11-11 14:00:19 +01:00
mathieui
0139fb291e
Fix a bug in the 0202 plugin where a time result would send back a result
...
poezio bug #3499
2019-09-19 22:54:53 +02:00
mathieui
e58988484a
Match the sender JID as well as the queryid in MAM results
2019-09-10 23:13:04 +02:00
mathieui
5d5e5cda19
Add typing/docstring in the MAM plugin
2019-09-10 22:44:46 +02:00
root
11f707987d
Added amount parameter, so that limit on the msgs received per query can be changed.
2019-09-08 14:22:48 +02:00
Maxime “pep” Buquet
db13794e0f
Revert "Remove a block of compatibility code"
...
This reverts commit 37bc1bb9b3
.
Confusion confusion. Mathieui thought this was a sleekxmpp thing when
it's actually been added not so long ago.
2019-08-28 00:12:10 +02:00
mathieui
37bc1bb9b3
Remove a block of compatibility code
...
even if the user makes that mistake, it does not cause problems down the
line.
2019-08-26 12:00:38 +02:00
mathieui
9be30e5291
fix a typo in the invalidjid exception name case
2019-08-25 01:42:00 +02:00
Maxime Buquet
9fe20a4056
Merge branch 'origin-id' into 'master'
...
Implement Origin-id (XEP-0359)
See merge request poezio/slixmpp!21
2019-08-23 17:10:42 +02:00
Maxime “pep” Buquet
3253d34c0a
basexmpp: Make origin-id opt-out
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-08-23 17:09:21 +02:00
Maxime “pep” Buquet
fef575ee1a
Implement origin-id (XEP-0359)
...
This XEP is not implemented as a plugin but directly into Message.
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-08-23 17:09:21 +02:00
Maxime Buquet
540ff89427
Merge branch 'mam' into 'master'
...
Assign 'True' to 'before' tag if it's value is 'None'.
See merge request poezio/slixmpp!26
2019-08-23 16:37:12 +02:00
root
dd8ac8fc87
Assign True to the 'before' tag if it's value is None (eg:at the start no msg is there in the group, so no stanza-id)
2019-08-23 04:39:20 +05:30
Maxime Buquet
2249d878d1
Merge branch 'mam' into 'master'
...
Removed assigning 'reverse' value to the 'before' tag
See merge request poezio/slixmpp!25
2019-08-23 00:03:07 +02:00
root
89fa9dc1dd
Removed before tag. (Code for setting it is already there)
2019-08-23 00:21:42 +05:30
root
d7729e8683
Removed assigning 'reverse' value to the 'before' tag (It's value is set in xep_0313 (mam.py file) and if not then by default it is takes as 'None').
2019-08-23 00:15:56 +05:30
louiz’
d618f55dea
Merge branch 'mam' into 'master'
...
Added <before> tag for querying messages before a stanza-id.
See merge request poezio/slixmpp!23
2019-08-13 09:54:43 +02:00
Madhur Garg
b0e688eb35
Added <before> tag for querying messages before a stanza-id.
2019-08-12 23:39:01 +05:30
Maxime “pep” Buquet
0e7176483b
xep_0030: add docstring to get_info_from_domain
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-08-03 16:05:09 +02:00
Emmanuel Gil Peyrot
f35569a2c1
Remove the last instances of a block argument to iq.send().
...
Thanks Madhur Garg for spotting this in
027ce2434d7fd3cf4a286dd373cb761c0d114c66!
2019-08-01 22:36:59 +02:00
Link Mauve
bec6f7c8f3
Merge branch 'mam' into 'master'
...
Removed 'block' from set_preferences as it was giving a TypeError while sending the staza.
See merge request poezio/slixmpp!20
2019-08-01 22:30:58 +02:00
Madhur Garg
027ce2434d
Removed 'block' from set_preferences as it was giving a TypeError while sending the staza.
2019-08-02 01:57:36 +05:30
Maxime Buquet
d57fbb57a2
Merge branch 'mam' into 'master'
...
Added a function in xep313 plugin to get current MAM preferences.
See merge request poezio/slixmpp!19
2019-07-22 22:05:05 +02:00
Madhur Garg
85cd7a9166
Added a function to get current MAM preferences.
2019-07-18 16:55:11 +05:30
Maxime “pep” Buquet
d50d996c68
xmlstream/stanzabase: remove unused interfaces and types attributes
...
These are already on each stanza, and were not applicable to all stanzas
anyway.
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-07-16 11:26:54 +02:00
mathieui
371ad20ca7
Do not add disco#info for occupantid, it’s a server thing
2019-07-14 13:25:22 +02:00
mathieui
5f49df6b56
Add the occupant id stanza elements
2019-07-14 13:13:59 +02:00
mathieui
b50bfb2f34
Initial commit for reactions protoxep
2019-07-13 19:44:32 +02:00
Maxime “pep” Buquet
b29bb30eb7
Make generated stanza id truly random
...
Fix long-standing security issues where stanza @id be predictable.
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-07-13 14:07:31 +02:00
Maxime “pep” Buquet
4435c81d77
xmlstream.disconnect: add compat behaviour, set wait to default 2.0
when True is passed. Update documentation
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-07-03 21:36:17 +02:00
Madhur Garg
2638ba2744
Added 'reverse' argument.
2019-07-03 14:18:33 +05:30
Madhur Garg
dbc9758311
Added 'reverse' parameter in mam and rsm plugins
2019-07-03 10:31:18 +05:30
Maxime “pep” Buquet
47968963b1
Revert part of previous commit. Return NotImplemented when object is not a valid JID
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-05-07 11:56:39 +01:00
Maxime “pep” Buquet
4e8800f954
jid: return not equal if value can't be converted to JID
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-05-07 10:08:46 +01:00
Maxime “pep” Buquet
40053518aa
Merge remote-tracking branch 'origin/mr/13'
2019-04-27 12:59:23 +01:00
Maxime “pep” Buquet
1ee0f72ead
xmlstream.disconnect: fix frenchism in docstring
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-04-24 23:35:33 +01:00
Maxime “pep” Buquet
4bb81228ae
xmlstream.disconnect: typing hints
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-04-24 23:35:06 +01:00
Maxime “pep” Buquet
60a7a5b8df
presence: Ensure <show/> value is valid when returned as presence @type value
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-04-24 20:29:54 +01:00
Maxime “pep” Buquet
946674f424
xep_0045: Ensure <show/> value is valid.
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-04-24 20:28:58 +01:00
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
2b666eb1de
Revert "Remove license from unused project"
...
This reverts commit fbab3ad214
.
2019-02-24 12:16:06 +00:00
Emmanuel Gil Peyrot
400e7a3903
Remove SocksiPy license
...
I wrote a SOCKS5 implementation back in
9c5dd024b1
, and removed SocksiPy from
slixmpp’s codebase at the same time.
2019-02-24 13:02:08 +01:00
Maxime “pep” Buquet
fbab3ad214
Remove license from unused project
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-02-24 12:00:16 +00:00
mathieui
628b357b06
Merge branch 'eme-add-method' into 'master'
...
xep_0380: Add add_eme method
See merge request poezio/slixmpp!11
2019-02-23 14:07:15 +01: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
Maxime “pep” Buquet
05d76e4b1d
Change more URLs to lab.louiz.org
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-02-12 10:34:57 +00:00
Maxime “pep” Buquet
d52d4fbbbe
Update project URLs to lab.louiz.org
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-02-12 10:26:04 +00:00
Maxime “pep” Buquet
e53c0fcb30
README: Add pep as a contributor
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-02-10 14:18:28 +00:00
Maxime “pep” Buquet
97d68c5196
setup.py: GTalk is no more
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net >
2019-02-10 14:18:28 +00:00
mathieui
b42fafabb4
Make the cache encode and decode not crash if something goes wrong
2019-02-02 17:42:24 +01:00
mathieui
3a44ec8f15
Add tests for the cache api
2019-02-02 17:32:10 +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
Mateusz Piotrowski
d228bc42ea
Mention that GnuPG is required for tests
2018-12-27 17:21:12 +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
mathieui
282a481059
Merge branch 'setup_dependency_fix' into 'master'
...
added aiohttp dependency
See merge request poezio/slixmpp!6
2018-10-28 14:08:26 +01:00
Florian Klien
f386db380b
docs: auto-set copyright year to current year
2018-10-28 10:48:23 +01:00
Florian Klien
7b87d98fff
auto set version of Slixmpp in Docs
...
getting version of slixmpp from source tree for documentation
2018-10-28 10:48:23 +01:00
Florian Klien
8779d40602
typo
2018-10-27 23:38:09 +02:00
Emmanuel Gil Peyrot
f0b21c42d5
examples: Add the possibility to use another HTTP File Upload domain.
2018-10-27 23:25:59 +02: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
dc4936a6d3
added aoihttp dependency
...
slixmpp uses aiohttp in the XEP_0363 plugin.
2018-10-22 12:41:20 +02:00
Florian Klien
897610d819
fix: failUnlessEqual -> assertEqual
2018-10-15 14:59:23 +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
dda4e18b81
examples: Remove unused asyncio imports.
2018-10-09 10:57:19 +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
louiz’
ad0dc33df9
Trigger poezio’s build if this ours succeeded
2018-08-22 23:19:47 +02: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
86a2f280d2
Document that slixmpp is now 3.5+ only
2018-08-08 23:42:22 +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
0f690d4005
tests: Fix the XEP-0323 stream test, broken since 59d4420739
.
...
Thanks debacle!
2018-08-02 21:27:19 +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
louiz’
cdfb5d56fc
apt install gpg before running the ci tests
2018-06-10 21:40:56 +02:00
Emmanuel Gil Peyrot
d146ce9fb6
examples: Display only the form, and not the entire stanza.
2018-05-13 21:26:47 +02:00
Emmanuel Gil Peyrot
cb59d60034
examples: Display the actual cause for a failed command.
2018-05-13 21:21:06 +02:00
Emmanuel Gil Peyrot
1d9fe3553e
examples: Use the existing get_node_config function.
2018-05-13 21:13:22 +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
92ea131721
examples: Add support for node configuration to pubsub_client.
2018-05-13 20:57:48 +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
29faf114a7
Add max-file-size support to HTTP File Upload example.
2018-03-08 12:11:26 +01:00
Emmanuel Gil Peyrot
94ea8151d4
Add an HTTP File Upload example.
2018-03-08 03:39:23 +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
ee98159586
Test all known python versions in travais
2017-12-27 15:49:52 +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
80b9cd43b1
MAM example: Also display the timestamp.
2017-10-24 10:54:53 +01:00
Emmanuel Gil Peyrot
af1f9e08ad
Clean up the MAM example a bit.
2017-10-24 10:47:42 +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
Tom Wambold
c33749e57a
Fixes port being set to 0 when connecting via hostname.
...
This seems to be the same issue as:
https://dev.louiz.org/issues/3164
Using their suggested fix, if the DNS lookup doesn't return a port, use
the one passed in instead.
2017-05-08 15:58:28 -04:00
Emmanuel Gil Peyrot
e4107d8b4d
sasl: Merge two bytes instead of concatenating them at runtime.
2017-04-28 21:26:03 +01:00
mathieui
da5cb72d3a
Add XMPP classifier to setup.py
2017-04-10 02:24:14 +02:00
Emmanuel Gil Peyrot
c372bd5168
xmlstream: Warn when the parser is None when data is received.
2017-02-16 11:27:36 +00:00
mathieui
cabf623131
Fix the http over xmpp example
2017-02-14 01:04:38 +01:00
mathieui
ffc240d5b6
Fix the gtalk example
2017-02-14 01:04:27 +01:00
mathieui
cc4522d9cd
Fix custom stanza examples
2017-02-14 01:00:41 +01:00
mathieui
5bf69dca76
Return a Future on clientxmpp.get_roster()
2017-02-14 00:46:36 +01:00
Emmanuel Gil Peyrot
59dad12820
XEP-0300: Workaround for Python 3.5 or below.
2017-02-11 23:30:43 +00:00
Emmanuel Gil Peyrot
007c836296
XEP-0300: Add rudimentary tests.
2017-02-11 04:02:44 +00:00
Emmanuel Gil Peyrot
3721bf9f6b
Implement XEP-0300 (Use of Cryptographic Hash Functions in XMPP)
...
This is used to provide hash agility support and let other XEPs select
which hash function they support.
2017-02-11 04:02:20 +00:00
Cédric 'dek' Laudrel
802949eba8
fix small typo in README
2017-02-10 00:08:40 +01:00
mathieui
24f35e433f
slixmpp 1.2.4 release
2017-01-30 23:02:45 +01:00
mathieui
22664ee7b8
Fix carbons
2017-01-28 00:02:27 +01:00
Clint Olson
6476cfcde5
Remove unused import caught by Codacy.
2017-01-23 23:58:53 -08:00
Clint Olson
5bb347e884
Fix partially-merged Google plugin from acc52fd935
.
2017-01-23 23:51:59 -08:00
Emmanuel Gil Peyrot
eb1251b919
Fix a typo in the title of the MUC documentation.
2017-01-08 17:38:11 +00:00
Emmanuel Gil Peyrot
820144c40c
Add missing asyncio.coroutine decorators.
2016-12-30 13:41:15 +01:00
Emmanuel Gil Peyrot
6034df0a78
Check for XML parsing errors and disconnect in that case.
2016-12-29 18:59:09 +01:00
Emmanuel Gil Peyrot
df4012e66d
XMLStream: Break a long line to make it more readable.
2016-12-29 18:41:09 +01:00
Emmanuel Gil Peyrot
c372f3071a
Examples: Use argparse for http_over_xmpp.
2016-12-29 18:34:37 +01:00
Emmanuel Gil Peyrot
829c8b27b6
Test more things before trying to build our stringprep module.
2016-12-25 13:28:51 +01:00
mathieui
fb3ac78bf9
slixmpp 1.2.3
2016-12-07 21:47:54 +01:00
mathieui
ffd9436e5c
Fix roster push origin detection and tests
2016-12-07 19:06:25 +01:00
louiz’
bbb1344d79
Add very basic gitlab-ci.yml file
2016-12-05 00:13:13 +01:00
Emmanuel Gil Peyrot
457785b286
XEP-0380: Add a helper to test for the presence of an EME tag.
2016-11-26 16:41:48 +00:00
Emmanuel Gil Peyrot
4847f834bd
Add a plugin for XEP-0380: Explicit Message Encryption.
2016-11-26 16:29:19 +00:00
mathieui
53191ff1cf
slixmpp 1.2.2
...
Fix CVE-2015-8688, and a few bugfixes.
2016-11-21 21:46:02 +01:00
mathieui
ffdb6ffd69
Check origin of roster pushes
...
slixmpp is vulnerable to roster push attacks as described by Daniel
Gultsch at https://gultsch.de/gajim_roster_push_and_message_interception.html .
(CVE-2015-8688)
2016-11-21 21:42:51 +01:00
Emmanuel Gil Peyrot
7560db856b
stringprep_profiles: Emit a correct StringPrepError on query + unassigned.
2016-10-27 06:44:38 +01:00
Emmanuel Gil Peyrot
63d245ac48
SASL: Fix traceback on non-hashing mechanism using channel binding.
2016-10-27 06:26:39 +01:00
Emmanuel Gil Peyrot
7ddd37be29
XEP-0323: Fix wrong import.
2016-10-27 06:23:08 +01:00
Emmanuel Gil Peyrot
a4d3a4a25e
XEP-0313: Add missing setter argument.
2016-10-27 06:22:50 +01:00
mathieui
58bd07628b
Add missing parameters in XEP-0222 and XEP-0223
2016-10-27 00:21:01 +02:00
mathieui
3569038493
XEP-0009: fix a traceback on recipient unavailable
...
(probably a past typo)
2016-10-27 00:18:43 +02:00
mathieui
20c4ff823a
Add missing JID import in XEP-0079 and 0258
2016-10-27 00:17:29 +02:00
mathieui
8a7448a5a1
Add missing imports in XEP-0333
2016-10-27 00:15:25 +02:00
mathieui
d23d8f901e
Fix a traceback on XEP-0221 del uri['value']
...
(typo)
2016-10-27 00:11:27 +02:00
Emmanuel Gil Peyrot
391f12eeab
Transform an if into an elif in cert parsing.
2016-10-23 14:15:02 +01:00
Emmanuel Gil Peyrot
d008988843
Manual cleanup of the remaining set([…]) and set((…)).
2016-10-22 13:37:46 +01:00
Emmanuel Gil Peyrot
dcacc7d7d5
sed -i 's/set(\[\(.*\)\])$/{\1}/g' **/*.py
2016-10-22 13:21:44 +01:00
Emmanuel Gil Peyrot
c4285961df
sed -i 's/set((\(.*\)))$/{\1}/g' **/*.py
2016-10-22 13:21:42 +01:00
Emmanuel Gil Peyrot
1038f656eb
sed -i 's/set((\(.*\),))$/{\1}/g' **/*.py
2016-10-22 13:21:41 +01:00
Sam Whited
8b06aa1146
Fix fetching the SSL socket for Python 3.4 and 3.5
2016-10-06 13:00:17 -05:00
Emmanuel Gil Peyrot
3c7236fe73
setup.py: Check for libidn before trying to use Cython.
2016-10-05 20:28:11 +01:00
mathieui
36824379c3
slixmpp 1.2.1
...
Fix a few bugs along with the testsuite, and remove the asyncio loop
monkeypatch hack.
2016-10-05 20:32:32 +02:00
mathieui
a0a37c19ff
Remove monkeypatching hack on the event loop
...
This allowed us to schedule events in-order later in the event loop, but
was detrimental to using other event loops and debugging.
2016-10-05 20:19:07 +02:00
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
mathieui
67afd6a462
Fix #3166 (broken link)
2016-02-03 22:43:47 +01:00
mathieui
2e2b97c53b
Merge branch 'xep_0012_fix' of https://github.com/misuzu/slixmpp
2016-01-21 23:22:28 +01:00
Tsukasa Hiiragi
a35df7fe1f
Fixed NameError in start_uptime
2016-01-21 14:59:03 +02:00
Krzysztof Kotlenga
fbc8562779
Remove dead code
...
See 5c769632e8
.
2015-12-15 19:44:29 +01:00
mathieui
b549db959a
Update version to 1.1
2015-10-02 19:35:29 +02:00
mathieui
d5188ac68a
Mention the build of cython modules in the README
2015-10-02 19:22:26 +02:00
mathieui
ada9444bf8
Merge branch 'sleek-merge'
2015-10-02 19:07:45 +02:00
mathieui
acc52fd935
Merge branch 'develop' of https://github.com/fritzy/SleekXMPP into sleek-merge
...
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
2015-10-02 19:00:19 +02:00
mathieui
1100ff1feb
Reset the DNS answers after a connection is made succesfully
2015-09-25 19:34:04 +02:00
mathieui
c17fc3a869
Fix IPv6 resolving with aiodns 1.0
2015-09-24 19:38:53 +02:00
mathieui
4dba697075
Fix support for python 3.4 <= 3.4.2
...
asyncio module is provisional, which means it gets updated everytime
2015-09-23 23:23:02 +02:00
mathieui
e42d651d7e
Fix connecting to a custom host/port
2015-09-19 15:27:12 +02:00
Mike Taylor
4305eddb4f
Merge pull request #397 from rerobins/xep_0050_updates
...
Xep 0050 updates
2015-09-18 16:18:41 -04:00
Robert Robinson
c2dc44cfd1
Merge branch 'develop' into xep_0050_updates
...
# Conflicts:
# tests/test_stream_xep_0050.py
2015-09-18 13:35:28 -06:00
Robert Robinson
5fc14de32e
Merge pull request #3 from fritzy/develop
...
Merge to fritzy_master
2015-09-18 13:30:30 -06:00
Mike Taylor
d245558fd5
Merge pull request #396 from rerobins/add_xep_0122
...
XEP_0122: Add support for form validation
2015-09-18 15:15:27 -04:00
Mike Taylor
9d45370e8a
Merge pull request #393 from aalba6675/fix/time
...
Only send time if Iq type is get.
2015-09-18 15:15:01 -04:00
Mike Taylor
cc1cc61d36
Merge pull request #392 from aalba6675/fix/tel_number
...
Do not overwrite telephone numbers
2015-09-18 15:14:35 -04:00
Mike Taylor
c6740a4908
Merge pull request #389 from alexdraga/develop
...
Add get users by affiliation.
2015-09-18 15:13:54 -04:00
Mike Taylor
55114bcffe
Merge pull request #384 from elya5/patch-1
...
Fix UnboundlocalError in disco_browser.py example
2015-09-18 15:13:30 -04:00
Mike Taylor
4fa5dedc47
Merge pull request #386 from jdowner/develop-iot
...
iot: only add the 'done' field when all devices are done
2015-09-18 15:13:07 -04:00
Mike Taylor
5525ef2285
Merge pull request #395 from rerobins/refactor_forms
...
XEP_0004: Data Forms use register_stanza_plugin
2015-09-18 15:11:47 -04:00
Robert Robinson
a7ac969215
register_Stanza_plugin shouldn't be iterable
...
Should not use iterable for registering the stanza plugins.
2015-09-17 16:21:54 -06:00
Robert Robinson
329cb5a9f8
Add 0122 to plugin/__init__.py __all__
2015-09-17 16:21:13 -06:00
Robert Robinson
d9b47b33f5
Update __init__.py
...
changed xep_0121 to xep_0122
2015-09-15 10:20:37 -06:00
Robert Robinson
3582ac9941
Merge branch 'add_xep_0122' of https://github.com/rerobins/SleekXMPP into add_xep_0122
2015-09-15 10:12:50 -06:00
Robert Robinson
2a127a57a7
Add test case Reported->Data Form Validation
...
Add a test case that will verify that reported fields can contain data form validation data.
2015-09-15 10:09:06 -06:00
Robert Robinson
7059400020
Merge branch 'refactor_forms' into add_xep_0122
2015-09-15 10:07:34 -06:00
Robert Robinson
0b14ef82d4
Add test case for reported and items
...
Previous stanza test cases didn't have test cases for reported and item field types in forms. This fixes that issue.
Modified stanzabase to use an ordered dict so that can guarentee the that 'items' in a form are added after reported. Also updated the set of interfaces that are stored in Form to be a ordered set. Used the order set implementation from: https://code.activestate.com/recipes/576694/
The OrderedSet implementation is licensed under the MIT license and is developed by the same developer of the ordereddict.
2015-09-15 10:05:53 -06:00
Robert Robinson
83953af53d
Missing xep_122 dir in setup.py
2015-09-14 20:28:55 -06:00
Robert Robinson
110cf25c6d
Add plugin support
2015-09-14 17:06:07 -06:00
Robert Robinson
f2bf6072ec
Add plugin
...
(cherry picked from commit 2296d56)
2015-09-14 17:04:43 -06:00
Robert Robinson
5f9abe2e0e
Working through test case issues.
...
(cherry picked from commit 6b58cef)
2015-09-14 17:04:16 -06:00
Robert Robinson
ea65b672e7
Initial cut at getting the stanzas to work.
...
(cherry picked from commit 8c7df49)
2015-09-14 17:04:08 -06:00
Robert Robinson
93c705fb31
Fix xep_0050 changes after form refactor.
2015-09-14 17:00:53 -06:00
Robert Robinson
0724f623bb
Force forms and fields to use plugin resolution
...
Instead of using the interface/subinterface code that was currently being implemented for the plugin.
(cherry picked from commit 1467ec7)
2015-09-14 16:46:36 -06:00
mathieui
82e549c0e9
(Temporary) fix for python 3.5
...
This will work until the old ssl implementation is finally deprecated.
Hopefully, new features to painlessy implement starttls will be around
by then.
2015-09-14 23:14:53 +02:00
mathieui
1aa15792b4
Bump the requirements to aiodns 1.0
...
(and use install_requires instead of requires in the setup.py)
2015-09-14 23:14:06 +02:00
Robert Robinson
ffb2b6bc04
Update test_stream_xep_0050.py
...
Fix Unit Test for adhoc 50 stream.
2015-09-12 20:08:21 -06:00
Emmanuel Gil Peyrot
27f98bf22c
xep_0231: Fix a traceback on result serialization.
2015-09-05 18:35:59 +01:00
mathieui
3978078710
vcard-temp: add some checks against wrong input
2015-09-04 01:59:40 +02:00
mathieui
00a0698720
Add timeout_callback to a bunch of plugins as a parameter
2015-09-04 01:05:56 +02:00
Robert Robinson
4a24f58be2
XEP0050: Add support for payload in completed response
...
When sending the command to complete the task, the adhoc plugin does not provide the ability to send a payload from the _handle_command_complete method.
2015-09-03 10:15:41 -06:00
Mike Taylor
da14ce16ec
Merge pull request #394 from sangeeths/misc_updates
...
adding 'id' to self['xep_0332'].send_request()
2015-08-27 13:00:34 -04:00
Sangeeth Saravanaraj
18e5abb9dd
adding 'id' to self['xep_0332'].send_request()
2015-08-27 13:24:01 +05:30
Richard Chan
1a75b76916
Only send time if Iq type is get.
2015-08-25 18:21:58 +08:00
Richard Chan
53b56899a0
Do not overwrite telephone numbers; otherwise all TEL/NUMBER received
...
from a server will be blank.
2015-08-25 18:11:54 +08:00
mathieui
804b23d390
Merge branch 'socks5' of http://git.linkmauve.fr/slixmpp
2015-08-23 17:14:53 +02:00
Emmanuel Gil Peyrot
04eaf52b1d
xep_0065: Remove an unused variable.
2015-08-23 16:06:01 +01:00
Emmanuel Gil Peyrot
dc7fef1064
xep_0065: Remove the last useless threading locks.
2015-08-23 16:06:01 +01:00
Emmanuel Gil Peyrot
488c433555
Add SOCKS5 Bytestream examples.
2015-08-23 16:06:01 +01:00
Emmanuel Gil Peyrot
9c5dd024b1
Fix the xep_0065 plugin, by rewriting its socks5 implementation.
2015-08-23 16:06:01 +01:00
Florent Le Coz
6e61adf3db
Fix the order in which <identity/> and <feature/> tags are sent on disco#info
...
The identities should all be at the start, and features at the end, so we
just prepend the identity on add_identity, and append features on
add_feature
2015-08-22 18:48:29 +02:00
Emmanuel Gil Peyrot
041bd63864
Add a function to convert a domain name to punycode.
2015-08-20 20:04:58 +01:00
Aleksandr Draga
a366482551
Add get users by affiliation.
2015-08-10 15:34:27 +03:00
Emmanuel Gil Peyrot
a721084f6e
Fix the pubsub_client example.
2015-08-08 17:34:06 +02:00
Emmanuel Gil Peyrot
1b4187fa56
Add a format() method to XMPPError which returns a readable string.
2015-08-08 17:34:06 +02:00
Emmanuel Gil Peyrot
cf7a60705e
Fix docstring of unsubscribe method in the PubSub plugin.
2015-08-08 17:34:06 +02:00
Emmanuel Gil Peyrot
349b05b9b7
Stop disco_browser and pubsub_client examples once they are finished.
2015-08-08 17:34:06 +02:00
Emmanuel Gil Peyrot
9fbacf377a
Strip strings after pygments, so we don’t include an needless newline.
2015-08-08 17:34:06 +02:00
mathieui
2da9e35cbc
Add missing files to the MANIFEST
2015-08-08 17:34:06 +02:00
mathieui
8adc8fa2ba
Update README
2015-08-08 17:34:06 +02:00
mathieui
9efa909dfc
slixmpp v1.0
2015-08-08 17:34:06 +02:00
mathieui
7f21fdbe26
Fix the test suite
...
(mock transport class missing .close())
2015-08-08 17:34:06 +02:00
mathieui
f9c7fa92ea
Reset the connect future after a disconnect
2015-08-08 17:34:05 +02:00
Florent Le Coz
e75a160d52
Remove a useless line of code from “your first XMPP bot” example
2015-08-08 17:34:05 +02:00
Emmanuel Gil Peyrot
170bd51387
Properly answer an error instead of tracebacking on unknown command execution.
2015-08-08 17:33:59 +02:00
Mike Taylor
abcec1e2d3
Merge pull request #388 from sangeeths/misc_updates
...
Retaining 'id' in the response and error stanzas
2015-08-01 14:04:22 -04:00
Sangeeth Saravanaraj
eeab646bfa
Retaining 'id' in the response and error stanzas
2015-08-01 17:47:03 +05:30
Mike Taylor
2c69144189
Merge pull request #387 from mcella/378
...
Fixes #378 : must acquire JID_CACHE_LOCK before adding to JID_CACHE
2015-07-31 11:21:01 -04:00
Michele Cella
f54ebec654
Fixes #378 : must acquire JID_CACHE_LOCK before adding to JID_CACHE
2015-07-31 11:55:50 +02:00
mathieui
2ce931cb7a
Add a waiting time before reconnecting automatically
...
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.
2015-07-21 00:58:52 +02:00
mathieui
84eddd2ed2
Fix components
...
(use_tls is useless since slixmpp will always try to use starttls
whenever possible)
2015-07-21 00:33:15 +02:00
Joshua Downer
2042e1a4d5
iot: only add the 'done' field when all devices are done
2015-07-20 17:34:09 -04:00
Robert Robinson
be14f0cc52
XEP_0050: Form not iterable in command
...
Cannot pass in a form into the initial command and have it show up in the payload of the session. Line 344 makes this possible when following the standard workflow.
2015-07-15 20:52:06 -06:00
elya5
edd9199be8
Fix UnboundlocalError in disco_browser.py example
...
If self.get is in self.info_types and self.items_types, only self['xep_0030'].get_info is executed and not self['xep_0030'].get_items. So the condition in line 129 is successful but items is not assigned.
2015-07-09 17:15:36 +02:00
Mike Taylor
bb094cc649
Merge pull request #365 from jdowner/staging
...
Fixed imports
2015-07-05 15:46:04 -04:00
Mike Taylor
dbaa6ed952
Merge pull request #366 from jdowner/develop-iot-cleanup
...
Minor cleanup of IoT plugin
2015-07-05 15:45:47 -04:00
Mike Taylor
8c94d894ab
Merge pull request #369 from stevenroose/patch-2
...
Change to roster migration e
2015-07-05 15:45:19 -04:00
Mike Taylor
ffc7eac4dc
Merge pull request #370 from jdowner/develop-jid
...
Removed duplicate property
2015-07-05 15:44:58 -04:00
Mike Taylor
555fd6d926
Merge pull request #380 from anirudh-chhangani/XEP-0096-add-hash-param
...
add hash metadata for file transfer
2015-07-05 15:44:03 -04:00
Mike Taylor
c024ac8f0b
Merge pull request #382 from sangeeths/initialize_certificate
...
Initialize certfile, keyfile and ca_certs in XMLStream. Added **kwargs to ClientXMPP, BaseXMPP and XMLStream.
2015-07-03 15:07:35 -04:00
Sangeeth Saravanaraj
f00177c0cf
Added **kwargs to ClientXMPP, BaseXMPP and XMLStream so that certfile, keyfile and ca_certs can be initialized.
2015-07-03 10:47:06 +05:30
mathieui
d0ad25745a
Merge branch 'jid' of http://git.linkmauve.fr/slixmpp
2015-06-22 23:56:05 +02:00
Emmanuel Gil Peyrot
55be23a6da
Update the INSTALL file, and add a point about Cython.
2015-06-22 01:16:33 +01:00
Emmanuel Gil Peyrot
75ba283572
Store None instead of '' for unset parts of a JID.
2015-06-22 01:12:56 +01:00
mathieui
f7164d35d2
Add a wrapper to get_info/get_items functions
...
(and fix caps in the process)
2015-06-21 16:23:47 +02:00
Emmanuel Gil Peyrot
4afbb0322b
Rework slixmpp.jid’s JID classes to make them more efficient.
2015-06-20 01:49:48 +01:00
Emmanuel Gil Peyrot
7bce1ecc8a
Add a Cython version of slixmpp.stringprep, using libidn.
...
This makes the validation of a JID a *lot* faster.
2015-06-20 01:14:46 +01:00
Emmanuel Gil Peyrot
bbce16d526
Move stringprep and idna support in a different module than slixmpp.jid.
2015-06-20 01:14:46 +01:00
Emmanuel Gil Peyrot
c29fc39ef1
Remove JID cache, to better test for performance.
2015-06-20 01:12:03 +01:00
Emmanuel Gil Peyrot
8335c08782
Fix test_jid to not use deprecated ways to create JID objects, and add it a few more tests.
2015-06-20 01:12:03 +01:00
Anirudh
224d7ae133
add hash param to file metadata
2015-06-18 00:21:19 +05:30
Emmanuel Gil Peyrot
04bff00171
XEP-0030: return the iq.send() future when sending a disco#info or disco#items.
2015-06-14 15:11:24 +01:00
Emmanuel Gil Peyrot
f3e31baf04
Properly consider malformed IPv6 domains as invalid.
2015-06-12 11:52:48 +01:00
Sangeeth Saravanaraj
9b25a7cf77
Fixed typo.
2015-06-05 12:25:41 +05:30
Joshua Downer
7a908ac07b
Removed duplicate property
2015-05-28 09:35:50 -04:00
Steven Roose
92901637ec
Change to roster migration example
...
I did have the chance to test the script yet, but it seems like that line should be outside the for loop.
2015-05-25 01:01:08 +02:00
Joshua Downer
3590b663ed
xep-0323: removed deadcode
2015-05-14 06:27:59 -04:00
Joshua Downer
a33bde9cc3
xep-0323: spelling
2015-05-14 06:27:39 -04:00
Joshua Downer
ac50fdccfc
xep-0323: unused import
2015-05-14 06:26:54 -04:00
Joshua Downer
a0c6bf15e9
Fixed imports
...
Removed unused modules/packages and added getpass, which was missing.
2015-05-13 17:24:06 -04:00
mathieui
a2852eb249
Allow the use of a custom loop instead of asyncio.get_event_loop()
2015-05-12 00:02:32 +02:00
mathieui
f1e6d6b0a9
Advertize the disco#info feature in our disco#info
...
Actually a MUST in XEP-0030
2015-05-08 13:41:20 +02:00
Emmanuel Gil Peyrot
116a33ba51
Make syntax highlighting for XML lazy, to only call pygments when debug logs are enabled.
...
Makes poezio about 11% faster when sending/receiving messages.
2015-05-06 13:03:47 +02:00
Mike Taylor
a8ac115310
Merge pull request #363 from sangeeths/xep_0332
...
XEP_332: Prefixed request and response with "http"
2015-05-01 12:50:06 -04:00
Sangeeth Saravanaraj
1345b7c1d0
Misc updates for send_error()
2015-05-01 15:34:53 +05:30
Sangeeth Saravanaraj
d60a652259
data need not be prefixed with http..
2015-05-01 14:32:36 +05:30
Sangeeth Saravanaraj
61a7cecb31
Prefixed request, response and data with http. Avoided (plugin_attrib) name collision with other plugins.
2015-04-29 14:44:25 +05:30
Mike Taylor
192b7e0349
Merge pull request #345 from sangeeths/xep_0332
...
XEP-0332: HTTP over XMPP transport
2015-04-28 22:44:27 -04:00
Sangeeth Saravanaraj
80b60fc048
Merge remote-tracking branch 'origin/develop' into xep_0332
2015-04-28 16:53:40 +05:30
mathieui
b8d7b9520c
Fix some disco tests
...
The targeted JID was a bare JID, which is wrong since the XEP specifies
that such disco requests are handled by the server.
2015-04-21 20:10:47 +02:00
mathieui
0305ce66b7
Merge branch 'ibb' of http://linkmauve.fr/git/slixmpp
2015-04-19 20:53:35 +02:00
Emmanuel Gil Peyrot
474405ab90
XEP-0047: fix examples.
2015-04-19 20:48:02 +02:00
Emmanuel Gil Peyrot
4415d3be1a
XEP-0047: use coroutines for send(), sendall() and the new sendfile().
2015-04-19 20:48:02 +02:00
Emmanuel Gil Peyrot
058c530787
XEP-0047: prevent any unneededly large or useless bytes slice.
2015-04-19 20:48:01 +02:00
Emmanuel Gil Peyrot
766d0dfd40
XEP-0047: use asyncio’s Queue implementation, to prevent any possibility of deadlock.
2015-04-19 20:48:01 +02:00
Emmanuel Gil Peyrot
ac31913a65
XEP-0047: make open_stream() return a future that will be set to the stream object.
2015-04-14 19:14:56 +02:00
Emmanuel Gil Peyrot
d34ddf33db
XEP-0047: replace threading events with simple booleans.
2015-04-14 19:14:56 +02:00
Emmanuel Gil Peyrot
eb4e09b0ca
XEP-0047: allow only one window over the stream.
2015-04-14 19:14:56 +02:00
Emmanuel Gil Peyrot
ce085bf4f4
XEP-0047: announce the correct stanza type if message is selected.
2015-04-14 19:14:56 +02:00
Emmanuel Gil Peyrot
990113f8e7
XEP-0047: return the correct error type on not-acceptable (example 5).
2015-04-14 19:14:56 +02:00
Emmanuel Gil Peyrot
aa022204ee
XEP-0047: don’t answer with an unauthorized error when block-size is too big.
2015-04-14 19:14:56 +02:00
Emmanuel Gil Peyrot
c1f23b566b
XEP-0047: remove now-useless threading locks.
2015-04-14 19:14:56 +02:00
Emmanuel Gil Peyrot
45f7cb8bda
XEP-0047: prevent tracebacks in stanza reading.
2015-04-14 19:14:56 +02:00
mathieui
bdb1f66ac9
basexmpp: Add a message_error event
...
The "message" event only receives messages with a body, and error
messages don’t necessarily have it. Removing the body requirement from
the "message" event could lean to unhandled conditions in existing code.
2015-04-13 15:08:04 +02:00
Mike Taylor
842157a6cc
Merge pull request #187 from ekini/xep_0138
...
added xep-0138 support (compression)
2015-04-11 20:58:45 -04:00
Mike Taylor
a63cc01482
Merge pull request #316 from rakoo/develop
...
Extend AtomEntry capabilities
2015-04-11 20:53:44 -04:00
bear (Mike Taylor)
1bbb6f3ff9
Merge branch 'hildjj-develop' into develop
2015-04-11 20:43:56 -04:00
bear (Mike Taylor)
93894247a4
Merge branch 'develop' of https://github.com/hildjj/SleekXMPP into hildjj-develop
2015-04-11 20:42:33 -04:00
Mike Taylor
16bb5e2537
bump to version v1.4
2015-04-11 20:38:11 -04:00
Mike Taylor
d19a6e05b2
remove python v3.1 - v3.3 from tox.ini
2015-04-11 20:37:05 -04:00
Mike Taylor
86e85f9835
Merge pull request #313 from mayflower/develop
...
Proposing #310 again in fixed version
2015-04-11 20:12:19 -04:00
Mike Taylor
cc145d20b0
Merge pull request #297 from keith-gray-powereng/develop
...
Fixed a unicode error in xep_0065 on Python 3
2015-04-11 19:49:43 -04:00
Mike Taylor
881d9040c4
Merge pull request #329 from FlySnake/send_queue_overflow
...
In queues added option to remove first element on addind new if queue is full
2015-04-11 19:46:26 -04:00
Mike Taylor
1e77ea0944
Merge pull request #328 from FlySnake/develop
...
On initial connect use delay if connection failed
2015-04-11 19:20:39 -04:00
Mike Taylor
140f0885b2
Merge pull request #331 from mathieui/develop
...
Fix the element name for retrieving certs in XEP-0257
2015-04-11 19:15:26 -04:00
Mike Taylor
83f71a6610
Merge pull request #348 from gribouille-dev/tor_fixes
...
Makes XEP-0009 compatible with Python 2 & 3.
2015-04-11 18:32:42 -04:00
Mike Taylor
271343a32d
Merge pull request #349 from mulog1990/ssl-version-fix
...
ssl-version not passed to wrap_socket, fixed
2015-04-11 18:26:05 -04:00
Mike Taylor
48857b0030
Merge pull request #354 from erigones/develop
...
Fixed bug #353 Python3 XEP-0084 error
2015-04-11 18:12:40 -04:00
Mike Taylor
1fe7f5f4e6
Create .travis.yml
2015-04-11 17:45:23 -04:00
Emmanuel Gil Peyrot
d5b1904ebb
Use a full JID for testing.
2015-04-04 16:56:26 +02:00
Emmanuel Gil Peyrot
b6b0e82dec
Iq.send: set the timeout even when no timeout_callback is set
2015-04-04 16:48:30 +02:00
Emmanuel Gil Peyrot
632b7b4afe
XMLStream: add a forever parameter to process(), defaulting to True, to select whether we want to stop the event loop after a disconnection
2015-04-04 16:48:30 +02:00
Richard Kellner
81b7b2c190
Fixed bug #353 Python3 XEP-0084 error
2015-03-25 14:04:46 +01:00
mulog1990
460de7d301
ssl-version not passed to wrap_socket, fixed
2015-03-10 18:13:53 +08:00
Cédric Souchon
69022c6db7
Makes XEP-0009 compatible with Python 3 while maintaining compatibility with Python 2.6 and up.
2015-03-09 12:33:18 +01:00
Emmanuel Gil Peyrot
0ef3fa2703
XMLStream: factorize the highlight function so it can be used in tests as well
2015-03-02 17:10:27 +01:00
mathieui
8da269de88
Set XMLStream.socket after the SSL connection is made too
...
Fixes SCRAM-SHA-1-PLUS.
2015-02-28 20:32:33 +01:00
mathieui
93ce318259
XEP-0325: Don’t use threading
2015-02-28 19:05:22 +01:00
mathieui
997928de91
Revert or edit most previous XEP plugin changes
...
In a single commit, because it isn’t that interesting to detail each
change.
List of reverts:
Revert "XEP-0030: allow get_info and get_items to return a coroutine"
This reverts commit 506ca69917
.
Revert "XEP-0060: wrap all iq-sending functions with coroutine_wrapper"
This reverts commit e85fa4203e
.
Revert "XEP-0163: wrap publish() with coroutine_wrapper"
This reverts commit 69da1c1d7c
.
Revert "XEP-0084: wrap functions with coroutine_wrapper"
This reverts commit ea5615f236
.
Partially revert 3d243f7
(XEP-0054) - continue wrapping functions but with future_wrapper
Partially revert 115fe95
(xep-0153) - use callbacks rather than coroutine callbacks, and propagate iqtimeouts in set_avatar.
Revert "XEP-0049: wrap functions with coroutine_wrapper"
This reverts commit e68135f59f
.
Revert "XEP-0077: wrap functions with coroutine_wrapper"
This reverts commit 1e4944d47e
.
Partially revert cd7ff685
(XEP-0199) - remove the iq.send wrapping but keep ping() as a coroutine
Revert "XEP-0257: wrap functions with coroutine_wrapper"
This reverts commit 4da870fd19
.
Revert "XEP-0092: wrap get_version() with coroutine_wrapper"
This reverts commit 6e35948276
.
Revert "XEP-0191: wrap functions with coroutine_wrapper"
This reverts commit 6e8235544c
.
Revert "XEP-0280: wrap functions with coroutine_wrapper"
This reverts commit f795ac02e3
.
Revert "XEP-0012: wrap get_last_activity() with coroutine_wrapper"
This reverts commit 2ee05d9616
.
Revert "XEP-0202: wrap get_entity_time() with coroutine_wrapper"
This reverts commit 6fb3ecd414
.
Revert "XEP-0231: wrap get_bob() with coroutine_wrapper"
This reverts commit 17464b10a4
.
Revert "XEP-0258: wrap get_catalog() with coroutine_wrapper"
This reverts commit 18a4978456
.
Revert "XEP-0050: wrap send_command() and get_commands() with coroutine_wrapper"
This reverts commit e034b31d6b
.
Revert "XEP-0279: wrap check_ip() with coroutine_wrapper"
This reverts commit e112e86475
.
2015-02-28 19:02:49 +01:00
mathieui
83d00a5913
Fix examples relying on the changed API
2015-02-28 19:02:44 +01:00
mathieui
bf5d7c83af
Change the API to make iq.send() always return a future
...
remove coroutine_wrapper, add a future_wrapper (which is only needed
when the result stanza can be cached).
Update the documentation as well.
2015-02-28 19:02:35 +01:00
mathieui
c66a4d4097
Update the documentation and examples
...
- 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
2015-02-24 22:47:15 +01:00
mathieui
e112e86475
XEP-0279: wrap check_ip() with coroutine_wrapper
2015-02-24 22:46:08 +01:00
mathieui
e034b31d6b
XEP-0050: wrap send_command() and get_commands() with coroutine_wrapper
...
(if flow=True in send_command, the result will still be using the
default callbacks and the function will return None)
2015-02-24 22:46:07 +01:00
mathieui
18a4978456
XEP-0258: wrap get_catalog() with coroutine_wrapper
2015-02-24 22:46:07 +01:00
mathieui
17464b10a4
XEP-0231: wrap get_bob() with coroutine_wrapper
2015-02-24 22:46:07 +01:00
mathieui
6fb3ecd414
XEP-0202: wrap get_entity_time() with coroutine_wrapper
2015-02-24 22:46:07 +01:00
mathieui
c214e4f037
XEP-0084: fix setting and getting the Data value
...
get_value: return a bytes object
set_value: accept a bytes or a str object
2015-02-24 22:46:06 +01:00
mathieui
2ee05d9616
XEP-0012: wrap get_last_activity() with coroutine_wrapper
2015-02-24 22:46:06 +01:00
mathieui
f795ac02e3
XEP-0280: wrap functions with coroutine_wrapper
2015-02-24 22:46:06 +01:00
mathieui
6e8235544c
XEP-0191: wrap functions with coroutine_wrapper
2015-02-24 22:46:06 +01:00
mathieui
6e35948276
XEP-0092: wrap get_version() with coroutine_wrapper
2015-02-24 22:46:05 +01:00
mathieui
4da870fd19
XEP-0257: wrap functions with coroutine_wrapper
2015-02-24 22:46:05 +01:00
mathieui
cd7ff685fb
XEP-0199: wrap functions with coroutine_wrapper and make ping() a coroutine
2015-02-24 22:46:05 +01:00
mathieui
1e4944d47e
XEP-0077: wrap functions with coroutine_wrapper
2015-02-24 22:46:05 +01:00
mathieui
e68135f59f
XEP-0049: wrap functions with coroutine_wrapper
2015-02-24 22:46:04 +01:00
mathieui
6408c5a747
XEP-0115: fix a handler which expected an iq to block
2015-02-24 22:46:04 +01:00
mathieui
115fe954ac
XEP-0153: wrap functions with coroutine_wrapper
2015-02-24 22:46:04 +01:00
mathieui
3d243f7da5
XEP-0054: wrap functions with coroutine_wrapper
2015-02-24 22:46:04 +01:00
mathieui
ea5615f236
XEP-0084: wrap functions with coroutine_wrapper
2015-02-24 22:46:04 +01:00
mathieui
69da1c1d7c
XEP-0163: wrap publish() with coroutine_wrapper
2015-02-24 22:46:03 +01:00
mathieui
e85fa4203e
XEP-0060: wrap all iq-sending functions with coroutine_wrapper
2015-02-24 22:46:03 +01:00
mathieui
506ca69917
XEP-0030: allow get_info and get_items to return a coroutine
2015-02-24 22:46:03 +01:00
mathieui
8ac0ecdf40
Fix dns resolution without aiodns
...
(use loop.getaddrinfo instead of the blocking version)
2015-02-24 19:17:45 +01:00
mathieui
dbd8115557
Remove the filesocket shim (2.6 compatibility)
2015-02-24 19:08:12 +01:00
mathieui
74b4ea20bf
Add back stanza-specific exception handlers
...
(fixes the test suite too)
2015-02-23 17:43:35 +01:00
mathieui
11fbaa4241
Import xmlstream.asyncio and coroutine_wrapper at the top level
...
Since they will be used quite a lot in plugins.
2015-02-23 17:32:39 +01:00
mathieui
8fd0d7c993
Add a coroutine_wrapper decorator
...
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.
2015-02-23 17:32:31 +01:00
mathieui
1450d36377
Add a coroutine parameter to iq.send() to return a coroutine
...
(instead of exposing a different send_coroutine method)
2015-02-23 17:20:47 +01:00
mathieui
06358d0665
Use CallbackCoroutine with Iq callbacks too
2015-02-22 20:13:48 +01:00
mathieui
2b3b86e281
Allow event handlers to be coroutine functions
...
And do not copy data when running events with XMLStream.event()
2015-02-22 14:17:17 +01:00
mathieui
92e4bc752a
Add a “blocking” send_coroutine method to the Iq class
2015-02-21 23:45:30 +01:00
mathieui
ffb2e05f21
Check that ciphers have been initialized
...
(if not, python will use the system default)
2015-02-17 04:27:03 +01:00
mathieui
1e2665df19
Update the test suite.
...
- monkey-patch our own monkey-patched idle_call to run events immediatly
rather than adding them to the event queue, and add a fake transport
with a fake socket.
- remove the test file related to xep_0059 as it relies on blocking
behavior, and comment out one xep_0030 test uses xep_0059
- remove many instances of threading and sleep()s because they do
nothing except waste time and introduce race conditions.
- keep exactly two sleep() in IoT xeps because they rely on timeouts
2015-02-12 12:23:47 +01:00
mathieui
4d063e287e
Remove more threaded= and block= options from the plugins
...
(also, correct a typo)
2015-02-12 12:21:20 +01:00
mathieui
44f02fb3ab
Do the plugins post_init() upload loading
...
(the top_level boolean used to load them at this point wasn’t ever set
to true)
2015-02-12 12:18:32 +01:00
mathieui
f6b3a0c6cf
Fix the uses of stanza.reply()
...
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.
2015-02-12 12:17:01 +01:00
mathieui
8b36e918e8
Fix the componentxmpp interface
2015-02-12 12:11:50 +01:00
Sangeeth Saravanaraj
9044807121
Added help for running example..
2015-02-05 18:11:41 +05:30
Sangeeth Saravanaraj
24264d3a07
Updated Example..
2015-02-05 18:10:10 +05:30
Sangeeth Saravanaraj
8bc70264ef
misc updates..
2015-02-05 17:35:04 +05:30
Florent Le Coz
957c635fb7
XMLStream must provide the BaseProtocol interface
2015-02-04 17:49:30 +01:00
mathieui
4027927c6e
Don’t set the msg['from'] and msg['id'] in receipt.ack()
...
setting msg['id'] is wrong, and setting msg['from'] might lead to
echoing back wrong input.
2015-02-04 16:49:39 +01:00
Sangeeth Saravanaraj
c16b862200
Raise http_request and http_response events.
2015-02-03 12:33:25 +05:30
Sangeeth Saravanaraj
a96f608469
Composing request and response.
2015-01-29 08:33:40 +05:30
Sangeeth Saravanaraj
e1f25604ec
Added callbacks, registered stanzas, added features, etc.
2015-01-28 14:52:15 +05:30
Sangeeth Saravanaraj
0fe057b5c3
Boilerplate for Stanzas - request and response
2015-01-27 15:13:57 +05:30
Sangeeth Saravanaraj
be76dda21d
Added xep_0332 to setup
2015-01-23 10:29:21 +05:30
Sangeeth Saravanaraj
ecd124dd06
Boilerplate for xep_0332
2015-01-22 16:40:03 +05:30
Sangeeth Saravanaraj
4a8951c4ee
added xep_0332 to plugins
2015-01-22 16:39:27 +05:30
Sangeeth Saravanaraj
8afba7de85
renamed example for convenience.
2015-01-22 16:38:16 +05:30
Sangeeth Saravanaraj
1ce42d3a2f
Boilerplate example.
2015-01-22 11:30:38 +05:30
Sangeeth Saravanaraj
2f4d811db4
Fixed a typo in docs/guide_xep_0030.rst
2015-01-22 11:13:03 +05:30
Sangeeth Saravanaraj
61127f521d
Added PyCharm's .idea folder to .gitignore
2015-01-22 11:09:47 +05:30
mathieui
62eefdbd6a
Expose MUC support in disco#info
...
http://xmpp.org/extensions/xep-0045.html#disco-client
2015-01-15 22:50:49 +01:00
Florent Le Coz
225e07eb64
Fix the call of iscoroutinefunction()
2015-01-05 11:36:24 +01:00
Florent Le Coz
1207c81ab5
Do not copy the stanza before calling each handler
2015-01-03 18:42:57 +01:00
Florent Le Coz
565da65ccd
Use a deque for the idle list
2015-01-03 16:13:39 +01:00
Florent Le Coz
47fbd4cead
Delay the handling of stanza for when the process is not busy
...
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)
2015-01-03 06:08:03 +01:00
mathieui
1b9b4199e8
Make the ca_certs option useful again (CA-based cert validation)
...
It was broken since the fork.
2014-12-17 19:03:49 +01:00
mathieui
b5930ca958
Bring back authentication through SASL EXTERNAL
...
(and only update the ssl context before it gets used)
2014-12-11 19:27:13 +01:00
mathieui
063e73c0d2
Fix the element name for retrieving certs in XEP-0257
...
And s/258/257/ in the XEP description
2014-12-11 18:32:50 +01:00
mathieui
423974f90d
Fix xep-0257 for slixmpp, and fix an element name
2014-12-11 14:46:52 +01:00
Oleg Antonyan
d261318e1a
In queues added option to remove first element on addind new if queue is
...
full
2014-11-27 07:11:06 +02:00
Oleg Antonyan
d33cc00fe9
On initial connect use delay if connection failed
2014-11-23 16:46:01 +02:00
Florent Le Coz
5fcf08a415
Lower the timeout for each DNS resolution attempt
2014-11-14 01:13:52 +01:00
mathieui
3c06568ed5
Let loop.create_connection do its getaddrinfo coroutine if there are no dns records left/available
2014-11-12 22:22:20 +01:00
Lance Stout
27582f6fd2
Merge pull request #326 from s-m-b/patch-1
...
Typo fix of parameter name 'data' it is now 'iq'
2014-11-10 09:07:32 -08:00
s-m-b
e328ff4833
Typo fix of parameter name 'data' it is now 'iq'
...
Code was broken during refactoring
2014-11-09 04:36:38 +03:00
Florent Le Coz
68e35e631a
Also work without SRV records
2014-11-05 01:11:44 +01:00
mathieui
ad8c76602b
Depend on aiodns and not dnspython in the setup.py
2014-11-03 16:55:43 +01:00
Florent Le Coz
b5c98ba99e
Fix default value of dns_answers to None (instead of [])
2014-11-02 17:44:41 +01:00
mathieui
711f8dc6af
Use aiodns instead of dnspython to query DNS records
2014-11-02 17:26:29 +01:00
mathieui
5b41fb98de
Add the ssl_cert and ssl_invalid_chain back
...
- hack the stdlib to get the peercert, remove that hack when http://bugs.python.org/issue22768 gets fixed
2014-10-30 19:51:30 +01:00
mathieui
6da625dbdb
Make the "ciphers" option work again
2014-10-30 19:51:00 +01:00
mathieui
e862c47b8b
Remove the ssl_version option, as the defaults in python3.4 are sane
2014-10-30 19:49:26 +01:00
Florent Le Coz
4a8fe56470
Something something get_stanza_values
...
Fix something that was broken by Link Mauve
2014-10-11 21:04:28 +02:00
Emmanuel Gil Peyrot
7c3e61950d
Remove all deprecated alias in the core of slixmpp, and wherever they were used.
2014-09-28 23:58:46 +02:00
Emmanuel Gil Peyrot
61f89eef2e
Remove the now useless Queue wrapper in slixmpp.util.
2014-09-28 23:58:46 +02:00
Emmanuel Gil Peyrot
06de587ed2
Don’t check for logging.NullHandler, it got added in Python 3.1.
2014-09-28 23:58:46 +02:00
Emmanuel Gil Peyrot
49beb3ac08
Don’t set the wait time to True instead of leaving its float default, in examples.
2014-09-28 23:58:46 +02:00
Lance Stout
403462fdb8
Merge branch 'develop' of github.com:fritzy/SleekXMPP into develop
2014-09-09 08:50:24 -07:00
Lance Stout
f22d8e67b4
Preserve ID for error responses
...
Fixes #319
2014-09-09 08:49:37 -07:00
Emmanuel Gil Peyrot
e1c944d723
Improve run_tests.py, allowing it to run only specific tests.
2014-09-01 02:47:15 +02:00
Emmanuel Gil Peyrot
83442b9849
Remove useless ez_setup.py file, we use setuptools in the normal setup.py instead.
2014-09-01 02:47:15 +02:00
Emmanuel Gil Peyrot
edd6ffeb01
Clean setup.py, using modern 3.4 features.
2014-09-01 02:47:15 +02:00
Emmanuel Gil Peyrot
5a8881000c
Remove support for gevent, incompatible with python3.
2014-09-01 02:47:15 +02:00
Emmanuel Gil Peyrot
70839368c1
Fix indentation in xep_0016.
2014-09-01 02:47:15 +02:00
Emmanuel Gil Peyrot
9d8a2a1a7a
Remove all trailing semicolons.
2014-09-01 02:47:15 +02:00
Emmanuel Gil Peyrot
17174016ec
Remove all trailing whitespaces.
2014-09-01 02:47:15 +02:00
Emmanuel Gil Peyrot
ed37174a2b
Always use OrderedDict from collections, and remove its implementation in slixmpp.thirdparty.
2014-09-01 02:47:15 +02:00
Emmanuel Gil Peyrot
8660148960
Move examples from the deprecated optparse to argparse, and remove the redundant -v option.
2014-09-01 02:47:15 +02:00
Emmanuel Gil Peyrot
67ca2dd0f4
Import getpass from getpass, instead of using getpass.getpass everytime.
2014-09-01 02:47:15 +02:00
Emmanuel Gil Peyrot
882f984b26
Remove (usually) useless comments in examples about OpenFire and how to verify a certificate.
2014-09-01 02:47:15 +02:00
Emmanuel Gil Peyrot
6175cbcd99
Reintroduce XMLStream.process, making it run the asyncio event loop.
2014-09-01 02:47:08 +02:00
Emmanuel Gil Peyrot
476d76a533
Remove threaded from examples’ add_event_handler.
2014-09-01 02:42:45 +02:00
Emmanuel Gil Peyrot
df68bb4896
Remove raw_input usage and other python2 support in examples
2014-09-01 02:42:45 +02:00
Emmanuel Gil Peyrot
815e647c97
Set the shebang to python3 everywhere.
2014-09-01 02:42:45 +02:00
Emmanuel Gil Peyrot
ad70ffba59
Add pygments support to debug output.
2014-09-01 02:42:45 +02:00
Emmanuel Gil Peyrot
0e95015410
Remove sys.version_info checks for python2 and clean some imports.
2014-09-01 02:42:45 +02:00
Matthieu Rakotojaona
35f33f1614
Extend AtomEntry capabilities
2014-08-30 17:23:27 +02:00
Lance Stout
c9f8ddff65
Merge pull request #315 from louiz/develop
...
Fix saslprep on the username
2014-08-24 16:19:15 -07:00
Florent Le Coz
f5ae98aaf1
Fix saslprep on the username
...
Two issues fixed here:
- ints are not comparable with bytes, so char was never == to b',', which
renders the whole function pointless
- The bytes were converted back to “characters” by using chr(), which
doesn’t make sense if the username contains characters that fit on more
than one bytes. This would trigger an “invalid username” error from the
server when using a non-ascii JID.
2014-08-25 01:08:13 +02:00
Florent Le Coz
b92dac72f3
Fix saslprep for non-ascii usernames
2014-08-25 00:59:23 +02:00
Robin Gloster
073e85381a
fix args, kwargs which were broken with #310 . this is essentially the same but working
2014-08-23 14:25:35 +02:00
Robin Gloster
afc939708f
cleanup semicolons, whitespace and mutable default arguments
2014-08-23 12:47:29 +02:00
Lance Stout
aabec8b993
Fix some more Unicode in **kwargs issues in Py2.6
2014-08-21 10:05:42 -07:00
Lance Stout
e5e2fbb16b
Merge pull request #311 from Mayflower/develop
...
Revert "cleanup semicolons, whitespace and mutable default arguments"
2014-08-18 13:34:15 -07:00
Robin Gloster
3dd379cdf1
Revert "cleanup semicolons, whitespace and mutable default arguments"
...
This reverts commit 7265682a4d
.
2014-08-18 15:15:14 +02:00
Lance Stout
a20582aba4
Merge pull request #309 from Mayflower/whitespace_keepalive
...
only schedule whitespace keepalive if enabled
2014-08-17 17:21:25 -07:00
Lance Stout
09cdbf1b76
Merge pull request #308 from Mayflower/develop
...
Serialize JID to allow json serializing
2014-08-17 17:20:45 -07:00
Lance Stout
ca306e7cec
Merge pull request #310 from Mayflower/cleanup
...
Cleanup
2014-08-17 17:20:26 -07:00
Robin Gloster
1bf34f7fe6
fix mutable default arguments 💥
2014-08-18 00:55:10 +02:00
Robin Gloster
4144d60017
cleanup semicolons, whitespace and mutable default arguments
2014-08-18 00:55:10 +02:00
Robin Gloster
7265682a4d
cleanup semicolons, whitespace and mutable default arguments
2014-08-18 00:52:24 +02:00
Robin Gloster
08c62a6bf1
fix mutable default arguments 💥
2014-08-18 00:18:10 +02:00
Robin Gloster
d61f1cd035
only schedule whitespace keepalive if enabled
2014-08-17 23:38:07 +02:00
Robin Gloster
1063feb33b
only schedule whitespace keepalive if enabled
2014-08-17 23:37:19 +02:00
Robin Gloster
79f3c1ac8f
serialize JID to allow json serializing
2014-08-17 23:13:56 +02:00
Florent Le Coz
cdb9a6ff7e
Remove deprecated xmlstream/jid.py
2014-08-16 11:27:18 +02:00
Vincent Canfield
a59148dfeb
Remove google modules from setup.py file
2014-08-15 20:27:31 -07:00
Lance Stout
a5c03b763a
Merge pull request #305 from trinque/develop
...
Added wait param to XEP_0009 RemoteSession.close
2014-08-11 14:08:56 -07:00
Michael Trinque
3670d82f1c
Added wait param to XEP_0009 RemoteSession.close
...
This parameter is False by default to preserve existing behavior.
2014-08-10 16:02:10 -07:00
Florent Le Coz
07e46837d9
Fix some more blocking iq
2014-08-01 15:02:54 +02:00
Florent Le Coz
fa21e262c7
Add the 'connecting' event
2014-08-01 04:01:31 +02:00
Florent Le Coz
93934c7992
Improve the events triggered on failed authentication
...
Trigger failed_auth as before, once for each failed method
Trigger failed_all_auth once all method failed
Trigger no_auth only if we couldn’t even try one method
2014-08-01 03:16:22 +02:00
Florent Le Coz
73edd42774
Fix the connection (and a few minor things) in xmlstream
2014-07-30 17:57:57 +02:00
Florent Le Coz
ab03ad54aa
Fix the iq.send() function, and a bunch of places where it is called
...
This is a big-and-dirty commit with a bunch of cleanup, maybe breaking a few
things, and not fixing all iq.send() calls yet.
2014-07-30 17:52:59 +02:00
Florent Le Coz
2e571ac950
Remove all the google stuf
2014-07-24 01:57:20 +02:00
Florent Le Coz
6c15d65107
And that
2014-07-23 17:40:08 +02:00
Florent Le Coz
e5af0597a6
Forgot to remove that
2014-07-23 17:17:41 +02:00
Florent Le Coz
74117453b5
Cleanup how events are run, they are always direct by definition now
2014-07-23 17:01:17 +02:00
Emmanuel Gil Peyrot
5611b30022
Use ".remove()" instead of "is in" followed by ".pop()"
2014-07-22 11:16:06 +02:00
Florent Le Coz
ede9dcd18f
An other cleanup of xmlstream.py
...
Remove some useless things (like handling signals, managing the threads,
etc), add some comment to recently added/fixed methods…
2014-07-22 02:58:34 +02:00
Florent Le Coz
d3b56a5d94
Remove unused RestartStream exception
2014-07-22 02:18:48 +02:00
Florent Le Coz
f5d4334963
Remove the now useless state machine
2014-07-21 20:40:45 +02:00
Florent Le Coz
5c769632e8
Make connect(), abort() and reconnect() work
...
All the auto_reconnect, connect_retry logic and that kind of stuf has been
entirely removed.
2014-07-21 20:34:20 +02:00
Florent Le Coz
373505f483
Clean a new bunch of stuf
2014-07-21 20:32:09 +02:00
Florent Le Coz
a2cad40f91
Remove the send_thread() function, and the stop threading.event
2014-07-21 17:50:56 +02:00
Florent Le Coz
4328762076
Fix signature of init_plugins() function
2014-07-21 17:50:29 +02:00
Florent Le Coz
c2f6f07776
Make xmlstream use an asyncio loop
...
Scheduled events, connection, TLS handshake (with STARTTLS), read and write
on the socket are all done using only asyncio.
A lot of threads, and thread-related (and thus useless) things still remain.
This is only a first step.
2014-07-20 20:46:03 +02:00
Florent Le Coz
5ab77c7452
Rename to slixmpp
2014-07-17 14:19:04 +02:00
Keith Gray
e94a73553d
New version of the socks library socksipy from https://code.googlle.com/p/socksipy-branch/
2014-06-15 19:01:19 -05:00
Keith Gray
577fd71472
Fixed a unicode error in xep_0065 on Python 3
2014-06-15 18:40:58 -05:00
Lance Stout
e5582694c0
Bump to 1.3.1
2014-06-09 08:30:31 -07:00
Lance Stout
768136e493
Fix things again, this time for python3
2014-06-09 08:29:48 -07:00
Lance Stout
753cb3580e
Bump to 1.3.0
2014-06-08 20:01:07 -07:00
Lance Stout
60b050b82a
Make ssl args work in Python <=2.6.4
2014-06-08 19:59:40 -07:00
Lance Stout
ad91a8cd5e
Bring back use of dnspython for A/AAAA resolution.
...
This is behind a use_dnspython flag, however, so it can be disabled as
desired.
2014-06-08 19:51:57 -07:00
Lance Stout
02f79fc94b
Only request auto-receipts for messages with bodies
2014-06-07 20:20:42 -07:00
Lance Stout
230a73fad2
Fix own_host in ping plugin
2014-06-07 20:06:17 -07:00
Lance Stout
d94dd486fe
Merge pull request #294 from mofrank/develop
...
Fixes log.debug message in _connect_proxy
2014-05-16 08:43:39 -07:00
Lance Stout
6ecc39b816
Merge pull request #292 from 4gra/develop
...
Fix support for jabberd2 with GSSAPI
2014-05-16 08:43:26 -07:00
mofrank
9c240df9db
Fixes log.debug message in _connect_proxy
2014-05-16 08:49:01 -05:00
Graham
a918bf3a95
Support jabberd2 SASL with really empty response
...
Despite http://xmpp.org/rfcs/rfc3920.html#rfc.section.6.2 , jabberd version 2.2.14 cannot accept the typical "<response xmlns="urn:ietf:params:xml:ns:xmpp-sasl">=</response>". Instead it must be truly empty, so we force an empty response for this stanza only.
2014-05-14 22:32:51 +01:00
Graham
9434ae267f
support 'success' phase correctly
...
When the GSSAPI mechanism's process() function is invoked for the third time (on success) it must not attempt further processing. Instead it should clean the context and return an empty response.
2014-05-14 22:25:09 +01:00
Graham
94187d215a
don't use the kerberos.GSSError.message attribute
...
Replaced the reference to kerberos.GSSError.message in any raised exception, because:
DeprecationWarning: BaseException.message has been deprecated as of Python 2.6
and its natural repr is probably the most desirable output.
2014-05-14 17:47:34 +01:00
Joe Hildebrand
ef1c4368d0
Merge branch 'master' of git://github.com/fritzy/SleekXMPP into develop
...
# By Joe Hildebrand (2) and Lance Stout (1)
# Via Lance Stout
* 'master' of git://github.com/fritzy/SleekXMPP:
Relax timing issues in Iq timeout callback test.
update JID_CACHE logic again.
Allow IQ timeouts to be asynchronous, by passing a timeout_callback parameter to send(). An example modification of disco is included. If this approach is approved, I'll go through and update the other plugins.
Conflicts:
tests/test_stream_handlers.py
2012-10-31 14:44:51 -06:00
Joe Hildebrand
48def71d0c
Merge branch 'master' of git://github.com/fritzy/SleekXMPP into develop
...
# By Lance Stout
# Via Lance Stout
* 'master' of git://github.com/fritzy/SleekXMPP:
Turns out not all data is UTF-8, so don't try to decode it.
2012-10-31 12:49:33 -06:00
Joe Hildebrand
c8c20fff71
update JID_CACHE logic again.
2012-10-29 14:15:07 -06:00
Joe Hildebrand
75a18b5ffe
Allow IQ timeouts to be asynchronous, by passing a timeout_callback parameter to send(). An example modification of disco is included. If this approach is approved, I'll go through and update the other plugins.
2012-10-29 10:03:32 -06:00
ekini
ea3d39b50e
added xep-0138 support (compression)
2012-07-23 15:39:07 +07:00