tokio-xmpp: Bump to 5.0.0

Signed-off-by: pep <pep@bouah.net>
This commit is contained in:
pep 2025-10-28 20:39:57 +01:00
commit 0e7ac066d4
3 changed files with 47 additions and 34 deletions

View file

@ -1,6 +1,6 @@
[package] [package]
name = "tokio-xmpp" name = "tokio-xmpp"
version = "4.0.0" version = "5.0.0"
authors = ["Astro <astro@spaceboyz.net>", "Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>", "pep <pep+code@bouah.net>", "O01eg <o01eg@yandex.ru>", "SonnyX <randy@vonderweide.nl>", "Paul Fariello <paul@fariello.eu>"] authors = ["Astro <astro@spaceboyz.net>", "Emmanuel Gil Peyrot <linkmauve@linkmauve.fr>", "pep <pep+code@bouah.net>", "O01eg <o01eg@yandex.ru>", "SonnyX <randy@vonderweide.nl>", "Paul Fariello <paul@fariello.eu>"]
description = "Asynchronous XMPP for Rust with tokio" description = "Asynchronous XMPP for Rust with tokio"
license = "MPL-2.0" license = "MPL-2.0"

View file

@ -1,30 +1,45 @@
Version NEXT: Version NEXT:
XXXX-YY-ZZ RELEASER <admin@example.com> 0000-00-00 RELEASER <releaser@domain>
Version 5.0.0:
2025-10-28 pep <pep@bouah.net>
* Breaking: * Breaking:
- Remove `tokio_xmpp::ParseError` and `tokio_xmpp::starttls::ParseError` which were never used - Remove `tokio_xmpp::ParseError` and `tokio_xmpp::starttls::ParseError`
- Removed StreamFeatures from this crate, replaced with xmpp_parsers::stream_features::StreamFeatures (!400) which were never used
- `starttls::error::ConnectorError` variants have been merged with `starttls::error::Error`, except `ConnectorError::AllFailed` - Remove StreamFeatures from this crate, replaced with
which was not used and has been completely removed (!418) `xmpp_parsers::stream_features::StreamFeatures` (!400)
- `ProtocolError` and `AuthError` are no longer exported in crate root; - `starttls::error::ConnectorError` variants have been merged with
access them from `error` module (!423) `starttls::error::Error`, except `ConnectorError::AllFailed` which was
- `connect::ServerConnector` no longer has `Error` associated type, the methods return tokio_xmpp::Error directly, not used and has been completely removed (!418)
where Connection variant contains any error type that implements connect::ServerConnectorError (!421) - Remove `ProtocolError` and `AuthError` from crate root; access them
- `starttls::Error` no longer has `TokioXMPP` variant ; only tokio_xmpp::Error can contain starttls::Error, from `error` module (!423)
not the other way around (!421) - Remove `connect::ServerConnector`'s `Error` associated type, the
methods return tokio_xmpp::Error directly, where Connection variant
contains any error type that implements connect::ServerConnectorError
(!421)
- Remove `starttls::Error`'s `TokioXMPP` variant ; only
tokio_xmpp::Error can contain starttls::Error, not the other way around
(!421)
- `AsyncClient::new` automatically reconnects by default (!436) - `AsyncClient::new` automatically reconnects by default (!436)
- `AsyncClient::poll_next` properly closes stream with `Poll::Ready(None)` when disconnecting without auto reconnect (!436) - `AsyncClient::poll_next` properly closes stream with
- remove `tokio_xmpp::SimpleClient` because it was not widely used, and not well documented ; if you need it, `Poll::Ready(None)` when disconnecting without auto reconnect (!436)
please let us know and it will be reintegrated (!428) - Remove `tokio_xmpp::SimpleClient` because it was not widely used, and
- `Component::new` and `Client::new only require jid/password argument (!428) not well documented ; if you need it, please let us know and it will be
- `ServerConfig` and `Client::new_with_config` have been removed (!428) reintegrated (!428)
- ``Client` now has `new_plaintext`, `new_starttls` and `new_with_connector` method (!428) - Change `Component::new` and `Client::new` interface ; only require
`new_plaintext` and `new_starttls` take a DnsConfig struct for SRV/DNS resolution strategy, while `new_with_connector` takes jid/password argument (!428)
anything that implements ServerConnector - Remove `ServerConfig` and `Client::new_with_config` (!428)
- `Component` now has `new_plaintext` and `new_with_connector` constructors, just like `Client` but without StartTLS (!428) - Add `new_plaintext`, `new_starttls` and `new_with_connector` method to
- `tokio_xmpp::AsyncClient` has been renamed `tokio_xmpp::Client` (!428) `Client` (!428)
- `Component` is now gated behind `insecure-tcp` feature flag `new_plaintext` and `new_starttls` take a DnsConfig struct for SRV/DNS
- `XMPPStream` and `XmppCodec` were removed in favour of the newly resolution strategy, while `new_with_connector` takes anything that
implemented `tokio_xmpp::xmlstream module. implements ServerConnector
- Add `new_plaintext` and `new_with_connector` constructors to
`Component`, just like `Client` but without StartTLS (!428)
- Rename `tokio_xmpp::AsyncClient` to `tokio_xmpp::Client` (!428)
- Gate `Component` behind `insecure-tcp` feature flag
- Remove `XMPPStream` and `XmppCodec` in favour of the newly implemented
`tokio_xmpp::xmlstream module.
- The TLS-related feature flags have been completely reworked to make - The TLS-related feature flags have been completely reworked to make
them easier to use. The `tls-rust-*`, `tls-native` and `starttls-*` them easier to use. The `tls-rust-*`, `tls-native` and `starttls-*`
feature flags have been removed in favour of more concise flag names feature flags have been removed in favour of more concise flag names
@ -36,21 +51,19 @@ XXXX-YY-ZZ RELEASER <admin@example.com>
Please refer to the crate docs for details. (!581) Please refer to the crate docs for details. (!581)
* Added: * Added:
- Add new `direct-tls` connection method to the `Client`. (!585) - Add new `direct-tls` connection method to the `Client`. (!585)
- Support for sending IQ requests while tracking their responses in a - Support sending IQ requests while tracking their responses in a Future.
Future.
- `rustls` is now re-exported if it is enabled, to allow applications to - `rustls` is now re-exported if it is enabled, to allow applications to
set the default crypto provider if needed. (!581) set the default crypto provider if needed. (!581)
- Derive Debug on Client and associated structs - Derive Debug on Client and associated structs
- Document TlsStream behind 'ktls' feature - Add ktls support. On Linux, once the TLS session is established, we
can delegate the actual encryption and decryption to the kernel, which
in turn can delegate it to a hardware implementations if available.
This depends on the `tls-rust-ktls` feature. (!458, !490)
* Changes: * Changes:
- On Linux, once the TLS session is established, we can delegate the
actual encryption and decryption to the kernel, which in turn can
delegate it to a hardware implementations if available. This depends
on the `tls-rust-ktls` feature. (!458, !490)
- Building with insecure-tcp and no other feature got fixed.
- Update rxml dependency to 0.13. - Update rxml dependency to 0.13.
- Remove warnings for elided lifetimes (rustc 1.90) - Remove warnings for elided lifetimes (rustc 1.90)
- Use thiserror for the error types. (!616) - Use thiserror for the error types. (!616)
- Fix building with 'insecure-tcp' only.
- Remove warning when 'rustls-any-backend' feature isn't enabled - Remove warning when 'rustls-any-backend' feature isn't enabled
Version 4.0.0: Version 4.0.0:

View file

@ -21,7 +21,7 @@ log = "0.4"
reqwest = { version = "0.12", features = ["stream"], default-features = false } reqwest = { version = "0.12", features = ["stream"], default-features = false }
tokio-util = { version = "0.7", features = ["codec"] } tokio-util = { version = "0.7", features = ["codec"] }
# same repository dependencies # same repository dependencies
tokio-xmpp = { version = "4.0", path = "../tokio-xmpp", default-features = false } tokio-xmpp = { version = "5.0", path = "../tokio-xmpp", default-features = false }
[dev-dependencies] [dev-dependencies]
env_logger = { version = "0.11", default-features = false, features = ["auto-color", "humantime"] } env_logger = { version = "0.11", default-features = false, features = ["auto-color", "humantime"] }