Commit graph xmpp-rs/tokio-xmpp/src/client/mod.rs
Author SHA1 Message Date
Jonas Schäfer
80f899daa0 tokio_xmpp: implement high-level, resilient stanza stream 2024-12-17 18:16:02 +01:00
Jonas Schäfer
c6f928d5c8 xmlstream: make sink implementation generic
This allows to use any serialisable type. The advantage is that moves
and clones are avoided (which would otherwise be needed to construct
e.g. a XmppStreamElement from a Stanza or Message).
2024-12-17 16:12:56 +01:00
Jonas Schäfer
4cfe4f8429 xmlstream: implement simple timeout logic
This allows to detect and handle dying streams without getting stuck
forever.

Timeouts are always wrong, though, so we put the burden of choosing the
right values (mostly) on the creator of a stream.
2024-09-01 10:02:36 +02:00
Jonas Schäfer
ab10e30ac0 Port crates to use new XSO-based xmlstream 2024-08-29 16:47:13 +02:00
e6863bd9dd Reorganized client modules 2024-08-12 10:59:20 +00:00
a3fbd77050 Remove tokio_xmpp::SimpleClient 2024-08-10 16:49:24 +02:00
moparisthebest
733d005f51
DNS/TLS deps are now optional, component now also uses ServerConnector 2024-01-01 02:09:41 -05:00
moparisthebest
e784b15402
ServerConnector and AsyncClient support channel binding, SimpleClient uses ServerConnector 2024-01-01 02:08:40 -05:00
Astro
e501addb96 tokio-xmpp: use xmpp_parsers::ns everywhere 2020-05-30 01:25:06 +02:00
Astro
1e1f593233 tokio-xmpp: rustfmt 2020-05-30 00:45:22 +02:00
Astro
537b4825a8 tokio-xmpp: rename Client to AsyncClient 2020-05-30 00:43:53 +02:00
Astro
eb13634571 tokio-xmpp: rename OneshotClient to SimpleClient 2020-05-30 00:43:48 +02:00
Astro
2cd1ad217b tokio-xmpp: add onshot_client 2020-05-30 00:43:48 +02:00
Astro
c13712b158 tokio-xmpp client: condense fn connect(), refactor out into stream_features 2020-05-30 00:43:35 +02:00
Astro
4d24e6bebb tokio-xmpp: name Event::Online fields, add resumed flag 2020-05-29 18:21:31 +02:00
Astro
a4325c787a tokio-xmpp: doc 2020-03-16 00:34:46 +01:00
Astro
23cb34e026 tokio-xmpp: rewrite for futures-0.3 2020-03-06 18:01:31 +01:00
Maxime “pep” Buquet
44eaa5a6ea tokio-xmpp: Prevent XmppCodec from producing invalid stanza
This bug was introduced by 2e97f4de2e, to
fix another bug where the parser would choke on whitespace.

The bug would manifest whenever a stanza was sent in different parts,
for example:
<< "<message "
<< "type='chat><body>foo</body></message>"

Would produce the following once parsed:
`<messagetype='chat'><body>foo</body></messagetype='chat'>`

This commit ensures this doesn't happen anymore (by not trimming
whitespaces before feeding the parser), and also ensures that
whitespaces are now handled at the correct layer.

The removal of xmpp_codec::test_lone_whitespace only happens because I'm
not sure if it's supposed to be here anymore. Maybe it should be at a
different layer? Or written differently?

Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-01-22 01:25:15 +01:00
Maxime “pep” Buquet
a104ebc3f6
Rustfmt pass, and rustfmt --check in CI"
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-10-23 01:36:02 +02:00
Maxime “pep” Buquet
34aa710366
Prepare for merge: Move all tokio-xmpp files into tokio-xmpp/
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-10-18 14:16:01 +02:00
Renamed from src/client/mod.rs (Browse further)