xmpp-rs/tokio-xmpp/ChangeLog
2024-12-18 18:33:42 +00:00

89 lines
5.1 KiB
Text
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Version NEXT:
XXXX-YY-ZZ RELEASER <admin@example.com>
* Breaking:
- Remove `tokio_xmpp::ParseError` and `tokio_xmpp::starttls::ParseError` which were never used
- Removed StreamFeatures from this crate, replaced with xmpp_parsers::stream_features::StreamFeatures (!400)
- `starttls::error::ConnectorError` variants have been merged with `starttls::error::Error`, except `ConnectorError::AllFailed`
which was not used and has been completely removed (!418)
- `ProtocolError` and `AuthError` are no longer exported in crate root;
access them from `error` module (!423)
- `connect::ServerConnector` no longer has `Error` associated type, the methods return tokio_xmpp::Error directly,
where Connection variant contains any error type that implements connect::ServerConnectorError (!421)
- `starttls::Error` no longer has `TokioXMPP` variant ; only tokio_xmpp::Error can contain starttls::Error,
not the other way around (!421)
- `AsyncClient::new` automatically reconnects by default (!436)
- `AsyncClient::poll_next` properly closes stream with `Poll::Ready(None)` when disconnecting without auto reconnect (!436)
- remove `tokio_xmpp::SimpleClient` because it was not widely used, and not well documented ; if you need it,
please let us know and it will be reintegrated (!428)
- `Component::new` and `Client::new only require jid/password argument (!428)
- `ServerConfig` and `Client::new_with_config` have been removed (!428)
- ``Client` now has `new_plaintext`, `new_starttls` and `new_with_connector` method (!428)
`new_plaintext` and `new_starttls` take a DnsConfig struct for SRV/DNS resolution strategy, while `new_with_connector` takes
anything that implements ServerConnector
- `Component` now has `new_plaintext` and `new_with_connector` constructors, just like `Client` but without StartTLS (!428)
- `tokio_xmpp::AsyncClient` has been renamed `tokio_xmpp::Client` (!428)
- `Component` is now gated behind `insecure-tcp` feature flag
- `XMPPStream` and `XmppCodec` were removed in favour of the newly
implemented `tokio_xmpp::xmlstream module.
* 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)
Version 4.0.0:
2024-07-26 Maxime “pep” Buquet <pep@bouah.net>
* Breaking:
- Add ServerConnector API to be able to change transports for the
stream and the consumer.
- DNS/TLS deps are now optional and available behind the `starttls-rust` and
the `starttls-native` features.
- Connectors for insecure tcp are now behind the `insecure-tcp` feature
and are disabled by default.
* Changes:
- Add support for channel binding (RFC 9266) on TLS 1.3 (TLS 1.2
pending) (faabc2984)
- Prevent tokio-xmpp from crashing when the server closes the stream
under our feet (aabd19f7).
- New public `AsyncClient::get_stream_features` and
`SimpleClient::get_stream_features` methods. (060088be)
- Add `serde` feature to proxy jid feature. (034976748)
- Add XmppCodec public. (6d449e9a)
- Remove workaround for Debian oldoldstable. (372234b9)
- Update to edition 2021. Remove TryFrom/Into as they're included in the
prelude. (4089891)
- Happy eyeballs: Connect to all records in parallel. The happy eyeballs
implementation used not to query AAAA if it got an answer for the A
record. (598ffdb, 6c3081d)
- Allow building docs with --all-features. It used to fail because it's
not possible to build with both the `tls-native` and `tls-rust`.
features. (0298caf9)
- Bump all dependencies.
- Change trust-dns to hickory-dns. (115edf6f)
- Remove unnecessary features from dependencies. (2d11ada30)
- Fix typos with codespell
- Various performance optimisations
Version 3.5.0:
2023-10-24 Maxime “pep” Buquet <pep@bouah.net>
* Changes:
- Require one and only one of tls-native and tls-rust to be enabled.
Technically a breaking change, but enabling both wasn't working in the
previous release anyway.
- Various fixes that were guarded under the tls-rust feature. All
updates from dependencies.
- Add serde feature, passed to jid crate
Version 3.4.0:
2023-08-17 Maxime “pep” Buquet <pep@bouah.net>
* Breaking changes:
- AsyncClient::new takes a parsed Jid instead of string (#72)
- Properly add @id to every stanza, and also add support for components.
* Changes:
- env_logger is now included in dev_dependencies for examples debugging with RUST_LOG=debug
- Fix debug prints to include all XML being sent and received
- Add chosen DNS method to debug logs
- Add syntax highlighting to debug logs
- Update dependencies
- Fix a deadlock when packets were being ignored. (6ccc5cc)
- Re-export jid structs, minidom::Element, and parsers module