Compare commits

...

1351 Commits

Author SHA1 Message Date
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
Lance Stout
ef2f5d2978 Merge branch 'develop' of github.com:fritzy/SleekXMPP into develop 2014-04-20 18:10:22 -07:00
Lance Stout
62671e0f56 Fix using SCRAM with ejabberd 2014-04-20 18:09:20 -07:00
Lance Stout
93869f77a0 Merge pull request #285 from lovesnow/develop
Fix Don't process vCard avatars for MUC occupants caused TypeError
2014-04-20 18:06:04 -07:00
Lance Stout
8282d135cc Bump version 2014-04-20 18:05:27 -07:00
Lance Stout
9acc78c81d Merge pull request #288 from tpltnt/develop
doc typo fixed
2014-04-20 17:56:56 -07:00
tpltnt
3642469630 doc typo fixed 2014-04-19 19:12:09 +02:00
lovesnow
34cd20339c Fix Don't process vCard avatars for MUC occupants caused TypeError 2014-02-21 10:31:04 +08:00
Lance Stout
7548f44047 Bump version 2014-02-14 13:53:25 -08:00
Lance Stout
7cf55ef695 Allow IQ processing based on only id value before the session is bound.
See issue #278
2014-02-14 13:50:21 -08:00
Lance Stout
543250da13 Bump version 2014-02-09 14:39:50 -08:00
Lance Stout
69e55d7316 Merge pull request #280 from allan-simon/develop
fixed setRole function,
2014-02-09 14:39:08 -08:00
Lance Stout
158411e918 Include stanza dirs 2014-02-09 14:36:36 -08:00
Lance Stout
3f873002c4 Bump minor version 2014-02-09 14:33:36 -08:00
Lance Stout
818f4e5973 Fix setup.py to include xep_0323 and xep_0325 2014-02-09 14:33:02 -08:00
Allan Simon
c8d6e512d2 fixed setRole function, the check where made against 'affiliation' values, now we do that against actual role values 2014-02-07 12:11:28 +08:00
Lance Stout
a2423b8499 Get the IoT plugins to pass tests on Py3 2014-02-06 09:54:45 -08:00
Lance Stout
49acdac776 Merge branch 'develop' of github.com:fritzy/SleekXMPP into develop 2014-02-06 09:20:24 -08:00
Lance Stout
7e1587faa2 Merge pull request #277 from allan-simon/develop
close #276, now we  trigger 'groupchat_message_error'
2014-02-06 09:19:24 -08:00
Lance Stout
84a6ed8e80 Merge pull request #272 from tfriem/develop
Fix X-FACEBOOK-PLATFORM authentication in Python3.
2014-02-06 09:18:54 -08:00
Lance Stout
654420e351 Add Py3.3 to list of supported versions 2014-02-06 09:14:22 -08:00
Lance Stout
651915f31c Add test for wrong sender in IQ 2014-02-06 09:13:28 -08:00
Lance Stout
d9db1b84fe Merge branch 'develop' of github.com:fritzy/SleekXMPP into develop 2014-02-03 19:19:15 -06:00
Lance Stout
bd03f071c6 Fix verifying 'from' for IQ results.
Closes issue #278
2014-02-03 19:15:08 -06:00
Allan Simon
eb6ac68d5c close #276, now we trigger 'groupchat_message_error' and muc::ROOM::message_error when we receive a message type=error from the server 2014-01-31 18:54:59 +08:00
Lance Stout
848e6ebd83 Merge pull request #275 from waechtjn/develop
XEP-0065 Implementation Broken
2014-01-26 16:53:50 -08:00
waechtjn
f76524fc9f Fixed XEP-0065 SOCKS5 socket closing
SCOKS5 SID were removed multiple times from the _sessions dictionary
2014-01-26 16:53:53 +01:00
waechtjn
b95532b68b Update xep_0065/proxy.py
Removed reference to undefined variable "conn"
2014-01-26 16:48:31 +01:00
Lance Stout
d002d4c06f Merge pull request #274 from anton-ryzhov/fixes
Examples and thread counting
2014-01-21 12:05:02 -08:00
Anton Ryzhov
7c03cc622c Thread counting fix 2014-01-21 19:28:17 +04:00
Anton Ryzhov
cebfd84416 Examples fixes 2014-01-21 16:19:27 +04:00
Lance Stout
12995e280e Merge pull request #270 from optiflows/fix_hosts
Don't use dnspython for A and AAAA (but keep it for SRV).
2014-01-15 09:51:43 -08:00
Lance Stout
4ae6d44efc Allow setting custom cipher suites in Py2.7+ 2014-01-13 10:14:10 -08:00
Tobias Friemel
01e1878900 Fix X-FACEBOOK-PLATFORM authentication in Python3. 2013-12-23 16:19:49 +01:00
Lance Stout
df9ad82336 Undo event name fix, due to breakage in Py2.x 2013-12-22 01:10:19 -08:00
Lance Stout
c183fd5e35 Merge pull request #271 from louiz/develop
Use strings for ElementTree.iterparse events names
2013-12-19 11:23:45 -08:00
Florent Le Coz
820d07f309 Use strings for ElementTree.iterparse events names
Because if cElementTree is not available on the system,
ElementTree is used instead, and that version doesn't accept
bytes, resulting in an exception. See
http://bugs.python.org/issue9257#msg152864
2013-12-19 11:47:31 +01:00
Guilhem Lettron
f4e3c04bbf Don't use dnspython for A and AAAA (but keep it for SRV).
dnspython don't perform a full resolv.
For example it don't manage /etc/hosts on linux.
2013-12-09 15:44:35 +01:00
Lance Stout
540d6e9dbb Merge pull request #267 from juanrmn/develop
Added a MUC method 'setRole'. Change role property of a nick in a room, ...
2013-11-26 21:18:34 -08:00
juanrmn
79a3a2befd Added a MUC method 'setRole'. Change role property of a nick in a room, useful for moderator bots. 2013-11-06 11:20:50 +01:00
Lance Stout
08a0fd5420 Merge pull request #265 from anton-ryzhov/delay_plugins
Check delay field existence
2013-10-23 11:09:05 -07:00
Anton Ryzhov
92d6bc6875 Check delay field existence
Import missing class
2013-10-23 13:33:52 +04:00
Lance Stout
fb5d20c4f8 Ensure PEP updates default to item if of 'current' 2013-10-09 11:28:09 -07:00
Lance Stout
65e3122f52 Update XEP-0319 plugin to track namespace change. 2013-09-27 00:37:02 -07:00
Lance Stout
be874e3c70 Fix deepcopying JIDs 2013-09-24 16:32:30 -07:00
Lance Stout
beae845281 Fix MAM start query 2013-09-24 16:07:50 -07:00
Lance Stout
6f64dac262 Add log message noting that SCRAM-SHA-1-PLUS requires Py3.3+ 2013-09-21 19:10:12 -07:00
Lance Stout
cd2d25cf87 Chmod +x examples, and add shebang lines 2013-09-20 11:50:51 -07:00
Lance Stout
b8b2f37e7b Make the ssl version log usable 2013-09-17 16:37:52 -07:00
Lance Stout
00152358de Normalize handling html body content
Closes issue #261
2013-09-13 10:01:33 -07:00
Lance Stout
a2784be4d6 Add MAM archived tags 2013-09-12 10:52:15 -07:00
Lance Stout
ad7a57103d ElementTree._escape_cdata isn't reliable across Python versions.
It also does not work as desired.

Revert "Merge pull request #254 from barreverte/develop"

This reverts commit 23750357e2, reversing
changes made to 07284f380f.
2013-09-12 10:39:10 -07:00
Lance Stout
19b24b276d Update MAM to use latest carbons. 2013-09-12 10:32:19 -07:00
Lance Stout
23750357e2 Merge pull request #254 from barreverte/develop
tostring.escape : optimization
2013-09-12 10:21:56 -07:00
Lance Stout
07284f380f Merge pull request #207 from spartanbits/pull_request_gevent_check
Pull request gevent check
2013-09-12 10:15:53 -07:00
Lance Stout
e60401278f Merge pull request #255 from anton-ryzhov/logging
Add null handler to logging engine
2013-09-05 16:27:43 -07:00
Lance Stout
24c474a9ec Merge branch 'xep_0323_325' of git://github.com/joachimlindborg/SleekXMPP into joachimlindborg-xep_0323_325
Conflicts:
	sleekxmpp/plugins/__init__.py
2013-09-05 16:26:18 -07:00
Joachim Lindborg
8fd3781ef5 added disco imformation, fixed some bugs in device 2013-09-04 14:57:27 +02:00
Joachim Lindborg
c85f2494a8 first functional IoT_Test 2013-09-03 22:51:11 +02:00
Lance Stout
6c2fa7a382 Fix pubsub owner subscriptions stanza 2013-08-30 08:51:46 -07:00
Joachim Lindborg
45689fd879 First implementation of the xep_0323 and xep_325 used in IoT systems. Tests are added for stanza and streams 2013-08-30 02:29:52 +02:00
Lance Stout
45a2cfb01b Merge branch 'develop' of github.com:fritzy/SleekXMPP into develop 2013-08-22 14:57:39 -07:00
Lance Stout
c4bb6c900c Don't reset _expected_server_name when connecting. 2013-08-22 14:54:53 -07:00
Lance Stout
f7c042fc77 Merge pull request #257 from di/patch-1
Typo in _validate_domain error message
2013-08-16 14:52:49 -07:00
Dustin Ingram
b20dc9fe2b Typo in _validate_domain error message
s/illegar/illegal/g
2013-08-16 17:47:26 -04:00
Anton Ryzhov
a030e05993 Add null handler to logging engine 2013-08-10 21:34:18 +04:00
Lance Stout
648b03f811 Make send_message(mhtml='..') work as expected without loading plugin
71.
2013-08-07 08:48:15 -07:00
Lance Stout
e57e321d33 Try re-ordering initial imports to avoid import bugs 2013-08-06 15:54:02 -07:00
Jean-Philippe Caruana
b6e53c7b1b escape: use xml.etree.ElementTree._escape_attrib to avoid duplication 2013-07-31 11:02:10 +02:00
Jean-Philippe Caruana
1c3bfd949b escape: imports at the top 2013-07-31 11:02:06 +02:00
Lance Stout
6401c9aaaa Add back ET and ElementBase references 2013-07-30 11:46:04 -07:00
Jean-Philippe Caruana
c02adbb8e1 tostring.escape : optimization
use of xml.etree.ElementTree._escape_attrib and xml.etree.ElementTree._escape_cdata
2013-07-30 18:51:23 +02:00
Jean-Philippe Caruana
88e64dbfae Merge remote-tracking branch 'upstream/develop' into develop 2013-07-30 18:02:03 +02:00
Lance Stout
afd48b9e08 Merge pull request #253 from kxepal/patch-1
Don't resolve AAAA records if there is no dnspython nor IPv6 support
2013-07-29 09:54:40 -07:00
Jean-Philippe Caruana
db0ab9a0b3 .gitignore: idea 2013-07-29 12:22:10 +02:00
Alexander Shorin
556e4bd74d Don't resolve AAAA records if there is no dnspython nor IPv6 support
If system doesn't has IPv6 support or dnspython package, socket.getaddrinfo 
with AF_INET6 flag return weird IP info for requested host, making SleekXMPP 
crush with more weird error.
2013-07-29 14:21:46 +04:00
Lance Stout
d439c4f215 Merge pull request #252 from jpcaruana/develop
refactor : optimize imports + replace mutable argument (a list) in StateMachine constructor
2013-07-29 02:24:33 -07:00
Jean-Philippe Caruana
a9f2e1482c fix: replace mutable argument (a list) in StateMachine constructor 2013-07-26 17:48:33 +02:00
Jean-Philippe Caruana
2c26fb0d76 optimize imports 2013-07-26 17:48:33 +02:00
Jean-Philippe Caruana
18dde97c8c refactor: no import * in tests 2013-07-26 13:02:26 +02:00
Lance Stout
85bc6f5301 Merge pull request #251 from jpcaruana/jid_performance 2013-07-25 11:23:27 -07:00
Jean-Philippe Caruana
8f364b9a95 performance in jid : replace __getattr__ et __setattr__ by @property and @xxx.setter
this implementatian is much more verbose but faster, especilally if you are dealing a lot with JIDs
on my box, ./testall.py now takes 45s. It takes 53s in the old implementation (about 15% faster)
2013-07-25 16:36:18 +02:00
Lance Stout
ee6c5632ac Merge pull request #248 from jakebasile/develop
Caught OSError when querying AAAA records.
2013-07-18 12:59:16 -07:00
Jake Basile
cc81a0e8da DRYed up the OSError/socket.gaierror handler. 2013-07-18 13:07:25 -05:00
Jake Basile
262652992d Caught OSError when querying AAAA records. 2013-07-18 08:25:28 -05:00
Lance Stout
eb63825dfd Merge branch 'develop' of github.com:fritzy/SleekXMPP into develop 2013-07-05 14:05:39 -07:00
Lance Stout
c49017c6f1 Update 319 plugin to update XEP-0012/256 last activity too. 2013-07-05 14:04:48 -07:00
Lance Stout
7d08bd3142 Merge pull request #247 from anton-ryzhov/block_queues
Blocking queue get
2013-07-01 00:12:25 -07:00
Anton Ryzhov
f12c241dca Blocking queue get 2013-07-01 10:30:43 +04:00
Lance Stout
cedc9dd175 Adjust get_roster to always return, even with invalid JIDs
Issue #245
2013-06-29 22:33:00 -07:00
Lance Stout
669e708b70 Fix import error 2013-06-23 18:24:35 -07:00
Lance Stout
e76a483931 Merge branch 'develop' of github.com:fritzy/SleekXMPP into develop 2013-06-22 14:35:20 -07:00
Lance Stout
c0437d2de8 Add roster migration example 2013-06-22 14:35:00 -07:00
Lance Stout
37a8043202 Merge pull request #244 from anton-ryzhov/speedup
Speedup main threads loops
2013-06-20 09:21:38 -07:00
Lance Stout
f4c69d4045 Merge pull request #243 from anton-ryzhov/skip_eintr
Skip EINTR errors on raw sockets
2013-06-20 09:19:53 -07:00
Anton Ryzhov
a3606d9e4d Fixed scheduler wait loop
Do fastloop wait until task run time
2013-06-20 18:30:07 +04:00
Anton Ryzhov
805f1c0e39 Use timeout constants instead of magic numbers in scheduler and event loop
Set default wait timeout as max() of previous values
2013-06-20 18:30:07 +04:00
Anton Ryzhov
7430a8ca40 Some optimizations in scheduler 2013-06-20 18:30:07 +04:00
Anton Ryzhov
1776e2edcc Skip EINTR errors on raw sockets 2013-06-20 18:29:53 +04:00
Lance Stout
baf9aaf26c Add test for nodeprep idempotency after explicitly using Unicode 3.2 2013-06-19 08:21:54 -07:00
Lance Stout
4864b07e13 Explicitly use Unicode 3.2 for StringPrep profiles.
See http://labs.spotify.com/2013/06/18/creative-usernames/
2013-06-19 00:28:11 -07:00
Lance Stout
13c919773e Merge branch 'develop' of github.com:fritzy/SleekXMPP into develop 2013-06-07 19:00:42 -04:00
Lance Stout
ed3a4fb8d4 Add support for XEP-0319, idle presence 2013-06-07 19:00:22 -04:00
Lance Stout
df3e826d0a Merge pull request #242 from Florob/xep-0084-id
Properly set itemID for XEP-0084 metadata
2013-06-07 10:09:30 -07:00
Florian Zeitz
a9e7d489b8 Properly set itemID for XEP-0084 metadata 2013-06-07 13:29:28 +02:00
Lance Stout
da6b549f8b Merge pull request #239 from SecurityForUs/add_95_96_to_setup
Add xep_0095 and xep_0096 to setup so they are installed into the egg
2013-05-27 13:40:57 -07:00
Eric Hansen
76e07a9089 Add xep_0095 and xep_0096 to setup so they are installed into the egg 2013-05-27 06:14:21 -04:00
Lance Stout
4a590d1497 Simplify stream method unregistration process 2013-05-26 14:53:28 -07:00
Lance Stout
82e1508d6f Make stream initiation methods unregisterable. 2013-05-26 14:50:01 -07:00
Lance Stout
400f08db9d Fix crash conditions in IBB 2013-05-22 14:27:14 -07:00
Lance Stout
e48b650caa Fix encrypting with GPG 2013-05-22 11:59:17 -07:00
Lance Stout
d9f595283a Merge pull request #234 from SecurityForUs/str_no_stripped
.stripped() would result in error
2013-05-22 10:19:52 -07:00
Eric Hansen
85fd14f47f .stripped() would result in error 2013-05-22 09:16:49 -04:00
Joachim Lindborg
b7adaafb3e First test stanza 2013-05-17 12:18:00 +02:00
Lance Stout
d0bba87cdd Only remap component namespaces for top level stream elements. 2013-05-14 14:28:16 -07:00
Lance Stout
2cc75d4bbd Update copyright years, and license for Suelta 2013-05-13 14:09:28 -07:00
Lance Stout
24bd591faa Update copyright for sasl modules. 2013-05-13 13:33:04 -07:00
Lance Stout
2e9ccd0623 Merge branch 'si_file_transfer' into develop 2013-05-11 12:48:47 -07:00
Lance Stout
7b49c82210 Add support for XEP-0152: Reachability Addresses 2013-05-11 12:22:56 -07:00
Lance Stout
d3284f1604 Merge pull request #232 from kstaniek/develop
Fix in tzoffset and _get_fixed_offset_tz
2013-05-09 12:19:35 -07:00
Klaudiusz Staniek
3279697128 Fix in tzoffset and _get_fixed_offset_tz
The tzoffset object is constructed with offset in minutes not in
seconds.
2013-05-09 20:59:00 +02:00
Lance Stout
60cfab995f Try preventing strptime thread safety problems.
Fixes #231
2013-04-27 03:56:20 -07:00
Lance Stout
8ec18bdb2c Carry scheduled kwargs all the way 2013-04-23 11:09:04 -07:00
Lance Stout
3c3cd65235 Update gitignore 2013-04-01 22:43:26 -07:00
Lance Stout
7ac75de19d Make XMLMasks match properly for components. 2013-04-01 20:57:16 -07:00
Lance Stout
fae39e1ab4 Fix some errors in the IBB plugin. 2013-03-29 13:16:18 -07:00
Lance Stout
3732139fc3 Save progress on SI file transfer 2013-03-29 13:16:18 -07:00
Lance Stout
0a2737dc77 Merge pull request #228 from anton-ryzhov/events
Some events refactoring
2013-03-28 12:20:38 -07:00
Anton Ryzhov
481971928c failed_auth data returned
Manual updated
2013-03-28 22:41:00 +04:00
Anton Ryzhov
020197718f Event index documentation updated 2013-03-28 22:09:33 +04:00
Anton Ryzhov
a0c77c04a5 XMLStream proxy_error event duplicated with connection_failed
SASL `no_auth` event duplicated with `failed_auth`
2013-03-28 22:09:33 +04:00
Anton Ryzhov
620ee9719f Changed failed_auth event according to manual 2013-03-28 22:09:33 +04:00
Anton Ryzhov
c0d02d9935 Remove roster_received event 2013-03-28 22:09:33 +04:00
Anton Ryzhov
01356d23e5 Log events triggering 2013-03-28 20:44:37 +04:00
Lance Stout
8b73c2bcff Merge branch 'develop' of github.com:fritzy/SleekXMPP into develop 2013-03-11 16:42:15 -07:00
Lance Stout
5a771dbe2f Prevent race condition in pubsub test. 2013-03-11 16:41:44 -07:00
Lance Stout
9ba5b644cf Add XEP-0196 for User Gaming, from mathieui 2013-03-11 16:26:26 -07:00
Lance Stout
f76f0c3787 Merge pull request #226 from imo/develop
Correct argument order by using keyword for keepalive.
2013-03-06 22:15:26 -08:00
Patrick Horn
01abd6a705 Correct argument order by using keyword for keepalive. 2013-03-06 21:35:07 -08:00
Lance Stout
44e2b5d945 Bump version in prep for 1.2.0 2013-02-28 11:53:24 -08:00
Lance Stout
82bbe5d1a6 Merge branch 'develop' 2013-02-25 09:53:35 -08:00
Lance Stout
a1d71d31e8 Merge branch 'develop' of github.com:fritzy/SleekXMPP into develop 2013-02-22 10:08:35 -08:00
Lance Stout
766e0b685d Clear out iterable data when resetting Disco items. 2013-02-22 10:07:19 -08:00
Lance Stout
58f5e4702b Merge pull request #224 from anton-ryzhov/no_deprecated_methods_usage
Don't use internally deprecated methods
2013-02-21 13:55:34 -08:00
Anton Ryzhov
d9906756cf Don't use internally deprecated methods 2013-02-22 01:48:03 +04:00
Lance Stout
9a45ebd98b Merge branch 'develop' 2013-02-19 01:01:09 -08:00
Lance Stout
7f9ff9d0e7 Use requested_jid instead of boundjid during binding. 2013-02-18 11:56:04 -08:00
Lance Stout
8c763fcf43 Merge pull request #223 from anton-ryzhov/resource_generation
Fixed resource generation via uuid
2013-02-18 11:54:20 -08:00
Anton Ryzhov
6dd4456b11 Fixed resource generation via uuid 2013-02-18 23:41:13 +04:00
Lance Stout
c30c47d291 Add XEP-0020 support. 2013-02-15 10:36:31 -08:00
Lance Stout
d8c9662302 Resolve most Python3.3 related issues.
Tests now run successfully. Occasionally get single error related to
duplicated payload data in pubsub items when copying stanza values.
2013-02-14 01:24:09 -08:00
Lance Stout
ec5e819b16 Merge branch 'develop' 2013-02-12 09:38:57 -08:00
Lance Stout
55e50ad979 Add XEP-0079 Advanced Message Processing plugin. 2013-02-12 01:30:44 -08:00
Lance Stout
99ecb166d3 More caps cleanup 2013-02-11 20:01:53 -08:00
Lance Stout
cdeae7e72f Make legacy caps log more useful, until we support legacy caps. 2013-02-11 19:53:57 -08:00
Lance Stout
fbf79755d7 Track which verstrings are being checked, so we don't request duplicates. 2013-02-11 19:49:38 -08:00
Lance Stout
78bd21b7cf Support using messages for IBB data transfer. 2013-02-11 18:08:34 -08:00
Lance Stout
88c7c29954 Ensure gmail last result time and tid are always updated. 2013-02-10 11:55:49 -08:00
Lance Stout
d4dde89ea6 Remove old_* plugins. 2013-02-10 11:47:58 -08:00
Lance Stout
774bf35fab Tidy up a bit 2013-02-10 11:47:47 -08:00
Lance Stout
1a2db7fb11 Merge branch 'xep_0077' 2013-02-10 11:30:37 -08:00
Lance Stout
da3223ac92 Merge branch 'develop' 2013-02-10 11:29:57 -08:00
Lance Stout
b0fed5a48d Merge pull request #221 from Roger/fix_gmail_notify_check
fixed gmail new mail notification check
2013-02-10 11:27:23 -08:00
roger
43132dab85 fix not blocking gmail notification check 2013-02-09 12:31:13 -03:00
roger
badd327360 fixed gmail new mail notification check
without the tid gmail ignores the query
2013-02-09 11:34:46 -03:00
Lance Stout
9a6bfc6614 Enable force_registration in the register account example. 2013-02-08 09:44:39 -08:00
Lance Stout
79914fb56b Add option to XEP-0077 plugin to force registration attempts. 2013-02-08 09:36:51 -08:00
Lance Stout
75a792eb6f Fix HTML-IM lang support. 2013-02-08 09:09:07 -08:00
Lance Stout
23f112602c Get tests to pass again.
Re-add old gmail_notify plugin for now.
2013-01-26 15:15:01 -08:00
Lance Stout
639a3aa832 Add Google plugins to setup.py 2013-01-26 14:40:23 -08:00
Lance Stout
79a8c5ceae Add proper XEP-0071 plugin. 2013-01-26 14:33:52 -08:00
Lance Stout
97a2f4449d Handle lang='*' in disco info 2013-01-26 14:31:08 -08:00
Lance Stout
7f42d15175 Fix ping event issue. 2013-01-26 14:12:44 -08:00
Lance Stout
ef9c8e910c Tighten up session checks in XEP-0050 plugin. 2013-01-25 09:52:29 -08:00
Lance Stout
a1b33da9ca Refactor Google GTalk extensions into a single meta plugin. 2013-01-24 23:05:05 -08:00
Lance Stout
1741059cf6 Add Google JID Domain Discovery plugin 2013-01-24 02:46:16 -08:00
Lance Stout
1f137735e1 Put StringPrep exception handler with the right try block. 2013-01-24 02:45:28 -08:00
Lance Stout
a186972f09 Ensure XMPPError.text is a string. 2013-01-24 02:45:14 -08:00
Lance Stout
751628401e Fixes for vCard avatar hash calculations and MUC considerations. 2013-01-24 02:44:27 -08:00
Lance Stout
403b1802ec Update tostring to inject xmlns definitions when needed. 2013-01-24 02:43:46 -08:00
Lance Stout
9165cbf7f6 Cleanup and expand XEP-0065 plugin. 2013-01-23 02:18:27 -08:00
Lance Stout
bad405bea9 Merge branch 'master' into develop 2013-01-21 02:34:22 -08:00
Lance Stout
4f9a95b011 Add plugin for Google's nosave feature. 2013-01-21 01:39:08 -08:00
Lance Stout
903e641457 Fix issues in Google settings plugin. 2013-01-21 01:38:42 -08:00
Lance Stout
f34b9399cc Simplify Gmail notifications. 2013-01-21 01:38:02 -08:00
Lance Stout
7d0d96f940 Add Google Settings plugin. 2013-01-20 23:59:28 -08:00
Lance Stout
27196a21ae Modernize the Gmail plugin. 2013-01-20 23:01:54 -08:00
Lance Stout
ea0381fa09 Remove old versions of some plugins. 2013-01-20 21:35:06 -08:00
Lance Stout
3423589ba1 Updated XEP-0199 to take and return standardized values.
Handles Iq errors appropriately when the recipient can't be found.
2013-01-20 20:14:16 -08:00
Lance Stout
1f9286d39e Add BoB data to message and presence stanzas. 2013-01-20 18:44:17 -08:00
Lance Stout
93b8e66b5d Remove unused portions of XMLMask 2013-01-20 16:24:50 -08:00
Lance Stout
a1716de683 Update tests for XEP-0092 2013-01-20 16:08:01 -08:00
Lance Stout
ccf7916257 Allow for simplified XPath namespaces 2013-01-20 15:43:02 -08:00
Lance Stout
d86adfa1b1 Updated XEP-0092 to take callbacks and return the version result stanza. 2013-01-20 13:54:01 -08:00
Lance Stout
648f3f978a Merge branch 'master' into develop 2013-01-16 23:37:05 -08:00
Lance Stout
5e4b8bd67c Ensure that initial vCard requests are sent. 2013-01-16 23:36:22 -08:00
Lance Stout
64ef690432 Merge branch 'master' into develop 2013-01-16 23:06:41 -08:00
Lance Stout
41991b5982 Fix logging for vcard lookup failure. 2013-01-16 23:06:13 -08:00
Lance Stout
01da222d67 Merge branch 'master' into develop 2013-01-16 22:33:05 -08:00
Lance Stout
518eee05c2 Set vCard avatar hash on startup. 2013-01-16 22:32:40 -08:00
Lance Stout
1dbfa29a1e Merge branch 'master' into develop 2013-01-16 16:26:35 -08:00
Lance Stout
6bac4741f6 Fix setting autojoin in bookmarks. 2013-01-16 16:26:19 -08:00
Lance Stout
a0266dac6f Merge branch 'master' into develop 2013-01-11 17:19:29 -08:00
Lance Stout
ce977a7809 Don't reset exponential backoff delay until a stream has been confirmed. 2013-01-11 17:18:58 -08:00
Lance Stout
8644a83ed9 Merge branch 'master' into develop 2013-01-09 22:14:00 -08:00
Lance Stout
7b45245b1d Fix sending BOB data in Python3 2013-01-09 22:13:44 -08:00
Lance Stout
f04f4e4a1a Merge branch 'master' into develop 2013-01-08 21:14:34 -08:00
Lance Stout
b07f1b3bd3 Give X-FACEBOOK-PLATFORM precedence over DIGEST-MD5 2013-01-08 21:14:05 -08:00
Lance Stout
0e7486d7b4 Merge branch 'master' into develop 2013-01-04 03:00:43 -08:00
Lance Stout
6c0afb87b9 Add XEP-0048 support 2013-01-04 00:32:14 -08:00
Lance Stout
e5750b368e Fix setting publish options for pubsub storage. 2013-01-04 00:25:46 -08:00
Lance Stout
ef76f923ad Merge branch 'master' into develop 2013-01-02 17:05:35 -08:00
Oskari Timperi
2c04ae084c util/sasl/mechanisms.py: SASLMutualAuthFailed not defined
SASLMutualAuthFailed was not imported from sleekxmpp.util.sasl.client
2013-01-02 17:05:23 -08:00
Lance Stout
91dc58d967 Fix startup issues with components using caps and vcards. 2013-01-02 17:04:27 -08:00
Lance Stout
0e2abe74d5 Merge pull request #215 from oswjk/patch-1
util/sasl/mechanisms.py: SASLMutualAuthFailed not defined
2013-01-02 12:57:02 -08:00
Oskari Timperi
fea444925e util/sasl/mechanisms.py: SASLMutualAuthFailed not defined
SASLMutualAuthFailed was not imported from sleekxmpp.util.sasl.client
2013-01-02 16:53:16 +02:00
Lance Stout
0998429b07 Merge branch 'master' into develop 2012-12-29 15:17:34 -08:00
Lance Stout
597eb1779c Fix other instance of inet_pton usage. 2012-12-29 15:17:15 -08:00
Lance Stout
9ae3a7dbff Merge branch 'master' into develop 2012-12-21 13:44:08 -08:00
Lance Stout
3519e845a3 Apparently twisted fills in inet_pton on Windows and uses different exceptions. 2012-12-21 13:43:38 -08:00
Lance Stout
29c049612a Merge branch 'master' into develop 2012-12-18 10:33:33 -08:00
Lance Stout
ed48185732 Fix unicode conversion in Python3 2012-12-18 10:33:14 -08:00
Lance Stout
f431bbfca2 Merge branch 'master' into develop 2012-12-14 09:37:45 -08:00
Lance Stout
8b29900be4 Fix some Python3 compatibility issues. 2012-12-14 09:37:29 -08:00
Lance Stout
6f8a4f8354 Merge branch 'master' into develop 2012-12-03 12:42:53 -08:00
Lance Stout
def34f0e42 Fix requesting channel binding from sockets that don't support it. 2012-12-03 12:42:30 -08:00
Lance Stout
e25a49f804 Merge branch 'master' into develop 2012-11-27 19:57:48 -05:00
Lance Stout
b820351f64 Fix DIGEST-MD5 support for picky servers 2012-11-27 19:54:46 -05:00
Lance Stout
0eb009496e Use the username credential instead of jid to enable ANONYMOUS auth. 2012-11-27 19:53:43 -05:00
Lance Stout
2c2498b658 Allow for more credential values to be user specified instead of auto-filled. 2012-11-27 19:53:04 -05:00
Pedro Vicente
a1d988fed5 Merge branch 'upgrading_sleekxmpp_1_1_11' into develop_sleek 2012-11-12 13:55:32 +01:00
Pedro Vicente
b0c50b7a59 Added gevent as parameter to testall checking test suite with gevent
enabled/disabled
2012-11-12 13:48:20 +01:00
Pedro Vicente
1a2b404076 Checked if gevent thread is patched to do the right import 2012-11-12 13:33:09 +01:00
Lance Stout
2d066c34fd Merge branch 'master' into develop 2012-11-09 09:58:51 -08:00
Lance Stout
7a1ed64985 Don't clobber SASL config when specifying sasl_mech in ClientXMPP constructor. 2012-11-09 09:57:20 -08:00
Lance Stout
1b449585f7 Merge pull request #205 from SeyZ/develop
Xep 0065 improvements
2012-11-04 16:01:22 -08:00
Sandro Munda
032d41dbb8 Adapted the xep_0065 plugin to be compatible with all kind of others XMPP
client.
Sent a 'socks_connected' xmpp event when the streamer is connected.
2012-11-04 11:44:33 +01:00
Sandro Munda
3a7569e3ea Avoided to log a debug message error when the socket is normally closed. 2012-11-01 11:38:55 +01:00
Sandro Munda
d444930494 Improved the gitignore files (vim temp file, .pyo file and .baboon directory).
Automatically pack & unpack data through the socket.

Added some comments to the pack method.

Handled possible error during the unpacking of data.
2012-11-01 11:17:05 +01:00
Lance Stout
6045a6bfb3 Bump version to 1.1.11 2012-11-01 11:17:05 +01:00
Lance Stout
f3f543b31e Merge branch 'master' into develop 2012-10-31 13:55:49 -07:00
Lance Stout
0fea4262ea Bump version to 1.1.11 2012-10-31 13:55:30 -07: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
Lance Stout
4b7ec4a32a Merge branch 'master' into develop 2012-10-31 13:42:32 -07:00
Lance Stout
2229ad8d8e Relax timing issues in Iq timeout callback test. 2012-10-31 13:41:55 -07:00
Joe Hildebrand
61aff9f49a update JID_CACHE logic again. 2012-10-31 13:27:31 -07:00
Joe Hildebrand
67235c4214 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-31 13:27:06 -07: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
Lance Stout
a00eee1bbe Merge branch 'master' into develop 2012-10-31 00:17:26 -07:00
Lance Stout
12e8bb6ddc Turns out not all data is UTF-8, so don't try to decode it.
Fixes issue #204
2012-10-31 00:16:58 -07: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
Lance Stout
06a690a259 Merge branch 'master' into develop 2012-10-24 13:07:19 -07:00
Paul Molodowitch
52feabbe76 added setdefaultencoding method so reload(sys) not needed
reload(sys) could cause problem in user code - ie, sys.stdout, excepthook, and displayhook would be reset, etc
2012-10-24 13:06:36 -07:00
Lance Stout
14c9e9a9cc Merge branch 'master' into develop 2012-10-24 13:00:01 -07:00
Lance Stout
a22ca228cc Lock the bound JID in the JID cache. 2012-10-24 12:56:54 -07:00
Lance Stout
d0666a5eb6 Update JID cache to do extra memoization and locking.
Passing cache_lock=True to JID() will insert the JID into the cache
and prevent it from being dropped from the cache.
2012-10-24 12:47:25 -07:00
Lance Stout
931d49560a Merge branch 'master' into develop 2012-10-24 01:23:08 -07:00
Lance Stout
2a4e435228 Enable gevent support.
Closes issues #166 and #167

Thanks to @pvicent, @chason, and @gabriel-samfira
2012-10-24 01:20:23 -07:00
Lance Stout
3655827ef2 Merge branch 'master' into develop 2012-10-22 20:10:07 -07:00
Lance Stout
c5046b9c91 Fix JID cache (wrong in-progress version comitted earlier) 2012-10-22 20:09:35 -07:00
Lance Stout
4598031dd2 Respond to probes when the subscription is 'from', not 'to'. 2012-10-22 19:22:27 -07:00
Lance Stout
12e0e1a16b Merge branch 'master' into develop 2012-10-22 13:58:12 -07:00
Lance Stout
5e9266ba90 Optimize generating JIDs with some caching. 2012-10-22 13:57:49 -07:00
Lance Stout
0d448b8221 Merge branch 'master' into develop 2012-10-19 00:15:21 -07:00
Lance Stout
e6c95f0a2a Add support for XEP-0257: Client Certificate Management for SASL EXTERNAL 2012-10-19 00:06:45 -07:00
Lance Stout
63b58edda1 Allow passing form instructions as a list of strings. 2012-10-19 00:06:45 -07:00
Lance Stout
af9632519c Always cache published vcard 2012-10-18 12:26:50 -07:00
Lance Stout
d367fb938d Recognize plugin stanzas when they're appended. 2012-10-18 12:26:17 -07:00
Lance Stout
77f2a339e1 Merge branch 'master' into develop 2012-10-15 22:27:30 -07:00
Lance Stout
4190027a78 Prevent xmlns="" in stream output.
This was causing problems for HTML-IM because the HTML is parsed
without a namespaced context.

While xmlns="" technically can be valid, it's usually wrong, so this will work
for now until the HTML-IM parsing is fixed.
2012-10-15 22:22:07 -07:00
Lance Stout
ef48a8c4d9 Simplify xep-0084 avatar metadata publishing. 2012-10-15 22:20:38 -07:00
Lance Stout
829b225053 Fix vcard-temp stanzas to include organization data. 2012-10-15 22:20:13 -07:00
Lance Stout
747a6e94e6 Auto-subscribe to whitelisted JIDs if auto_subscribe is true 2012-10-15 22:19:47 -07:00
Lance Stout
cebc798e72 Merge branch 'stream_features' 2012-10-15 15:00:23 -07:00
Lance Stout
7c485c6a8b Merge branch 'master' into develop 2012-10-14 17:35:37 -07:00
Lance Stout
e2e8c4b5dc Remove unneeded ssl_support checks. 2012-10-10 11:42:24 -07:00
Lance Stout
675c0112ac Correct handling deleting plugins when xml:lang is active. 2012-10-10 11:07:25 -07:00
Lance Stout
4dd2c15775 Update carbons plugin to use latest spec. 2012-10-10 10:48:30 -07:00
Lance Stout
9f6decdbc1 Fix XEP-0078 error handling 2012-10-05 09:49:04 -07:00
Lance Stout
fc07e23ff8 Merge branch 'master' into develop 2012-10-05 08:58:22 -07:00
Lance Stout
4ea328b9f2 Fix empty namespaces in XEP-0045 plugin. 2012-10-05 08:58:04 -07:00
Lance Stout
84a2fc382b Merge branch 'master' into develop 2012-10-02 09:51:24 -07:00
Lance Stout
098714b3c4 Unclobber connected event handler names.
Fixes issue #199
2012-10-02 09:25:30 -07:00
Lance Stout
cf2c94d974 Add stream_negotiated event.
Fires after all stream features have been processed.
2012-10-01 16:28:31 -07:00
Lance Stout
657102e938 Update legacy auth to be used outside of stream features.
Also, add detection of legacy XMPP version.
2012-10-01 16:27:55 -07:00
Lance Stout
44e7585bf8 Merge branch 'master' into develop 2012-09-30 17:15:13 -07:00
Lance Stout
94488fa2ea Expand warning for missing ASN1 parser to include pyasn1_modules 2012-09-30 17:14:45 -07:00
Lance Stout
a2c60a4911 Merge branch 'master' into develop 2012-09-28 11:02:57 -07:00
Lance Stout
ee9c4abd08 Add support for XEP-0091: Legacy Delayed Delivery 2012-09-26 01:47:45 -07:00
Lance Stout
b5b1c932c7 Add support for XEP-0013: Flexible Offline Message Retrieval 2012-09-26 01:47:05 -07:00
Lance Stout
b8f04983e1 Allow disco queries to got to server when no JID is specified and marked not local. 2012-09-26 01:42:51 -07:00
Lance Stout
90807dd973 Fix RSM tests 2012-09-25 23:22:49 -07:00
Lance Stout
ef974114ea Add support for XEP-0313: Message Archive Management
NOTE: XEP-0313 is still very experimental, and there will likely be
      API changes in the future.
2012-09-25 20:20:43 -07:00
Lance Stout
f6e1fecdf8 Add Collector stanza handler class.
This style of handler is necessary for capturing result sets from
queries that use multiple messages to send the results instead of
in a single result stanza. Notably, XEP-0313 (MAM).
2012-09-25 20:20:22 -07:00
Lance Stout
94e8b2becf Update RSM iterator to specify where to look to count result sizes. 2012-09-25 20:17:37 -07:00
Lance Stout
a6ca6701a0 Add XEP-0308 Last Message Correction support 2012-09-25 12:35:53 -07:00
Lance Stout
c4edb9724b Fix copyright year 2012-09-25 12:27:44 -07:00
Lance Stout
b5c669bdff Add options to auto add ID values to message and presence stanzas. 2012-09-25 12:26:56 -07:00
Lance Stout
e449dce65c Fix handling forwarded stanzas to do proper lookups and deletions. 2012-09-25 12:25:45 -07:00
Lance Stout
73ce9a5ecc Merge branch 'master' into develop 2012-09-25 02:45:48 -07:00
Lance Stout
671f680bb3 Add support for XEP-0280 Message Carbons 2012-09-25 02:34:51 -07:00
Lance Stout
dfff19ffbf Add XEP-0297: Stanza Forwarding support 2012-09-24 22:59:19 -07:00
Lance Stout
a4abdf9fa6 Fix deleting non-existent stanza plugins. 2012-09-24 21:00:23 -07:00
Lance Stout
6c57bb0553 Simplify stringifying XML 2012-09-24 20:59:51 -07:00
Lance Stout
d385b9e708 Merge branch 'master' into develop 2012-09-18 10:37:04 -07:00
Lance Stout
c2ae1ee891 Remove race condition when aborting while connecting/reconnecting. 2012-09-18 10:35:53 -07:00
Lance Stout
67147570e9 Merge branch 'master' into develop 2012-09-13 11:00:58 -07:00
Lance Stout
fb3e6b7e35 Don't break checking certs for localhost. 2012-09-13 11:00:29 -07:00
Lance Stout
cf28d4586d Add support for XEP-0049: Private XML Storage 2012-09-11 20:39:32 -07:00
Lance Stout
f65eb5eeea Add support for Google's X-OAUTH2 SASL mechanism 2012-09-11 20:29:22 -07:00
Lance Stout
26fa9bd87e Don't perform caps lookup if the disco info is already known. 2012-09-11 20:28:28 -07:00
Lance Stout
0016d9a638 Add support for XEP-0279: Server IP Check 2012-09-04 20:39:43 -07:00
Lance Stout
a88b9737ff Add support for XEP-0235: OAuth over XMPP 2012-09-04 19:42:49 -07:00
Lance Stout
df9ac58d05 Merge branch 'master' into develop 2012-09-01 13:57:24 -07:00
Lance Stout
357406d801 Map <group /> elements with no content to '' instead of None. 2012-09-01 13:56:48 -07:00
Lance Stout
19a78f63f4 Merge branch 'master' into develop 2012-08-24 11:51:03 -07:00
Lance Stout
c7ec6a72cd Add catch-all chatstate event. 2012-08-24 11:47:21 -07:00
Florian Fieber
e68b07dbce Fix get_blocked() in XEP-0191 2012-08-24 11:44:56 -07:00
Lance Stout
e20610ab80 Merge pull request #197 from FlorianFieber/develop
Fix get_blocked() in XEP-0191
2012-08-23 11:04:30 -07:00
Lance Stout
1ca0c46333 Special plugin loading case for xep_0115 no longer needed. 2012-08-23 00:23:32 -07:00
Florian Fieber
e510875f64 Fix certificate expiration scheduler
timedelta.seconds does not store the total seconds of a time span.
Internally, seconds is the next smaller unit to days, hence
timedelta.seconds will never exceed (or reach) the number of seconds
in a day (60*60*24=86400)
2012-08-23 00:22:22 -07:00
Florian Fieber
f52a10b061 Fix get_blocked() in XEP-0191 2012-08-23 03:57:05 +02:00
Lance Stout
7d382a2bfd Merge pull request #195 from FlorianFieber/develop
Fix certificate expiration scheduler
2012-08-19 10:11:17 -07:00
Florian Fieber
09bec1c4fe Fix certificate expiration scheduler
timedelta.seconds does not store the total seconds of a time span.
Internally, seconds is the next smaller unit to days, hence
timedelta.seconds will never exceed (or reach) the number of seconds
in a day (60*60*24=86400)
2012-08-19 16:40:22 +02:00
Lance Stout
ff28b0a005 Merge branch 'master' into develop 2012-08-17 10:18:11 -07:00
Lance Stout
8a03bd72ae Ensure that auth is done based on the original, requested JID and not on the bound JID. 2012-08-17 10:17:35 -07:00
Lance Stout
a249f8736a Merge branch 'master' into develop 2012-08-14 11:06:54 -07:00
Lance Stout
f0e1fc5aad Fix using PLAIN over older SSL method. 2012-08-14 11:06:36 -07:00
Lance Stout
f09adf0014 Merge branch 'master' into develop 2012-08-14 09:55:05 -07:00
Lance Stout
c6ac64ed2d Help prevent race condition dealing with auto_reconnect 2012-08-14 09:54:38 -07:00
Lance Stout
04dc68f5f6 Merge branch 'master' into develop 2012-08-13 11:12:41 -07:00
Lance Stout
92be051450 Handle Iq errors/timeouts in XEP-0153 hash reset. 2012-08-13 11:09:35 -07:00
Lance Stout
5c25208fb5 Merge branch 'master' into develop 2012-08-12 22:36:23 -07:00
Lance Stout
779c258e27 Fix ISO date parsing fallback.
Closes issue #194
2012-08-12 22:35:42 -07:00
Lance Stout
962dfad216 Merge branch 'master' into develop 2012-08-10 14:15:55 -07:00
Lance Stout
f7a710e55b Add abort() method to kill the session and stop all processing without properly closing the stream. 2012-08-10 14:12:05 -07:00
Lance Stout
814a50e36f Fix handling state machine lock when quick exiting. 2012-08-10 14:11:44 -07:00
Lance Stout
230465b946 Fix unicode conversion utility. 2012-08-10 12:41:29 -07:00
Lance Stout
d11a67702e Exit transition immediately if already in the desired state. 2012-08-10 12:41:02 -07:00
Lance Stout
4e12e228cb Fix tracking service name for DIGEST-MD5 2012-08-10 12:40:28 -07:00
Lance Stout
4a94aeba49 Save a user's chosen, persistent nickname in the MUC roster data as 'alt_nick'
The use of <nick /> elements in MUCs is now discouraged in XEP-0172, however.
2012-08-07 19:33:17 -07:00
Lance Stout
14aa831169 Merge branch 'master' into develop 2012-08-07 16:45:20 -07:00
Lance Stout
295d23ccf3 Fix disco browser example to handle errors. 2012-08-07 16:44:52 -07:00
Lance Stout
75d904ed01 Merge branch 'master' into develop 2012-08-07 01:40:29 -07:00
Lance Stout
aebcf6ff82 Re-add connection delay after exhausting DNS records. 2012-08-07 01:38:15 -07:00
Lance Stout
8c2ece3bca Ensure self._der_cert exists even if no certs are used. 2012-08-04 21:37:46 -07:00
Lance Stout
80a90a6221 Prevent auto_reconnect interference when disconnecting. 2012-08-04 21:10:45 -07:00
Lance Stout
f81d5e4bd6 Merge branch 'master' into develop 2012-08-02 13:47:37 -07:00
Lance Stout
2324c90232 Ensure default authzids are handled. 2012-08-02 13:47:06 -07:00
Lance Stout
2f65fdbc76 Merge branch 'master' into develop 2012-08-01 23:03:56 -07:00
Lance Stout
59ff08174f Fix SASL exceptions in Py3 2012-08-01 17:43:38 -07:00
Lance Stout
2f4149c7d0 Merge branch 'master' into develop 2012-08-01 11:11:54 -07:00
Lance Stout
b84e359770 Use the proper mappings for nodeprep. 2012-08-01 11:11:40 -07:00
Lance Stout
fb4275648c Merge branch 'master' into develop 2012-08-01 09:05:47 -07:00
Lance Stout
475ccfa8dc Use correct method for getting channel binding. 2012-08-01 09:04:58 -07:00
Lance Stout
267c24c8ef Fix encoding issue in Python3. 2012-08-01 09:04:41 -07:00
Lance Stout
06a9d9fc30 Merge branch 'master' into develop
Conflicts:
	sleekxmpp/thirdparty/__init__.py
2012-07-31 21:33:19 -07:00
Lance Stout
1383ca19b5 Fix disco in XEP-0050 plugin.
Closes issue #191
2012-07-31 09:20:57 -07:00
Lance Stout
4c3ff2abab Add XEP-0242 plugin for 2010 Client Compliance 2012-07-30 22:07:49 -07:00
Lance Stout
7c6ef18e4f Add initial support for XEP-0016 Privacy Lists 2012-07-30 22:07:24 -07:00
Lance Stout
f8856467d5 Fix setup.py after moving SASL stuff. 2012-07-30 22:06:55 -07:00
Lance Stout
3bd84b8d27 Ignore roster updates with unrecognized subscription values. 2012-07-30 19:44:13 -07:00
Lance Stout
bc8b5774ac Fix logging of SASL errors. 2012-07-30 19:43:49 -07:00
Lance Stout
8009b0485e Add stream feature for server support of subscription pre-approvals. 2012-07-30 19:30:01 -07:00
Lance Stout
8742a56b3e Actually commit file of byte and hash utilities. 2012-07-30 19:29:33 -07:00
Lance Stout
a792bcdafe Ensure that sasl mechs that don't require security options work. 2012-07-30 19:15:10 -07:00
Lance Stout
167d1ce97b Add fields for setting client cert and key for SASL EXTERNAL. 2012-07-30 19:15:10 -07:00
Lance Stout
695cd95657 Update and integrate Suelta. 2012-07-30 19:15:10 -07:00
Lance Stout
44ce01a70b Merge branch 'master' into develop 2012-07-30 09:08:58 -07:00
Lance Stout
e4b4c67637 Bump version to 1.1.10 2012-07-30 09:04:15 -07:00
Lance Stout
422e77ae40 Don't wait to retry connection if out of DNS records. 2012-07-29 17:26:04 -07:00
Lance Stout
5ae6c8f8fa Add support for XEP-0131: Standard Headers and Internet Metadata 2012-07-28 01:06:21 -07:00
Lance Stout
54656b331a Restrict caps updates to available presences (not subscriptions, etc). 2012-07-27 15:51:35 -07:00
Lance Stout
9047b627a4 Only broadcast vCard hashes for available presences (not subscriptions, etc). 2012-07-27 15:48:15 -07:00
Lance Stout
6645a3be40 Compile JID pattern regex. 2012-07-27 11:24:01 -07:00
Lance Stout
c2189b4ecd Merge branch 'master' into develop 2012-07-27 10:45:52 -07:00
Jonas Wielicki
e3fab66dfb Allow tasks to remove themselves during execution
The scheduler class is now capable with dealing with tasks which remove
themselves from the scheduler during execution.

Additionally, some optimizations were applied by use of iterators and
some functions better suited for the purpose.

Please peer-review, all tests pass.
2012-07-27 10:45:23 -07:00
Lance Stout
5867f08bf1 Improve docs and fix typo in stringprep profiles. 2012-07-26 23:35:23 -07:00
Lance Stout
a06fa2de67 Enhance plugin config with attribute accessors.
This makes updating the config after plugin initialization much easier.
2012-07-26 23:04:16 -07:00
Lance Stout
c9b2cf6043 Merge branch 'master' into develop 2012-07-26 12:24:34 -07:00
Lance Stout
35396d2977 Don't include a 'from' JID when requesting vCards as a client. 2012-07-26 11:55:54 -07:00
Lance Stout
3bff743d9f Fix logging statement for MUC invitations. 2012-07-26 11:53:07 -07:00
Lance Stout
5a878f829b Fix error with session binding in components. 2012-07-26 11:50:59 -07:00
Lance Stout
16ec0f151a Merge branch 'master' into develop 2012-07-25 01:47:26 -07:00
Lance Stout
26dc6e90ea Add example for setting an avatar. 2012-07-25 01:37:03 -07:00
Lance Stout
94c749fd5a Fix avatar hash advertising. 2012-07-25 01:36:31 -07:00
Lance Stout
7b80ed0807 Substitute a blank JID for the boundjid in API calls. 2012-07-25 01:33:44 -07:00
Lance Stout
98b7e8b10a Fix initializing plugins in stanzas with a language set. 2012-07-25 01:33:17 -07:00
Lance Stout
c42f1ad4c7 Merge branch 'master' into develop 2012-07-24 20:01:18 -07:00
Lance Stout
9d8de7fc15 Fix publish vcard avatars, and PEP avatar metadata. 2012-07-24 19:43:39 -07:00
Lance Stout
70883086b7 Modify update_roster() to only change the information provided.
Before: Not specifying the groups, name, etc would remove them from the
        roster entry.

After: Any parameters not specified are populated with the current
       roster entry's values.
2012-07-24 16:48:24 -07:00
Lance Stout
9a08dfc7d4 Add support for using CDATA for escaping.
CDATA escaping is disabled by default, but may be enabled by setting:

    self.use_cdata = True

Closes issue #114
2012-07-24 03:25:55 -07:00
Lance Stout
3e43b36a9d Standardize importing of queue class.
This will make it easier to enable gevent support.
2012-07-24 02:39:54 -07:00
Lance Stout
352ee2f2fd Fix JID validation bugs, add lots of tests. 2012-07-24 01:43:20 -07:00
Lance Stout
78aa5c3dfa Add more validation for 0 length JID components. 2012-07-24 01:43:20 -07:00
Lance Stout
613323b5fb Finish docstrings for jid.py 2012-07-24 01:43:20 -07:00
Lance Stout
6c4b01db8a Add plugin for advertising XEP-0106 support. 2012-07-24 01:43:20 -07:00
Lance Stout
d06897a635 Add backwards compatibility shim for the old jid.py location. 2012-07-24 01:43:20 -07:00
Lance Stout
1600bb0aaf Cleanup and docs. 2012-07-24 01:43:20 -07:00
Lance Stout
b5c9c98a8b Add JID escaping support. 2012-07-24 01:43:20 -07:00
Lance Stout
e4e18a416f Add validation for JIDs. 2012-07-24 01:43:20 -07:00
Lance Stout
01cc0e6def Add 'by' attribute for error stanzas. 2012-07-23 21:48:19 -07:00
Lance Stout
a3ec1af205 Merge branch 'master' into develop 2012-07-23 01:52:55 -07:00
ekini
d571d691a7 old clients still support xep-184/1.0 version
Now psi (and probably miranda) correctly receive delivery receipts.
2012-07-23 01:52:45 -07:00
ekini
ea3d39b50e added xep-0138 support (compression) 2012-07-23 15:39:07 +07:00
Lance Stout
2e580304f9 Merge branch 'master' into develop 2012-07-22 14:02:26 -07:00
Lance Stout
fb221a8dc0 Add XEP-0133 support, which just makes the appropriate XEP-0050 calls. 2012-07-22 13:58:23 -07:00
Lance Stout
459e1ed345 Handle Windows newlines in XEP-0027.
Closes issue #184
2012-07-22 12:15:46 -07:00
Lance Stout
6680c244f5 Fix deprecation warning for setting self.resource 2012-07-20 22:04:36 -07:00
Lance Stout
06423964ec Fix description of XEP-0222 plugin. 2012-07-20 22:03:17 -07:00
Lance Stout
5492e9028d Merge branch 'master' into develop 2012-07-20 18:15:54 -07:00
Lance Stout
474390fa00 Add example for retrieving avatars. 2012-07-20 18:10:14 -07:00
Lance Stout
81d3723084 Add event for vCard avatar update. 2012-07-20 18:07:27 -07:00
Lance Stout
32e798967e Fix see-other-host handling if no host is actually given. Also, limit number of consecutive redirection attempts. 2012-07-20 15:28:18 -07:00
Lance Stout
060c9ab679 Merge branch 'master' into develop 2012-07-20 00:25:32 -07:00
Lance Stout
acd9c32a9f Bump version to 1.1.9 2012-07-20 00:17:53 -07:00
Lance Stout
b8581b0278 Of course Peter goes and changes the XEP title the day after I implement it. 2012-07-19 23:59:35 -07:00
Lance Stout
917faecdcb Fix issue of roster data being split across multiple rosters.
Resolved by always normalizing JIDs to bare form, regardless of if they
are JID objects or strings.

Also simplified related code to prefer use of JID objects instead of
strings so they don't need to be parsed multiple times.
2012-07-19 23:54:18 -07:00
Lance Stout
78f0325398 Merge branch 'master' into develop 2012-07-16 20:13:35 -07:00
Lance Stout
f6edaa56a6 Add plugin for XEP-0191: Simple Communications Blocking 2012-07-16 20:10:14 -07:00
Lance Stout
51fee28bf4 Add a warning log if dnspython is not found for SRV lookup.
Closes issue #183
2012-07-16 19:38:50 -07:00
Lance Stout
e8a3e92ceb Update plugins to use session_bind handler for disco, and use plugin_end 2012-07-10 01:37:44 -07:00
Lance Stout
5df3839b7a Add method to remove a filter. 2012-07-10 01:37:23 -07:00
Lance Stout
8dcb441f44 Add default plugin session_bind handler.
All plugins may now simply define a session_bind method where disco
features and other actions which require the bound JID may be done.
2012-07-10 01:36:21 -07:00
Lance Stout
a347cf625a Add session_bind_event threading event. 2012-07-10 01:35:57 -07:00
Lance Stout
46f49c7a12 Add method to unregister stream features. 2012-07-10 01:35:25 -07:00
Lance Stout
99701c947e Prevent None from being added to the schedule from a timing issue. 2012-07-09 22:59:26 -07:00
Lance Stout
1baae1b81e Fix issues of disco info leaking between entities with the same bare JIDs.
To ensure that disco info, or any settings which depend on the bound
JID, are correct, only set such information on or after the
session_bound event has fired.
2012-07-09 22:22:05 -07:00
Lance Stout
7d20f0e9a6 Fix missing import in xep_0256 plugin. 2012-07-09 22:21:40 -07:00
Lance Stout
fbad22a1cd Merge pull request #181 from whooo/upstream
Fix for the RSM iterator
2012-07-09 09:25:09 -07:00
Erik Larsson
5af2f62c04 Make sure that the last RSM stanza is returned from the iterator 2012-07-08 23:27:13 +02:00
Jay Farrimond
4a4a03858e dereference iq stanza only once for roster processing 2012-07-06 14:03:41 -07:00
Lance Stout
1efe049959 Merge pull request #180 from jay-instaedu/develop
dereference iq stanza only once for roster processing
2012-07-06 13:58:46 -07:00
Jay Farrimond
2393148908 dereference iq stanza only once for roster processing 2012-07-06 13:50:15 -07:00
Lance Stout
6819b57353 Handle converting None to byte data (b''). 2012-07-06 11:05:47 -07:00
Jay Farrimond
88b5e60807 only log cert errors if not handled by user 2012-07-05 13:38:26 -07:00
Lance Stout
c7594b3ef0 Merge pull request #179 from jay-instaedu/develop
only log cert errors if not handled by user
2012-07-05 13:36:53 -07:00
Jay Farrimond
b210870f48 only log cert errors if not handled by user 2012-07-05 13:30:33 -07:00
Lance Stout
a26a8bd79c Bump version to 1.1.8 2012-06-30 17:40:11 -07:00
Lance Stout
9307a6915f Add notes to echo_client.py example on working with Facebook and MSN. 2012-06-23 22:30:24 -07:00
Lance Stout
5d6019a962 Merge branch 'master' into develop 2012-06-22 23:17:15 -07:00
Lance Stout
85ef2d8d0b Add support for reconnecting based on see-other-host stream errors. 2012-06-22 23:13:16 -07:00
Lance Stout
c2c7cc032b Fix plugin registration for single file plugins. 2012-06-22 21:58:50 -07:00
Lance Stout
e4911e9391 Add meta plugin for XEP-0302 for the 2012 compliance suite.
There are still a few remaining items in the RFCs to add support for,
but the current plugin support matches the advanced client profile.
2012-06-22 21:52:39 -07:00
Lance Stout
b11e1ee92d Add meta plugin for XEP-0270, 2010 compliance suite.
Registering this plugin will load the plugins required for advanced
client compliance status.
2012-06-22 21:26:25 -07:00
Lance Stout
5027d00c10 Change packaging for XEP-0256 to just a single file. 2012-06-22 21:26:01 -07:00
Lance Stout
69ddeceb49 Add support for XEP-0256: Last Activity in Presence 2012-06-22 21:13:30 -07:00
Lance Stout
82698672bb Add 'thread' and 'parent_thread' interfaces to message stanzas.
These values are perisisted across replies.
2012-06-22 20:05:34 -07:00
Lance Stout
9cec284947 Mark presence status as language aware. 2012-06-22 20:05:17 -07:00
Lance Stout
dc501d1902 Mark message body and subject as language aware interfaces. 2012-06-22 19:08:51 -07:00
Lance Stout
100e504b7f Resolve xml:lang issue with duplicated elements depending on ordering. 2012-06-22 18:19:17 -07:00
Lance Stout
eb5df1aa37 Merge branch 'master' into develop 2012-06-20 23:46:13 -07:00
Lance Stout
8a745c5e81 Bump version to 1.1.7 2012-06-20 23:45:14 -07:00
Lance Stout
bf0a157c5d Add support for XEP-0221: Data Forms Media Element 2012-06-20 23:38:30 -07:00
Lance Stout
f49818be06 Add support for XEP-0186: Invisible Command 2012-06-20 23:37:39 -07:00
Lance Stout
1ad171dfe5 Fix issue with setting subelements values with default langs. 2012-06-20 23:19:52 -07:00
Lance Stout
2a78570d65 Fix setting IPv6 default configuration option. 2012-06-20 22:21:34 -07:00
Lance Stout
546066d677 Merge branch 'master' into develop 2012-06-20 21:13:06 -07:00
Lance Stout
7a112f2523 Bump version to 1.1.6 2012-06-20 21:08:43 -07:00
Lance Stout
3234596974 Merge branch 'master' into develop 2012-06-20 19:45:11 -07:00
Lance Stout
e86444e5fb Make the use of IPv6 configurable.
Set self.use_ipv6 = False before connecting.

Fixes issue #175
2012-06-20 19:39:24 -07:00
Lance Stout
5820d49cd4 Merge branch 'master' into develop
Conflicts:
	sleekxmpp/basexmpp.py
2012-06-19 21:50:33 -07:00
Lance Stout
36c11ad9de Ordering fixes for Python3.3 2012-06-19 18:19:44 -07:00
Lance Stout
019a4b20ae Fix assigning values to error stanzas.
The new data interfaces were deleting the actual error conditions if
they were set afterward with falsy data.
2012-06-19 16:21:34 -07:00
Lance Stout
433ee08687 Allow message and presence stanzas to be embedded as substanzas. 2012-06-19 16:20:54 -07:00
Lance Stout
7858d969d8 Remove usage of deprecated getchildren() method. 2012-06-19 09:47:31 -07:00
Lance Stout
8119551049 Don't compare against booleans using ==. 2012-06-19 01:38:36 -07:00
Lance Stout
061489f03a Limit except clause to just ImportErrors when loading plugins. 2012-06-19 01:38:12 -07:00
Lance Stout
d92aa05b5c PEP8 formatting updates. 2012-06-19 01:29:48 -07:00
Lance Stout
f7a74d960e Simplify send_presence_subscription() 2012-06-19 00:06:31 -07:00
Lance Stout
95a0e51b41 Add example for dealing with GTalk custom domain certificates. 2012-06-19 00:02:36 -07:00
Lance Stout
110e45e187 Add examples for using IBB. 2012-06-19 00:02:17 -07:00
Lance Stout
534aaf2b2a Properly handle certs with no extensions. 2012-06-19 00:01:02 -07:00
Lance Stout
4cc20fdd05 Use plugin_multi_attrib values to make vcards nicer. 2012-06-18 23:19:38 -07:00
Lance Stout
f3fae192a8 Fix plugin_multi_attrib value for avatar pointers. 2012-06-18 23:05:02 -07:00
Paulo Freitas
7d59a8a0ad Fixed typo in _handle_get_vcard() 2012-06-18 22:54:30 -07:00
Lance Stout
8da387a38a Add support for error conditions that include data. 2012-06-18 22:19:04 -07:00
Lance Stout
ff6fc44215 Simplify tracking last sent presence using outgoing filters. 2012-06-18 22:15:21 -07:00
Lance Stout
62391a895a Update plugin list, fix syntax error. 2012-06-18 22:08:38 -07:00
Lance Stout
9bcdd7d18f Add initial support for XEPS 222 and 223. 2012-06-18 22:08:38 -07:00
Lance Stout
5c4f7bfe8b Initial support for XEP-0258 2012-06-18 22:07:39 -07:00
Lance Stout
0b7f134021 Add initial XEP-0084 support.
It does not auto-retrieve and store avatars yet, but everything is there
to do so.
2012-06-18 22:07:17 -07:00
Lance Stout
378a42889f Simplify and update XEP-0033 to latest plugin format. 2012-06-18 22:03:03 -07:00
Lance Stout
f824950552 Enable using xml:lang with normal interfaces.
Using the special language value '*' will return a dictionary of all
such elements keyed by language.

    >>> msg = Message()
    >>> msg['body'] = 'Hi!'
    >>> msg['body|sv'] = 'Hej!'
    >>> print(msg)
    '<message xmlns="jabber:client">
      <body>Hi!</body>
      <body xml:lang="sv">Hej!</body>
    </message>'
    >>> print(msg['body|*'])
    OrderedDict(
        ('', 'Hi!'),
        ('sv', 'Hej!'))

Remaining items:

- Stanza path matching does not support language specifiers for normal
  interfaces, only for plugins.
2012-06-18 22:00:33 -07:00
Lance Stout
3d2d11f169 Update stream features stanza to work with new plugin keys. 2012-06-18 22:00:33 -07:00
Lance Stout
181aea737d Add initial support for xml:lang for streams and stanza plugins.
Remaining items are suitable default actions for language supporting
interfaces.
2012-06-18 22:00:33 -07:00
Lance Stout
1ab66e5767 Add example for dealing with GTalk custom domain certificates. 2012-06-15 16:03:38 -07:00
Lance Stout
aab2682f9a Add examples for using IBB. 2012-06-15 16:03:22 -07:00
Lance Stout
55d332bcc8 Merge branch 'master' into develop 2012-06-15 15:36:30 -07:00
Lance Stout
f89df6e70c Merge branch 'master' into develop 2012-06-13 09:27:47 -07:00
Lance Stout
250d28e870 Properly handle certs with no extensions. 2012-06-11 08:28:02 -07:00
Lance Stout
19f65c8510 Simplify send_presence_subscription.
It is technically obsolete now, but remains because it set a default
subscription type of 'subscribe'.
2012-06-10 14:42:54 -07:00
Lance Stout
f70b49882f Fix XEP-0065 imports and naming for Python3. 2012-06-10 14:15:58 -07:00
Lance Stout
a7b092a305 Fix Python3 exception handling.
Fixes issue #173
2012-06-09 15:04:27 -07:00
Lance Stout
daa73a3f3c Merge branch 'master' into develop 2012-06-09 11:43:06 -07:00
Lance Stout
0b51afe87a Add extra check for the cert in the expiration handler. 2012-06-09 11:05:18 -07:00
Lance Stout
2b298766c9 Use False for use_tls for components.
A log message is shown for those who try to set it to True.

Fixes issue #171
2012-06-09 10:48:16 -07:00
Lance Stout
10664d723b Default use_tls to False for components.
Issue #171
2012-06-09 10:43:57 -07:00
Lance Stout
c012208a8f Merge pull request #170 from SeyZ/develop
Added the xep_0065 plugin in the setup.py
2012-06-09 10:37:49 -07:00
Lance Stout
0953896d2d Fix SSL handshake handling when not using legacy SSL.
Fixes issue #172
2012-06-09 10:32:25 -07:00
Sandro Munda
cf9e89d0ae Added the xep_0065 plugin in the setup.py 2012-06-09 18:45:58 +02:00
Lance Stout
48dd01b0bb Ensure that all SSL cert error handling is overridable using event handlers.
Relevant events:

    ssl_invalid_cert
    ssl_invalid_chain
    ssl_expired_cert
2012-06-08 09:31:44 -07:00
Lance Stout
7247efe055 Merge pull request #169 from SeyZ/develop
xep_0065 plugin (Socks5 Bytestreams)
2012-06-07 10:40:22 -07:00
Sandro Munda
8def3758e4 Added the get_socket(sid) method to the xep_0065 plugin to retrieve
the socket of the Proxy thread.
2012-06-07 19:36:25 +02:00
Sandro Munda
1851ab6f5f Added the SID in the socks_recv xmpp event in the xep_0065 plugin. 2012-06-07 19:24:23 +02:00
Sandro Munda
289b052338 Renamed Query to Socks5 in the xep_0065.
Renamed the 'q' plugin_attrib of the Socks5 stanza to 'socks'.
2012-06-07 19:14:37 +02:00
Sandro Munda
26147f5ae0 Added a top level field to the xep_0065 class:
name = 'xep_0065'
2012-06-07 19:08:20 +02:00
Sandro Munda
ae01f1071a Fixed the callback names of the xep_0065:
In-Band bytestreams -> Socks5 bytestreams
2012-06-07 19:04:24 +02:00
Sandro Munda
dcdf5dcd09 Added the Socksipy module in the thirdparty of SleekXMPP.
Updated the LICENSE file with the license of the Socksipy
module (New-BSD).
2012-06-07 19:02:09 +02:00
Sandro Munda
c59a6d0f51 Sent a socks_closed when the socket is closed in the xep_0065 plugin. 2012-06-07 18:38:57 +02:00
Sandro Munda
2cd936318d Improved the close of the proxy thread (and the socket) in the xep_0065 plugin. 2012-06-07 18:38:57 +02:00
Sandro Munda
2f38857681 Changed the description of the xep_0065 plugin 2012-06-07 18:38:56 +02:00
Sandro Munda
39505ae1ff The xep_0065 plugin supports now multiple stream (multiple connected
sockets).

To send data over a stream, we need to pass the SID in order to
retrieve the good proxy thread (and so, the good socket).
2012-06-07 18:38:56 +02:00
Sandro Munda
44ee0633f2 Renamed the _handle_on_recv to the on_recv method.
Renamed requester_thread and target_thread to proxy. The send method is now simpler.
2012-06-07 18:38:56 +02:00
Sandro Munda
b52d2768b0 Added some comments to the get_network_address method 2012-06-07 18:38:56 +02:00
Sandro Munda
cf24b870b1 Registered stanza plugin in the stanza module 2012-06-07 18:38:56 +02:00
Sandro Munda
69cffce7dc Used the namespace in all stanzas 2012-06-07 18:38:56 +02:00
Sandro Munda
a14979375b Added a partial support of the XEP 0065 - Socks5 Bytestreams 2012-06-07 18:38:56 +02:00
Sandro Munda
40ef4a16b1 Updated the .gitignore to add .ropeproject/ folder 2012-06-07 18:38:56 +02:00
783 changed files with 40711 additions and 16951 deletions

13
.github/pull_request_template.md vendored Normal file
View File

@@ -0,0 +1,13 @@
################ Please use Gitlab instead of Github ###################################
Hello, thank you for contributing to slixmpp!
Youre about to open a pull request on github. However this github repository is not the official place for contributions on slixmpp.
Please open your merge request on https://lab.louiz.org/poezio/slixmpp/
You should be able to log in there with your github credentials, clone the slixmpp repository in your namespace, push your existing pull request into a new branch, and then open a merge request with one click, within 3 minutes.
This will help us review your contribution, avoid spreading things everywhere and it will even run the tests automatically with your changes.
Thank you.

10
.gitignore vendored
View File

@@ -1,4 +1,4 @@
*.pyc
*.py[co]
build/
dist/
MANIFEST
@@ -6,4 +6,10 @@ docs/_build/
*.swp
.tox/
.coverage
sleekxmpp.egg-info/
slixmpp.egg-info/
.ropeproject/
4913
*~
.baboon/
.DS_STORE
.idea/

37
.gitlab-ci.yml Normal file
View File

@@ -0,0 +1,37 @@
stages:
- test
- trigger
test:
stage: test
tags:
- docker
image: ubuntu:latest
script:
- apt update
- apt install -y python3 python3-pip cython3 gpg
- pip3 install emoji aiohttp
- ./run_tests.py
test_integration:
stage: test
tags:
- docker
image: ubuntu:latest
only:
variables:
- $CI_ACCOUNT1
- $CI_ACCOUNT2
script:
- apt update
- apt install -y python3 python3-pip cython3 gpg
- pip3 install emoji aiohttp aiodns
- ./run_integration_tests.py
trigger_poezio:
stage: trigger
tags:
- docker
image: appropriate/curl:latest
script:
- curl --request POST -F token="$SLIXMPP_TRIGGER_TOKEN" -F ref=master https://lab.louiz.org/api/v4/projects/18/trigger/pipeline

7
.travis.yml Normal file
View File

@@ -0,0 +1,7 @@
language: python
python:
- "3.7"
- "3.8-dev"
install:
- "pip install ."
script: testall.py

14
CONTRIBUTING.rst Normal file
View File

@@ -0,0 +1,14 @@
Contributing to the Slixmpp project
===================================
To contribute, the preferred way is to commit your changes on some
publicly-available git repository (on a fork `on github
<https://github.com/poezio/slixmpp>`_ or on your own repository) and to
notify the developers with either:
- a ticket `on the bug tracker <https://lab.louiz.org/poezio/slixmpp/issues/new>`_
- a pull request on github
- a simple message on `the XMPP MUC <xmpp:slixmpp@muc.poez.io>`_
Even though Slixmpps github repository is just a read-only mirror, we can
still be notified of the pull requests and fetch your mirror manually to
integrate your changes.

View File

@@ -1,5 +1,7 @@
Pre-requisites:
- Python 3.1 or 2.6
- Python 3.7+
- Cython 0.22 and libidn, optionally (making JID faster by compiling the stringprep module)
- GnuPG, for testing
Install:
> python3 setup.py install
@@ -9,4 +11,4 @@ Root install:
To test:
> cd examples
> python echo_client.py -v -j [USER@example.com] -p [PASSWORD]
> python3 echo_client.py -d -j [USER@example.com] -p [PASSWORD]

34
LICENSE
View File

@@ -69,8 +69,8 @@ modification, are permitted provided that the following conditions are met:
* Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
* Neither the name of Red Innovation nor the names of its contributors
may be used to endorse or promote products derived from this software
* Neither the name of Red Innovation nor the names of its contributors
may be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY RED INNOVATION ``AS IS'' AND ANY
@@ -86,40 +86,12 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
OrderedDict - A port of the Python 2.7+ OrderedDict to Python 2.6
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Copyright (c) 2009 Raymond Hettinger
Permission is hereby granted, free of charge, to any person
obtaining a copy of this software and associated documentation files
(the "Software"), to deal in the Software without restriction,
including without limitation the rights to use, copy, modify, merge,
publish, distribute, sublicense, and/or sell copies of the Software,
and to permit persons to whom the Software is furnished to do so,
subject to the following conditions:
The above copyright notice and this permission notice shall be
included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
OTHER DEALINGS IN THE SOFTWARE.
SUELTA A PURE-PYTHON SASL CLIENT LIBRARY
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
This software is subject to "The MIT License"
Copyright 2007-2010 David Alan Cridland
Copyright 2004-2013 David Alan Cridland
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

View File

@@ -1,6 +1,7 @@
include README.rst
include LICENSE
include testall.py
include run_tests.py
include slixmpp/stringprep.pyx
recursive-include docs Makefile *.bat *.py *.rst *.css *.ttf *.png
recursive-include examples *.py
recursive-include tests *.py

View File

@@ -1,78 +1,21 @@
SleekXMPP
Slixmpp
#########
SleekXMPP is an MIT licensed XMPP library for Python 2.6/3.1+,
and is featured in examples in
`XMPP: The Definitive Guide <http://oreilly.com/catalog/9780596521271>`_
by Kevin Smith, Remko Tronçon, and Peter Saint-Andre. If you've arrived
here from reading the Definitive Guide, please see the notes on updating
the examples to the latest version of SleekXMPP.
Slixmpp is an MIT licensed XMPP library for Python 3.7+. It is a fork of
SleekXMPP.
SleekXMPP's design goals and philosphy are:
Slixmpp's goals is to only rewrite the core of the library (the low level
socket handling, the timers, the events dispatching) in order to remove all
threads.
**Low number of dependencies**
Installing and using SleekXMPP should be as simple as possible, without
having to deal with long dependency chains.
Building
--------
As part of reducing the number of dependencies, some third party
modules are included with SleekXMPP in the ``thirdparty`` directory.
Imports from this module first try to import an existing installed
version before loading the packaged version, when possible.
Slixmpp can make use of cython to improve performance on critical modules.
To do that, **cython3** is necessary along with **libidn** headers.
Otherwise, no compilation is needed. Building is done by running setup.py::
**Every XEP as a plugin**
Following Python's "batteries included" approach, the goal is to
provide support for all currently active XEPs (final and draft). Since
adding XEP support is done through easy to create plugins, the hope is
to also provide a solid base for implementing and creating experimental
XEPs.
**Rewarding to work with**
As much as possible, SleekXMPP should allow things to "just work" using
sensible defaults and appropriate abstractions. XML can be ugly to work
with, but it doesn't have to be that way.
Get the Code
------------
Get the latest stable version from PyPI::
pip install sleekxmpp
The latest source code for SleekXMPP may be found on `Github
<http://github.com/fritzy/SleekXMPP>`_. Releases can be found in the
``master`` branch, while the latest development version is in the
``develop`` branch.
**Latest Release**
- `1.1.5 <http://github.com/fritzy/SleekXMPP/zipball/1.1.5>`_
**Develop Releases**
- `Latest Develop Version <http://github.com/fritzy/SleekXMPP/zipball/develop>`_
**Older Stable Releases**
- `1.0 <http://github.com/fritzy/SleekXMPP/zipball/1.0>`_
Installing DNSPython
---------------------
If you are using Python3 and wish to use dnspython, you will have to checkout and
install the ``python3`` branch::
git clone http://github.com/rthalley/dnspython
cd dnspython
git checkout python3
python3 setup.py install
Discussion
----------
A mailing list and XMPP chat room are available for discussing and getting
help with SleekXMPP.
**Mailing List**
`SleekXMPP Discussion on Google Groups <http://groups.google.com/group/sleekxmpp-discussion>`_
**Chat**
`sleek@conference.jabber.org <xmpp:sleek@conference.jabber.org?join>`_
python3 setup.py build_ext --inplace
Documentation and Testing
-------------------------
@@ -84,22 +27,37 @@ be in ``docs/_build/html``::
make html
open _build/html/index.html
To run the test suite for SleekXMPP::
To run the test suite for Slixmpp::
python testall.py
python run_tests.py
Integration tests require the following environment variables to be set:::
The SleekXMPP Boilerplate
$CI_ACCOUNT1
$CI_ACCOUNT1_PASSWORD
$CI_ACCOUNT2
$CI_ACCOUNT2_PASSWORD
$CI_MUC_SERVER
where the account variables are JIDs of valid, existing accounts, and
the passwords are the account passwords. The MUC server must allow room
creation from those JIDs.
To run the integration test suite for Slixmpp::
python run_integration_tests.py
The Slixmpp Boilerplate
-------------------------
Projects using SleekXMPP tend to follow a basic pattern for setting up client/component
connections and configuration. Here is the gist of the boilerplate needed for a SleekXMPP
based project. See the documetation or examples directory for more detailed archetypes for
SleekXMPP projects::
Projects using Slixmpp tend to follow a basic pattern for setting up client/component
connections and configuration. Here is the gist of the boilerplate needed for a Slixmpp
based project. See the documentation or examples directory for more detailed archetypes for
Slixmpp projects::
import logging
from sleekxmpp import ClientXMPP
from sleekxmpp.exceptions import IqError, IqTimeout
from slixmpp import ClientXMPP
from slixmpp.exceptions import IqError, IqTimeout
class EchoBot(ClientXMPP):
@@ -145,7 +103,7 @@ SleekXMPP projects::
if __name__ == '__main__':
# Ideally use optparse or argparse to get JID,
# Ideally use optparse or argparse to get JID,
# password, and log level.
logging.basicConfig(level=logging.DEBUG,
@@ -153,21 +111,38 @@ SleekXMPP projects::
xmpp = EchoBot('somejid@example.com', 'use_getpass')
xmpp.connect()
xmpp.process(block=True)
xmpp.process(forever=True)
Credits
-------
Slixmpp Credits
---------------
**Maintainers:**
- Florent Le Coz (`louiz@louiz.org <xmpp:louiz@louiz.org?message>`_),
- Mathieu Pasquet (`mathieui@mathieui.net <xmpp:mathieui@mathieui.net?message>`_),
**Contributors:**
- Emmanuel Gil Peyrot (`Link mauve <xmpp:linkmauve@linkmauve.fr?message>`_)
- Sam Whited (`Sam Whited <mailto:sam@samwhited.com>`_)
- Dan Sully (`Dan Sully <mailto:daniel@electricalrain.com>`_)
- Gasper Zejn (`Gasper Zejn <mailto:zejn@kiberpipa.org>`_)
- Krzysztof Kotlenga (`Krzysztof Kotlenga <mailto:pocek@users.sf.net>`_)
- Tsukasa Hiiragi (`Tsukasa Hiiragi <mailto:bakalolka@gmail.com>`_)
- Maxime Buquet (`pep <xmpp:pep@bouah.net?message>`_)
Credits (SleekXMPP)
-------------------
**Main Author:** Nathan Fritz
`fritzy@netflint.net <xmpp:fritzy@netflint.net?message>`_,
`fritzy@netflint.net <xmpp:fritzy@netflint.net?message>`_,
`@fritzy <http://twitter.com/fritzy>`_
Nathan is also the author of XMPPHP and `Seesmic-AS3-XMPP
<http://code.google.com/p/seesmic-as3-xmpp/>`_, and a former member of
<http://code.google.com/p/seesmic-as3-xmpp/>`_, and a former member of
the XMPP Council.
**Co-Author:** Lance Stout
`lancestout@gmail.com <xmpp:lancestout@gmail.com?message>`_,
`lancestout@gmail.com <xmpp:lancestout@gmail.com?message>`_,
`@lancestout <http://twitter.com/lancestout>`_
**Contributors:**

1009
doap.xml Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -72,17 +72,17 @@ qthelp:
@echo
@echo "Build finished; now you can run "qcollectiongenerator" with the" \
".qhcp project file in $(BUILDDIR)/qthelp, like this:"
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/SleekXMPP.qhcp"
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/Slixmpp.qhcp"
@echo "To view the help file:"
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/SleekXMPP.qhc"
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/Slixmpp.qhc"
devhelp:
$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
@echo
@echo "Build finished."
@echo "To view the help file:"
@echo "# mkdir -p $$HOME/.local/share/devhelp/SleekXMPP"
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/SleekXMPP"
@echo "# mkdir -p $$HOME/.local/share/devhelp/Slixmpp"
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/Slixmpp"
@echo "# devhelp"
epub:

View File

@@ -408,24 +408,3 @@ div.viewcode-block:target {
margin: -1px -12px;
padding: 0 12px;
}
#from_andyet {
-webkit-box-shadow: #CCC 0px 0px 3px;
background: rgba(255, 255, 255, 1);
bottom: 0px;
right: 17px;
padding: 3px 10px;
position: fixed;
}
#from_andyet h2 {
background-image: url("images/from_&yet.png");
background-repeat: no-repeat;
height: 29px;
line-height: 0;
text-indent: -9999em;
width: 79px;
margin-top: 0;
margin: 0px;
padding: 0px;
}

View File

@@ -8,11 +8,11 @@
* :license: BSD, see LICENSE for details.
*
*/
@import url("basic.css");
/* -- page layout ----------------------------------------------------------- */
body {
font-family: Arial, sans-serif;
font-size: 100%;
@@ -34,18 +34,18 @@ div.bodywrapper {
hr {
border: 1px solid #B1B4B6;
}
div.document {
background-color: #eee;
}
div.body {
background-color: #ffffff;
color: #3E4349;
padding: 0 30px 30px 30px;
font-size: 0.9em;
}
div.footer {
color: #555;
width: 100%;
@@ -53,12 +53,12 @@ div.footer {
text-align: center;
font-size: 75%;
}
div.footer a {
color: #444;
text-decoration: underline;
}
div.related {
background-color: #6BA81E;
line-height: 32px;
@@ -66,11 +66,11 @@ div.related {
text-shadow: 0px 1px 0 #444;
font-size: 0.9em;
}
div.related a {
color: #E2F3CC;
}
div.sphinxsidebar {
font-size: 0.75em;
line-height: 1.5em;
@@ -79,7 +79,7 @@ div.sphinxsidebar {
div.sphinxsidebarwrapper{
padding: 20px 0;
}
div.sphinxsidebar h3,
div.sphinxsidebar h4 {
font-family: Arial, sans-serif;
@@ -95,30 +95,30 @@ div.sphinxsidebar h4 {
div.sphinxsidebar h4{
font-size: 1.1em;
}
div.sphinxsidebar h3 a {
color: #444;
}
div.sphinxsidebar p {
color: #888;
padding: 5px 20px;
}
div.sphinxsidebar p.topless {
}
div.sphinxsidebar ul {
margin: 10px 20px;
padding: 0;
color: #000;
}
div.sphinxsidebar a {
color: #444;
}
div.sphinxsidebar input {
border: 1px solid #ccc;
font-family: sans-serif;
@@ -128,19 +128,19 @@ div.sphinxsidebar input {
div.sphinxsidebar input[type=text]{
margin-left: 20px;
}
/* -- body styles ----------------------------------------------------------- */
a {
color: #005B81;
text-decoration: none;
}
a:hover {
color: #E32E00;
text-decoration: underline;
}
div.body h1,
div.body h2,
div.body h3,
@@ -155,30 +155,30 @@ div.body h6 {
padding: 5px 0 5px 10px;
text-shadow: 0px 1px 0 white
}
div.body h1 { border-top: 20px solid white; margin-top: 0; font-size: 200%; }
div.body h2 { font-size: 150%; background-color: #C8D5E3; }
div.body h3 { font-size: 120%; background-color: #D8DEE3; }
div.body h4 { font-size: 110%; background-color: #D8DEE3; }
div.body h5 { font-size: 100%; background-color: #D8DEE3; }
div.body h6 { font-size: 100%; background-color: #D8DEE3; }
a.headerlink {
color: #c60f0f;
font-size: 0.8em;
padding: 0 4px 0 4px;
text-decoration: none;
}
a.headerlink:hover {
background-color: #c60f0f;
color: white;
}
div.body p, div.body dd, div.body li {
line-height: 1.5em;
}
div.admonition p.admonition-title + p {
display: inline;
}
@@ -191,29 +191,29 @@ div.note {
background-color: #eee;
border: 1px solid #ccc;
}
div.seealso {
background-color: #ffc;
border: 1px solid #ff6;
}
div.topic {
background-color: #eee;
}
div.warning {
background-color: #ffe4e4;
border: 1px solid #f66;
}
p.admonition-title {
display: inline;
}
p.admonition-title:after {
content: ":";
}
pre {
padding: 10px;
background-color: White;
@@ -225,7 +225,7 @@ pre {
-webkit-box-shadow: 1px 1px 1px #d8d8d8;
-moz-box-shadow: 1px 1px 1px #d8d8d8;
}
tt {
background-color: #ecf0f3;
color: #222;

View File

@@ -134,7 +134,7 @@ div.footer a {
/* -- body styles ----------------------------------------------------------- */
p {
p {
margin: 0.8em 0 0.5em 0;
}

View File

@@ -65,6 +65,5 @@
<div class="bottomnav">
{{ nav() }}
</div>
<a id="from_andyet" href="http://andyet.net"><h2>From &amp;yet</h2></a>
{% endblock %}

View File

@@ -2,7 +2,7 @@
BaseXMPP
========
.. module:: sleekxmpp.basexmpp
.. module:: slixmpp.basexmpp
.. autoclass:: BaseXMPP
:members:

View File

@@ -2,7 +2,7 @@
ClientXMPP
==========
.. module:: sleekxmpp.clientxmpp
.. module:: slixmpp.clientxmpp
.. autoclass:: ClientXMPP
:members:

View File

@@ -2,7 +2,7 @@
ComponentXMPP
=============
.. module:: sleekxmpp.componentxmpp
.. module:: slixmpp.componentxmpp
.. autoclass:: ComponentXMPP
:members:

View File

@@ -1,9 +1,9 @@
Exceptions
==========
.. module:: sleekxmpp.exceptions
.. module:: slixmpp.exceptions
.. autoexception:: XMPPError
:members:

View File

@@ -0,0 +1,96 @@
Plugin index
============
.. toctree::
:maxdepth: 2
xep_0004
xep_0009
xep_0012
xep_0013
xep_0020
xep_0027
xep_0030
xep_0033
xep_0045
xep_0047
xep_0049
xep_0050
xep_0054
xep_0059
xep_0060
xep_0065
xep_0066
xep_0070
xep_0071
xep_0077
xep_0079
xep_0080
xep_0082
xep_0084
xep_0085
xep_0086
xep_0092
xep_0106
xep_0107
xep_0108
xep_0115
xep_0118
xep_0122
xep_0128
xep_0131
xep_0133
xep_0152
xep_0153
xep_0163
xep_0172
xep_0184
xep_0186
xep_0191
xep_0196
xep_0198
xep_0199
xep_0202
xep_0203
xep_0221
xep_0222
xep_0223
xep_0224
xep_0231
xep_0235
xep_0249
xep_0256
xep_0257
xep_0258
xep_0279
xep_0280
xep_0297
xep_0300
xep_0308
xep_0313
xep_0319
xep_0332
xep_0333
xep_0334
xep_0335
xep_0352
xep_0353
xep_0359
xep_0363
xep_0369
xep_0377
xep_0380
xep_0394
xep_0403
xep_0404
xep_0405
xep_0421
xep_0422
xep_0424
xep_0425
xep_0428
xep_0437
xep_0439
xep_0444

View File

@@ -0,0 +1,21 @@
XEP 0004
========
.. module:: slixmpp.plugins.xep_0004
.. autoclass:: XEP_0004
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0004.stanza.field
:members:
:undoc-members:
.. automodule:: slixmpp.plugins.xep_0004.stanza.form
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0009
========
.. module:: slixmpp.plugins.xep_0009
.. autoclass:: XEP_0009
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0009.stanza.RPC
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0012
========
.. module:: slixmpp.plugins.xep_0012
.. autoclass:: XEP_0012
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0012.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0013
========
.. module:: slixmpp.plugins.xep_0013
.. autoclass:: XEP_0013
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0013.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0020
========
.. module:: slixmpp.plugins.xep_0020
.. autoclass:: XEP_0020
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0020.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0027
========
.. module:: slixmpp.plugins.xep_0027
.. autoclass:: XEP_0027
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0027.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,22 @@
XEP 0030
========
.. module:: slixmpp.plugins.xep_0030
.. autoclass:: XEP_0030
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0030.stanza.info
:members:
:undoc-members:
.. automodule:: slixmpp.plugins.xep_0030.stanza.items
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0033
========
.. module:: slixmpp.plugins.xep_0033
.. autoclass:: XEP_0033
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0033.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0045
========
.. module:: slixmpp.plugins.xep_0045
.. autoclass:: XEP_0045
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0045.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0047
========
.. module:: slixmpp.plugins.xep_0047
.. autoclass:: XEP_0047
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0047.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0049
========
.. module:: slixmpp.plugins.xep_0049
.. autoclass:: XEP_0049
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0049.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0050
========
.. module:: slixmpp.plugins.xep_0050
.. autoclass:: XEP_0050
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0050.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0054
========
.. module:: slixmpp.plugins.xep_0054
.. autoclass:: XEP_0054
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0054.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0059
========
.. module:: slixmpp.plugins.xep_0059
.. autoclass:: XEP_0059
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0059.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,37 @@
XEP 0060
========
.. module:: slixmpp.plugins.xep_0060
.. autoclass:: XEP_0060
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0060.stanza.base
:members:
:undoc-members:
.. automodule:: slixmpp.plugins.xep_0060.stanza.pubsub
:members:
:undoc-members:
.. automodule:: slixmpp.plugins.xep_0060.stanza.pubsub_errors
:members:
:undoc-members:
.. automodule:: slixmpp.plugins.xep_0060.stanza.pubsub_owner
:members:
:undoc-members:
.. automodule:: slixmpp.plugins.xep_0060.stanza.pubsub_event
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0065
========
.. module:: slixmpp.plugins.xep_0065
.. autoclass:: XEP_0065
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0065.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0066
========
.. module:: slixmpp.plugins.xep_0066
.. autoclass:: XEP_0066
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0066.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0070
========
.. module:: slixmpp.plugins.xep_0070
.. autoclass:: XEP_0070
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0070.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0071
========
.. module:: slixmpp.plugins.xep_0071
.. autoclass:: XEP_0071
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0071.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0077
========
.. module:: slixmpp.plugins.xep_0077
.. autoclass:: XEP_0077
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0077.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0079
========
.. module:: slixmpp.plugins.xep_0079
.. autoclass:: XEP_0079
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0079.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0080
========
.. module:: slixmpp.plugins.xep_0080
.. autoclass:: XEP_0080
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0080.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,9 @@
XEP 0082
========
.. module:: slixmpp.plugins.xep_0082
.. autoclass:: XEP_0082
:members:
:exclude-members: session_bind, plugin_init, plugin_end

View File

@@ -0,0 +1,18 @@
XEP 0084
========
.. module:: slixmpp.plugins.xep_0084
.. autoclass:: XEP_0084
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0084.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0085
========
.. module:: slixmpp.plugins.xep_0085
.. autoclass:: XEP_0085
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0085.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0086
========
.. module:: slixmpp.plugins.xep_0086
.. autoclass:: XEP_0086
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0086.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0092
========
.. module:: slixmpp.plugins.xep_0092
.. autoclass:: XEP_0092
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0092.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,9 @@
XEP 0106
========
.. module:: slixmpp.plugins.xep_0106
.. autoclass:: XEP_0106
:members:
:exclude-members: session_bind, plugin_init, plugin_end

View File

@@ -0,0 +1,18 @@
XEP 0107
========
.. module:: slixmpp.plugins.xep_0107
.. autoclass:: XEP_0107
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0107.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0108
========
.. module:: slixmpp.plugins.xep_0108
.. autoclass:: XEP_0108
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0108.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0115
========
.. module:: slixmpp.plugins.xep_0115
.. autoclass:: XEP_0115
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0115.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0118
========
.. module:: slixmpp.plugins.xep_0118
.. autoclass:: XEP_0118
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0118.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0122
========
.. module:: slixmpp.plugins.xep_0122
.. autoclass:: XEP_0122
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0122.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,9 @@
XEP 0128
========
.. module:: slixmpp.plugins.xep_0128
.. autoclass:: XEP_0128
:members:
:exclude-members: session_bind, plugin_init, plugin_end

View File

@@ -0,0 +1,18 @@
XEP 0131
========
.. module:: slixmpp.plugins.xep_0131
.. autoclass:: XEP_0131
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0131.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,9 @@
XEP 0133
========
.. module:: slixmpp.plugins.xep_0133
.. autoclass:: XEP_0133
:members:
:exclude-members: session_bind, plugin_init, plugin_end

View File

@@ -0,0 +1,18 @@
XEP 0152
========
.. module:: slixmpp.plugins.xep_0152
.. autoclass:: XEP_0152
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0152.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0153
========
.. module:: slixmpp.plugins.xep_0153
.. autoclass:: XEP_0153
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0153.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,9 @@
XEP 0163
========
.. module:: slixmpp.plugins.xep_0163
.. autoclass:: XEP_0163
:members:
:exclude-members: session_bind, plugin_init, plugin_end

View File

@@ -0,0 +1,18 @@
XEP 0172
========
.. module:: slixmpp.plugins.xep_0172
.. autoclass:: XEP_0172
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0172.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0184
========
.. module:: slixmpp.plugins.xep_0184
.. autoclass:: XEP_0184
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0184.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0186
========
.. module:: slixmpp.plugins.xep_0186
.. autoclass:: XEP_0186
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0186.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0191
========
.. module:: slixmpp.plugins.xep_0191
.. autoclass:: XEP_0191
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0191.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0196
========
.. module:: slixmpp.plugins.xep_0196
.. autoclass:: XEP_0196
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0196.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0198
========
.. module:: slixmpp.plugins.xep_0198
.. autoclass:: XEP_0198
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0198.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0199
========
.. module:: slixmpp.plugins.xep_0199
.. autoclass:: XEP_0199
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0199.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0202
========
.. module:: slixmpp.plugins.xep_0202
.. autoclass:: XEP_0202
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0202.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0203
========
.. module:: slixmpp.plugins.xep_0203
.. autoclass:: XEP_0203
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0203.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0221
========
.. module:: slixmpp.plugins.xep_0221
.. autoclass:: XEP_0221
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0221.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,9 @@
XEP 0222
========
.. module:: slixmpp.plugins.xep_0222
.. autoclass:: XEP_0222
:members:
:exclude-members: session_bind, plugin_init, plugin_end

View File

@@ -0,0 +1,9 @@
XEP 0223
========
.. module:: slixmpp.plugins.xep_0223
.. autoclass:: XEP_0223
:members:
:exclude-members: session_bind, plugin_init, plugin_end

View File

@@ -0,0 +1,18 @@
XEP 0224
========
.. module:: slixmpp.plugins.xep_0224
.. autoclass:: XEP_0224
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0224.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0231
========
.. module:: slixmpp.plugins.xep_0231
.. autoclass:: XEP_0231
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0231.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0235
========
.. module:: slixmpp.plugins.xep_0235
.. autoclass:: XEP_0235
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0235.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0249
========
.. module:: slixmpp.plugins.xep_0249
.. autoclass:: XEP_0249
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0249.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,9 @@
XEP 0256
========
.. module:: slixmpp.plugins.xep_0256
.. autoclass:: XEP_0256
:members:
:exclude-members: session_bind, plugin_init, plugin_end

View File

@@ -0,0 +1,18 @@
XEP 0257
========
.. module:: slixmpp.plugins.xep_0257
.. autoclass:: XEP_0257
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0257.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0258
========
.. module:: slixmpp.plugins.xep_0258
.. autoclass:: XEP_0258
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0258.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0279
========
.. module:: slixmpp.plugins.xep_0279
.. autoclass:: XEP_0279
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0279.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0280
========
.. module:: slixmpp.plugins.xep_0280
.. autoclass:: XEP_0280
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0280.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0297
========
.. module:: slixmpp.plugins.xep_0297
.. autoclass:: XEP_0297
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0297.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0300
========
.. module:: slixmpp.plugins.xep_0300
.. autoclass:: XEP_0300
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0300.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0308
========
.. module:: slixmpp.plugins.xep_0308
.. autoclass:: XEP_0308
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0308.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0313
========
.. module:: slixmpp.plugins.xep_0313
.. autoclass:: XEP_0313
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0313.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0319
========
.. module:: slixmpp.plugins.xep_0319
.. autoclass:: XEP_0319
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0319.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,26 @@
XEP 0332
========
.. module:: slixmpp.plugins.xep_0332
.. autoclass:: XEP_0332
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0332.stanza.data
:members:
:undoc-members:
.. automodule:: slixmpp.plugins.xep_0332.stanza.request
:members:
:undoc-members:
.. automodule:: slixmpp.plugins.xep_0332.stanza.response
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0333
========
.. module:: slixmpp.plugins.xep_0333
.. autoclass:: XEP_0333
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0333.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0334
========
.. module:: slixmpp.plugins.xep_0334
.. autoclass:: XEP_0334
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0334.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0335
========
.. module:: slixmpp.plugins.xep_0335
.. autoclass:: XEP_0335
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0335.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0352
========
.. module:: slixmpp.plugins.xep_0352
.. autoclass:: XEP_0352
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0352.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0353
========
.. module:: slixmpp.plugins.xep_0353
.. autoclass:: XEP_0353
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0353.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0359
========
.. module:: slixmpp.plugins.xep_0359
.. autoclass:: XEP_0359
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0359.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0363
========
.. module:: slixmpp.plugins.xep_0363
.. autoclass:: XEP_0363
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0363.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0369
========
.. module:: slixmpp.plugins.xep_0369
.. autoclass:: XEP_0369
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0369.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0377
========
.. module:: slixmpp.plugins.xep_0377
.. autoclass:: XEP_0377
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0377.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0380
========
.. module:: slixmpp.plugins.xep_0380
.. autoclass:: XEP_0380
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0380.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0394
========
.. module:: slixmpp.plugins.xep_0394
.. autoclass:: XEP_0394
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0394.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0403
========
.. module:: slixmpp.plugins.xep_0403
.. autoclass:: XEP_0403
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0403.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0404
========
.. module:: slixmpp.plugins.xep_0404
.. autoclass:: XEP_0404
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0404.stanza
:members:
:undoc-members:

View File

@@ -0,0 +1,18 @@
XEP 0405
========
.. module:: slixmpp.plugins.xep_0405
.. autoclass:: XEP_0405
:members:
:exclude-members: session_bind, plugin_init, plugin_end
Stanza elements
---------------
.. automodule:: slixmpp.plugins.xep_0405.stanza
:members:
:undoc-members:

Some files were not shown because too many files have changed in this diff Show More