As always you can find the artifacts in Maven Central:
<dependency> <groupId>rocks.xmpp</groupId> <artifactId>xmpp-core-client</artifactId> <version>0.7.0</version> </dependency> <dependency> <groupId>rocks.xmpp</groupId> <artifactId>xmpp-extensions-client</artifactId> <version>0.7.0</version> </dependency>
Release highlights are support for WebSocket connection, the new XMPP Address Format (RFC 7395), asynchronous API for IQ queries and XEP-0198: Stream Management (which is still a bit experimental).
Some API has also been revised for less ambigious and easier usage, e.g. timeouts are now represented by java.time.Duration
instead of a int/long
(which somtimes were seconds, sometimes milliseconds) and the xml:lang
attribute is now represented by java.util.Locale
instead of String
to prevent improper usage.
- Add support for XEP-0198: Stream Management
- Add support for WebSocket connection method (RFC 7395).
- Update Jid class to the new XMPP Address Format (RFC 7622)
- IQ queries can now be executed asynchronously (non-blocking) using Java 8’s
java.util.concurrent.CompletableFuture
API. - Represent
xml:lang
attributes asjava.util.Locale
, not asString
. - Represent timeouts as
java.time.Duration
instead ofint/long
for better clearness. - Add a very minimalistic DNS resolver for resolving SRV and TXT records in order to remove the dependency to com.sun.* classes.
- Add more
ReconnectionStrategy
implementations. - Check connected state of socket before connecting (to prevent
SocketException
when aSocketFactory
provides a connected socket) - Add
XmppSession#isAuthenticated()
method. - Add static
XmppSession#addCreationListener()
method to allow to listen for newly created sessions. - Update XEP-0080 to version 1.9 (add altaccuracy element).
- Add API to destroy a MUC room without a reason.
- More documentation, e.g. clarify the use of
ConnectionConfiguration#secure()
- Don’t include an empty body in Message Delivery Receipts.
- Add correct XML names to component namespace stanzas.
- Eagerly release unused port to prevent ports-leaks due to delayed GC
- Improve thread-safety during
connect()
and login() - Fix encoding issues, caused by missing UTF-8 encoding, mainly in the debugger.
- XEP-0033: Address should have extensions.
- Add workaround for a JDK bug causing memory issues and high CPU.
- Add documentation for custom SASL authentication.