Releases: qxmpp-project/qxmpp
Releases · qxmpp-project/qxmpp
QXmpp 1.8.3
QXmpp 1.8.2
QXmpp 1.8.1
QXmpp 1.8.0
- QXmpp now requires C++20
- Fix connection to next SRV record if connection to first address fails (@lnjX, #644)
- Implement XMPP over TLS ("direct TLS" instead of STARTTLS, XEP-0368) (@lnjX, #642)
- Support of protocol/server name multiplexing, ALPN and SNI extensions
- New Bind 2 support (XEP-0386) (@lnjX, #614)
- Client and server support of resource binding through SASL2 + Bind2
- Resource prefix can be configured in QXmppConfiguration
- Setting of Client State Indication (CSI) initial state on connection
- Enabling of Stream Management (through Bind 2) and stream resumption (through SASL 2)
- Enabling of Message Carbons (through Bind 2)
- Support FAST, token-based authentication (XEP-0484) (@lnjX, #630)
- Offers single round trip authentication (but doesn't replace strong authentication methods
like SCRAM+password) - FAST tokens (and other credentials) can be stored permanently via QXmppCredentials
- Tokens are generated if a SASL 2 user agent is set and FAST is not disabled in the config
- Offers single round trip authentication (but doesn't replace strong authentication methods
- New QXmppUri for parsing XMPP URIs (XEP-0147) (@lnjX, #641)
- New AccountMigrationManager for importing and exporting account data (@lnjX, @pasnox, #623)
- Message: Parse all stanza IDs (XEP-0359) (@lnjX, #638)
- CSI state is automatically restored across reconnects, also without Bind 2 or stream management (@lnjX, #622)
- Use smaller stream management acks instead of ping IQs if possible (@lnjX, #625)
- Moved STARTTLS handling into the core client again (was in client extension) (@lnjX, #627)
- VCardManager: New task-based API (@lnjX, #623)
QXmpp 1.7.1
QXmpp 1.7.0
- Complete support of MIX groupchats and add new QXmppMixManager (@melvo, #589)
- Support of new SASL 2 authentication from XEP-0388: Extensible SASL Profile (@lnjX, #607)
- Update support of XEP-0428: Fallback Indication to v0.2 (@lnjX, #608)
- Update support of XEP-0447: Stateless file sharing to v0.3.1 (@lnjX, #613)
- ClientExtension: New onRegistered() and onUnregistered() virtual functions, called when the extension is added to or removed from a client. (@lnjX, #599)
- Client: New error handling: New errorOccurred() signal with QXmppError based API (@lnjX)
- New StreamError, AuthenticationError and BindError offering more details about connection errors (@lnjX)
- The 'from' attribute of the <stream:stream> open is set if a JID is configured (@lnjX)
- Security improvements in the internals of QXmppClient by terminating the connection when unexpected packets are received (@lnjX)
Breaking changes:
QXmpp 1.6.1
Fixes:
- Fix handling of XMPP redirects (introduced in aaa6497) (@lnjX)
- Fix compilation with Qt 6 + C++17 (not C++20) in OmemoData (@lnjX)
- Fix OMEMO decryption of group chat messages (@melvo, #617)
- Fix stream resumption (@lnjX)
This has been an issue since the initial implementation of stream mangement. The xmlns was
missing in the <resume/> element and the stream ID was not parsed in the <enabled/>
element.
QXmpp 1.6.0
QXmpp requires Qt 5.15 or 6.0+ now, the previous release was still compatible with Qt 5.9.
New features:
- First QXmpp logo (#528, @raghu-kamath)
- Implement XEP-0215: External Service Discovery (#542, @taiBsu)
- Implement XEP-0353: Jingle Message Initiation (#570, @taiBsu)
- Implement XEP-0482: Call Invites (#575, @taiBsu)
- Implement XEP-0191: Blocking Command (#577, @lnjX)
- Client: New constructor for creating without any extensions (@lnjX)
QXmpp 1.5.6
- Behaviour change: sendIq() automatically parses stanza errors (returned as QXmppError) (@lnjX)
- CMake: "QXmpp" legacy cmake package is now only installed for Qt 5 builds (@lnjX)
- Fix unit tests with Qt 6! (@lnjX)
- EncryptedFileSharingProvider: Fix wrong cipher set in sent file share element (@lnjX)
- Fix SCE parsing mode when parsing encrypted messages (@lnjX)
- Fix file encryption with QCA issues (@lnjX)
- Fix picking by strength of hashing algorithms (@lnjX)
- Fix github ci (@lnjX)
- Add unit tests for all file encryption ciphers (@lnjX)