Commit graph

602 commits

Author SHA1 Message Date
mathieui
7bb94afdc8 XEP-0163: do not broadcast caps when adding/removing interest 2021-04-19 23:19:40 +02:00
mathieui
8828a5b99d XEP-0115: add a broadcast parameter to update_caps
and do not send a presence after updating if it is false
2021-04-19 23:17:10 +02:00
mathieui
eee185ff90 stanza: rework the .append() and __eq__ methods
This was very much broken on plugin iterables and other reasons.
2021-04-18 23:01:36 +02:00
mathieui
d4e1b68534 Allow handshake in stream.send() when not connected yet
fix #3464
2021-04-18 21:16:03 +02:00
mathieui
3bb01de120 stanza: add a Handshake class and use it in componentxmpp 2021-04-18 21:15:22 +02:00
mathieui
7057773d18 Merge branch 'tentative-fix-for-reconnect-race' into 'master'
xmlstream: do not allow stanzas outside a session

See merge request poezio/slixmpp!154
2021-04-12 19:49:10 +02:00
mathieui
fcf666e3cb Fix #3441: Do not assign ID to inbound stanzas 2021-04-09 20:40:30 +02:00
mathieui
3e5943f458 xmlstream: do not allow stanzas outside a session
except for the bind, obviously
2021-04-08 18:47:51 +02:00
mathieui
7ddcc3428f Merge branch 'xep-0300-fixup' into 'master'
XEP-0300: small fixes

See merge request poezio/slixmpp!151
2021-03-11 20:54:31 +01:00
mathieui
7f90fb594a XEP-0030: Fix usage of ifrom in get_info 2021-03-10 22:07:00 +01:00
mathieui
1cf6393b61 XEP-0300: small fixes
- fix a typo in the default option (crash when hashing a file without
  providing a function)
- Fix the plugin_end method (classical del_feature footgun)
2021-03-10 21:26:08 +01:00
mathieui
7c86c43fc7 Merge branch 'mam-update' into 'master'
MAM Update

See merge request poezio/slixmpp!149
2021-03-09 21:20:14 +01:00
mathieui
ad2673fd2c XEP-0115: remove wrong coroutine=True argument 2021-03-09 20:02:16 +01:00
mathieui
644ebfe89f XEP-0313: Only remove origin-id from the mask if it exists 2021-03-09 19:52:53 +01:00
mathieui
e329eadbed XEP-0313: Fix off-by-one-page RSM fetching
Add a "results" interface to mam_fin, and fix some things in RSM

Items just received were not taken into account because:
- RSM code is checking iq['mam_fin']['results'], results were at
  iq['mam']['results']
- RSM handler was run after checking the number
2021-03-09 19:52:53 +01:00
mathieui
97a63b9f25 XEP-0313: Update the API
- add an iterate() method that makes this plugin more practical
- add a get_fields method to retrieve the available search fields
- add a get_archive_metadata method.

This is a big chunk because git refused to split it further.
2021-03-09 19:52:53 +01:00
mathieui
7d2b245bb0 XEP-0441: Split MAM preferences into a separate plugin 2021-03-09 19:52:53 +01:00
mathieui
e5f4794a36 XEP-0313: Update stanza for completeness, and more docs 2021-03-09 19:52:53 +01:00
mathieui
1289cf575c Merge branch 'rsm-fixes' into 'master'
XEP-0059 (RSM) - Some fixes

See merge request poezio/slixmpp!145
2021-03-09 19:25:26 +01:00
Nicoco K
eac5ad50a8 XEP-0050 Make handle_command_xxx async 2021-03-09 19:24:43 +01:00
mathieui
30b1d27fc1 XEP-0004: stanza, only delete field type if it is not 'hidden'
Not strictly required, but most XEPs use it like that for forms of
type='submit', and that makes it easier to write stanza tests.
2021-03-08 21:04:21 +01:00
mathieui
cb83ebe32c Merge branch 'form-multi-attrib' into 'master'
XEP-0004: add "forms" as a multi-attrib plugin for Form

See merge request poezio/slixmpp!147
2021-03-08 18:53:56 +01:00
mathieui
ade1b010ed XEP-0004: add "forms" as a multi-attrib plugin for Form 2021-03-07 21:14:38 +01:00
mathieui
5ff46d6245 JID: add some forgotten type hints 2021-03-07 21:12:22 +01:00
mathieui
5a3ab2c5c1 tests: enable and fix RSM test for XEP-0030 2021-03-07 20:43:44 +01:00
mathieui
27cf97458b XEP-0059: docs and typing
Also:
 - fix a typo in the plugin description (wrong number)
 - add iq_options to make retrieval more flexible
2021-03-07 19:47:00 +01:00
mathieui
c1a598c34b Merge branch 'xep-0030-typing-and-co' into 'master'
XEP-0030: add typing and more docs

See merge request poezio/slixmpp!143
2021-03-04 22:14:59 +01:00
Nicoco K
9b5f3d9df0 Add XEP-0100 (Gateway Interaction) plugin
Remove usused prompt_future attribute

Add plugin_end

Update with mathieui's comments

Add option to transfer messages from unregistered users

XEP 0100 plugin
2021-03-02 18:54:22 +01:00
mathieui
49416dacbc XEP-0030 static: Fix PEP8, types 2021-03-01 21:11:33 +01:00
mathieui
e3027dabb2 XEP-0030 stanza: FIX PEP8, types 2021-03-01 20:55:27 +01:00
mathieui
10611525a0 XEP-0030 plugin: Fix PEP8, types 2021-03-01 20:54:53 +01:00
mathieui
9561a2a305 types: add some often-used types 2021-03-01 20:54:10 +01:00
mathieui
f12b04bd0b XEP-0405: Fix a bug in nodes returned by join_channel
Yay tests!
2021-02-27 13:21:13 +01:00
mathieui
8e388df8e0 XEP-0231: do not crash if max-age is None
it is only RECOMMENDED
2021-02-26 00:08:56 +01:00
mathieui
8eee559d39 api: update docstrings/typing 2021-02-26 00:08:56 +01:00
mathieui
2fed9f9ad2 XEP-0319: API changes
- ``idle`` and ``active`` are now coroutines.
2021-02-26 00:08:56 +01:00
mathieui
9947d3db85 XEP-0231: API changes
- ``get_bob`` and ``set_bob`` are now coroutines.
- ``del_bob`` returns a Future.
2021-02-26 00:08:56 +01:00
mathieui
ab87b25030 XEP-0153: API changes 2021-02-26 00:08:56 +01:00
mathieui
e24e2f58d4 XEP-0128: API changes
- ``set_extended_info``, ``add_extended_info`` and ``del_extended_info`` return Futures.
2021-02-26 00:08:56 +01:00
mathieui
4960cffcb4 XEP-0115: API changes
- ``get_verstring``, ``get_caps`` are now coroutines.
- ``assign_verstring``, ``cache_caps`` now return a Future.

side-effect: fix supports() and has_identity() broken since forever
2021-02-26 00:08:56 +01:00
mathieui
f0aec1614f XEP-0095: API changes
- ``accept`` and ``decline`` are now coroutines.
2021-02-26 00:08:56 +01:00
mathieui
504067d5a8 XEP-0077: API changes 2021-02-26 00:08:56 +01:00
mathieui
0b3233a6e8 XEP-0065: API changes 2021-02-26 00:08:56 +01:00
mathieui
f7ecce42ac XEP-0054: API changes
- ``get_vcard``, ``publish_vcard`` are now coroutines.
2021-02-26 00:08:56 +01:00
mathieui
d17967f58e XEP-0047: API changes
and fix unit tests broken for years.
2021-02-26 00:08:56 +01:00
mathieui
13de36baa1 XEP-0030: API changes
- ``supports``, ``has_identity``, ``get_info``, ``get_items`` are now coroutines
- ``set_info````set_items``, ``del_items``, ``add_item``, ``add_identity``,
  ``del_identity``, ``set_identities``, ``del_identities``, ``add_feature``,
  ``del_feature``, ``set_feature``, ``set_features``, ``del_features``
  now return a Future

also fix has_identity and supports which have been broken in forever
2021-02-26 00:08:56 +01:00
mathieui
7772e26a8c XEP-0027: API changes
- ``get_keyids`` and ``get_keyid`` are now coroutines.
- ``set_keyid`` and ``del_keyid`` now return a Future.
2021-02-26 00:08:56 +01:00
mathieui
0b6326e1cc XEP-0012: API changes. 2021-02-26 00:08:56 +01:00
mathieui
d51c4e307d api: make run() always return a Future
plugins must be modified to make use of this, but this keeps synchronous
code synchrouns while allowing coroutine in api, which makes sense.
2021-02-26 00:08:56 +01:00
mathieui
8da5310ea6 xmlstream: add a wrap() method for ensure_future 2021-02-26 00:08:56 +01:00