Releases: qxmpp-project/qxmpp
Releases · qxmpp-project/qxmpp
QXmpp 1.2.0
Changelog
QXmpp now requires Qt 5.7 or later. Unfortunately ABI compatibility was not
kept this release again. Code coverage has been improved from 68.93% to 69.55%.
New features:
- Implement XEP-0077: In-band registration:
- Implement XEP-0231: Bits of Binary (#230, @lnjX)
- Add
QXmppClient::indexOfExtension<T>()
(#241, @lnjX) - Add QXmppStartTlsPacket to replace fixed XML data (#236, @lnjX)
- Move TLS code to private QXmppTlsManager (#236, @lnjX)
- Add private QXmppInternalClientExtensions to access private part of the
client (#243, @lnjX) - Add utility methods to QXmppRegisterIq to create common requests (#247, @lnjX)
Fixes:
- QXmppMucManager: Make it possible to handle stanzas not handled by the
manager (#226, @kollix) - Only send Client State Indication (CSI) states when connected (#232, @lnjX)
- Fix no documentation is generated for QXmppStanza::Error and
QXmppStreamFeatures (@lnjX) - Fix some doxygen warnings and undocumented Q_PROPERTYs (@lnjX)
Misc:
- Replace deprecated Q_FOREACH (#210, @lnjX)
- Replace deprecated Q_ENUMS with Q_ENUM (#227, @lnjX)
- Replace deprecated signal/slots syntax (#237, @jbbgameich)
- Switch to Ubuntu Bionic for Travis-CI builds (#210, @lnjX)
- Use QSharedDataPointers for QXmppRegisterIq, QXmppPubSubIq,
QXmppDiscoveryIq, QXmppMam{Query,Result}Iq, QXmppStreamFeatures
(#230, #235, #252, @lnjX) - Refactor QXmppPubSubIq and add missing tests (#235, @lnjX)
- Refactor QXmppPresence and add missing tests (#231, @lnjX)
- Replace manual xmlns writing by writeDefaultNamespace() (#244, @lnjX)
- Use QT_VERSION_CHECK to generate QXMPP_VERSION (#238, @lnjX)
- Add clang-format file (#239, @0xd34df00d)
QXmpp 1.1.0
All new classes and methods in this release are marked in the documentation
with since QXmpp 1.1.
New features:
- Add support for SCRAM-SHA-1 and SCRAM-SHA-256 (#183, @jlaine)
- Order SASL mechanisms to prefer the most secure (#187, @jlaine)
- Add XEP-0334: Message Processing Hints (v0.3.0) (#212, @lnjX, @jaragont, @sam-truscott)
- Add XEP-0363: HTTP File Upload (v0.9.0) (#188, @lnjX)
- Add XEP-0367: Message Attaching (v0.3.0) (#196, @lnjX)
- Add XEP-0369: Mediated Information eXchange (MIX) (v0.14.2) (partially):
- Add XEP-0380: Explicit Message Encryption (v0.3.0) (#199, @lnjX)
- Add XEP-0382: Spoiler messages (v0.2.0) (#195, @lnjX)
Fixes:
- Do not accept receipts from other resources of the used account (#192, lnjX)
- cmake: Set minimum version before creating project() and bump to 3.3 (#205, @jbbgameich)
Deprecations:
- Deprecate QXmppClient extension getters (#214, @lnjX):
QXmppClient::rosterManager()
: UseQXmppClient::findExtension<QXmppRosterManager>()
insteadQXmppClient::vCardManager()
: UseQXmppClient::findExtension<QXmppVCardManager>()
insteadQXmppClient::versionManager()
: UseQXmppClient::findExtension<QXmppVersionManager>()
instead
- Refactor data form media element, deprecate
QXmppDataForm::Media
(#222, @lnjX):QXmppDataForm::Media
: Use a list of the newQXmppDataForm::MediaSource
in combination with aQSize
QXmppDataForm::Field::media()
/QXmppDataForm::Field::setMedia()
: UseQXmppDataForm::Field::mediaSources()
andQXmppDataForm::Field::mediaSize()
Misc:
- Replace deprecated
qSort()
bystd::sort()
(#206, @jbbgameich) - Do not use deprecated
QSslSocket::setCaCertificates()
(#206, @jbbgameich) - Modernize code by using
nullptr
,override
, etc. (#204, @jbbgameich) - Move attributes into private d-pointer for future ABI compatibility:
- Use raw literals, range based loops and
auto
(#224, @jbbgameich)
QXmpp 1.0.1
QXmpp 1.0.0
New features:
- Add XEP-0066: Out of Band Data (partially) (#167, @lnjX)
- Add XEP-0198: Stream Management (#99, @olesalscheider)
- Add XEP-0237: Roster Versioning (#142, @LightZam)
- Add XEP-0280: Message Carbons (#88, @fbeutel)
- Add XEP-0308: Last Message Correction (#170, @lnjX)
- Add XEP-0313: Message Archive Management (#120, @olesalscheider)
- Add XEP-0319: Last User Interaction in Presence (#171, @lnjX)
- Add XEP-0352: Client State Indication (#159, @fbeutel, @lnjX)
- Auto-connect to next DNS-SRV record server on connection failure
(#105, @kollix) - QXmppVersionManager: Use QSysInfo to determine default OS (#168, @lnjX)
- QXmppDiscoveryManager: Default to
phone
type on mobile platforms
(#168, @lnjX) - CMake based build system (#131, @olesalscheider)
- Add BUILD_SHARED option (#160, @LightZam)
- Use C++11 compiler standard (@jlaine)
Fixes:
- Do not ignore SSL errors by default (#113), if you need to deal with
broken SSL configurations, set QXmppConfiguration::ignoreSslErrors to true.
(@jlaine) - Disable tests that require QXMPP_AUTOTEST_EXPORT (fixes #149) (@jlaine)
- Fix QXmppSslServer::incomingConnection signature (#131, @olesalscheider)
- Add missed variables initialization in constructors of few classes
(#122, @tehnick)
Tests:
- travis: Test builds with clang (@0xd34df00d)
- travis: Switch to Ubuntu Xenial (#151, @tehnick)
- tests: Generate coverage repot (@jlaine)
- Build examples by default
Deprecations:
- Drop Qt4 support (#131, @olesalscheider)
- Remove example_4 / GuiClient (#131, @olesalscheider)
QXmpp 0.9.3
- Add QXmppIceConnection::gatheringState property.
- Improve QXmppTransferManager::sendFile's handling of QIODevice ownership.
- Fix QXmppTransferManagerFix convering filename to a QUrl.
QXmpp 0.9.2
- Fix build error for debug builds.
- Allow QXmppJingleIq to have multiple contents.
QXmpp 0.9.1
- Fix build error when VPX support is enabled (issue 71).
QXmpp 0.9.0
- Fix phone numbers incorrectly read from / written to vCard as "PHONE" element instead of "TEL" (#65).
- Make QXmppClient::connectToServer(QXmppConfiguration, QXmppPresence) a slot (#63).
- Correctly receive data immediately following a SOCKS5 message (#64).
- Make QXmppStream handle end of incoming stream (#70).
- Add unit tests for QXmppCallManager and QXmppTransferManager.
- Improve ICE implementation to follow RFC 5245 more closely and hide implementation details from public API.