1
0
mirror of https://github.com/qt/qtmqtt.git synced 2026-10-25 16:16:26 +00:00
Commit Graph

1108 Commits

Author SHA1 Message Date
Qt Submodule Update Bot
06c368d44f Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I3bd4366c6510c2e610fa684e9ab6db1cf504ab6d
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-07-07 11:01:40 +00:00
Qt Submodule Update Bot
f4398ac583 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I0d8c1a212a44147d69ec92c5ff97257d533636fe
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-07-03 17:47:37 +00:00
Qt Submodule Update Bot
8141fbbb6c Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I745c707bea84130fa451c8178f9ad0f5d46f2e45
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-07-02 00:01:47 +00:00
Qt Submodule Update Bot
3f99de6d17 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I2c7f6a2c5622c60af230dac827f144ffa81bb531
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-06-30 15:55:49 +00:00
Qt Submodule Update Bot
7cbde7dc91 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I9ba15372af59a99a409d7aeb3556f5aa8d1ad6fe
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-06-27 16:23:42 +00:00
Qt Submodule Update Bot
f2c7593a55 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I8f2203f45802b9dc7bd8c19835bb22ad97bfb28c
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-06-25 23:28:27 +00:00
Even Oscar Andersen
c383083270 Make sure unsubscribe followed by subscribe returns new subscription
Since we could only have one subscription for each topic it was
not possible to return a new subscription when a subscription
request comes in on a topic that is scheduled for destruction.

We solve this by switching to a QMultiHash for the active
subscriptions, allowing more then one subscription for a
given topic. However, at most one of these subscriptions
are not present in the list of subscriptions scheduled to
be unsubscribed

This patch also changes multiple unsubscribes to the
same topic. Earlier all would return true, and
m_pendingUnsubscriptions would be updated for all
requests.
The new behavior is that only the first unsubscribe
is acted upon. Furthere requests will return false.

Fixes: QTBUG-135653
Pick-to: 6.8 6.9 6.10
Change-Id: I5a79efb68b3191e185325a89cc2042c773bb5c12
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
2025-06-24 13:14:36 +02:00
Cristian Le
a0a4633308 Move qt_internal_project_setup as early as possible
The earliest we can move this is right after `BuildInternals`. This
allows us to add function calls before navigating the `find_package`
tree of the dependents.

Task-number: QTBUG-135233
Change-Id: I2ee7bb0cb5addc422405768ba5706607a7257d6f
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2025-06-20 15:33:39 +02:00
Qt Submodule Update Bot
b47cff69bf Update dependencies on 'dev' in qt/qtmqtt
Change-Id: Idaf84020852076585ef93858717f5a752a0b3a19
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-06-18 01:10:05 +00:00
Qt Submodule Update Bot
9c0cef3350 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: Iaa91353a84251a60f0e01dd2db6a611684c1320c
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-06-14 05:35:06 +00:00
Jani Heikkinen
ae33492ca8 Bump version to 6.11.0
Change-Id: I086e87ea2dcc44e5acd11d298cf893dd26dba16b
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-06-14 06:35:05 +01:00
Even Oscar Andersen
6eb01cac46 Mention in websockets subscription example that websockets are builtin
Added a \note, but keeping the example to show how to create custom
transports.

Pick-to: 6.10
Change-Id: Idf3b22532f6e0b94a0113cea6152a36e81398ea9
Reviewed-by: Paul Wicking <paul.wicking@qt.io>
2025-06-12 13:40:32 +02:00
Even Oscar Andersen
2978075162 Add missing trailing comma for enums
Found in api-review.

Task-number: QTBUG-137478
Pick-to: 6.10
Change-Id: I73984caae5714c0f3cddd0f1770ddf19fd6fcd49
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
2025-06-12 09:32:21 +02:00
Even Oscar Andersen
951ea815b8 cosmetic fix in qmqttclient.h after API review
Moved declaration of the new connectToHostWebSocket[Secure]
afer connectToHostEncrypted

Task-number: QTBUG-137478
Pick-to: 6.10
Change-Id: I58ef8da23bf9759a1744908e02c6b9ef5db405f1
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
2025-06-12 08:23:11 +02:00
Qt Submodule Update Bot
27a5c3ce6b Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I1de43ec97d385dfb22be3908444106d911b0dfc6
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-05-24 01:05:08 +00:00
Qt Submodule Update Bot
d09d1fbf67 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I5856f01258f66531f630498d347d9e7b4abc1841
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-05-21 11:10:34 +00:00
Qt Submodule Update Bot
f542cfa1a4 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I0684185387dd54082efc089b588d10aec101a8a6
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-05-18 11:34:05 +00:00
Qt Submodule Update Bot
22b5735162 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I178cf8b191d92ccd0b5eff57b07f70ee25f09c63
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-05-13 21:31:06 +00:00
Qt Submodule Update Bot
5b5dee5f74 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: Ib21e6cac99074663dc91eee737af41225a3aa7e0
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-05-08 16:39:13 +00:00
Qt Submodule Update Bot
9c04ffb5c3 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: Ib2312b9c2a8a2f5d61b56bfa405d259cc7cb3dda
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-05-03 03:37:03 +00:00
Qt Submodule Update Bot
7ce0033a38 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I6308729917e195f4a8aec5328285f00fff913410
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-05-01 09:33:52 +00:00
Qt Submodule Update Bot
ec49cefbaf Update dependencies on 'dev' in qt/qtmqtt
Change-Id: Ib0f38c485af7f093122f5a2739ee90f365103ada
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-04-29 15:16:48 +00:00
Qt Submodule Update Bot
11172cfa34 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: Idaac3051ff5ff6656e43f0327cc8d9c4da0946cb
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-04-24 10:35:47 +00:00
Michal Klocek
9929b7c148 Band-aid patch for overriding mosquitto installation detection
Currently installation is detected by looking for 'mqtt.conf' files,
which are set during provisioning in install-mosquitto-mqtt.sh
and install-mosquitto.ps1. However, this only reflects installation on
the build machine and not on test node. Therefore, add a way to disable
it on WOA also when cross compiled despite of existence of
'mqtt.conf' files on build node.

This is just barely a band aid patch as handling should be really done
during provisioning by Set-EnvironmentVariable, which than could be
read directly by test node as {{.Env.XXX}. However, it would also require the test to detect the setting during runtime and not during compile time.

Note the native arm64 windows setup has no mosquitto installation,
therefore this patch does not change anything for current native windows
arm setup, it only overrides setup for cross compilation node.

Task-number: COIN-1211
Change-Id: Ie6e84b6b04da48c1df284a388022f31ba1eea93e
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
2025-04-11 08:01:20 +00:00
Qt Submodule Update Bot
97fd1f585f Update dependencies on 'dev' in qt/qtmqtt
Change-Id: Id96ae45b056d46ea5bf62bc0c89eb4b92f65e0ed
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-04-03 16:38:58 +00:00
Qt Submodule Update Bot
2465b63c36 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I3f33036115fd78c2bb44973ead264a0bed78bd07
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-04-01 13:26:22 +00:00
Qt Submodule Update Bot
c04fcebf93 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I573c1e68a9c5d65c57eca4b56a214b8cfa65c6ea
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-03-29 16:47:26 +00:00
Paul Wicking
2cfbbfd24e Add .gitreview file
`git-review` is a command line tool for interacting with Gerrit.
Some IDEs offer support for this tool, either natively or through
plugins. The tool relies on a configuration file, .gitreview. Adding
this configuration file to our repositories simplifies initial setup
for contributors that use the tool directly or through their IDE of
choice.

The configuration file adds a remote called 'gerrit'. This is the
default for the tool, and also the name set for
codereview.qt-project.org by Qt's `init-repository` script. Thus,
the configuration should work seamlessly alongside other repository
helpers.

Task-number: QTBUG-132604
Pick-to: 6.9 6.8
Change-Id: I5b2f0c79f58d97fcc9cb339d663d9cb15cd09c57
Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch>
2025-03-24 15:22:02 +01:00
Qt Submodule Update Bot
b5bd818d22 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: Id6dfed84e1357377c11ab0171d3b615cbbf879d2
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-03-19 18:31:03 +00:00
Lucie Gérard
0c91902e7e Update licensing of files with infrastructure type
A QUIP 18[1] update sets git files, REUSE.toml and licenseRule.json
as infrastructure type files. They are licensed with:
LicenseRef-Qt-Commercial OR BSD-3-Clause

[1]: https://contribute.qt-project.org/quips/18

Pick-to: 6.9 6.8
Change-Id: I03d77977a9ee6e41d0a7b45dbe9dc3006c2cce83
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
2025-03-14 13:37:56 +01:00
Lucie Gérard
609f3fe7eb Remove unnecessary comment
Pick-to: 6.9 6.8
Change-Id: Ib2c53483e2fe011c239df0918663a75e98641e0e
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
2025-03-05 09:37:10 +01:00
Qt Submodule Update Bot
9048f80e3a Update dependencies on 'dev' in qt/qtmqtt
Change-Id: Ia06b68d234528992174e8ba1f1b25b0a0752dd33
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-02-28 09:13:41 +00:00
Lucie Gérard
6b9b462bb5 Make module ready for source SBOM checking
This includes:
- turning VERIFY_SOURCE_SBOM ON
- adding exception to the licenseRule.json files
- correcting the licensing given via REUSE.toml files

A lot of files are skipped during the license test,
but all are present in the source SBOM.
This is why  correction are needed before turning the
source SBOM check on.

Task-number: QTBUG-131434
Pick-to: 6.9
Change-Id: I5398523eafdae59a234bc2ed5ddd229c0aa923df
Reviewed-by: Maurice Kalinowski <maurice.kalinowski@qt.io>
2025-02-21 07:45:57 +00:00
Qt Submodule Update Bot
d0ee0581d0 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: Ic6437947f3193cb5b8566d6e8094781925184503
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-02-20 11:57:14 +00:00
Qt Submodule Update Bot
af0893b8bb Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I10122a727ab1fb3273aa3d5a9c2996bba8e0c135
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-02-19 17:58:37 +00:00
Qt Submodule Update Bot
0473d461f5 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I93c88e4acbc28f9976e99a6512fddfd50641aa0a
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-02-19 05:29:38 +00:00
Qt Submodule Update Bot
5d29379dfb Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I64add92d00913c692797554b5154ea2220f66055
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-02-18 15:51:34 +00:00
Even Oscar Andersen
f9305b56d9 Add websockets as an optional dependency on qtmqtt
Change-Id: I82e1e809adef35d1d09ec248c69f4f49eca8b0f2
Reviewed-by: Piotr Wierciński <piotr.wiercinski@qt.io>
2025-01-30 09:11:48 +01:00
Even Oscar Andersen
8316766cec Add tests for websocket support for mqtt
For at least one platform run the twelve combinations of:
 Transport: [Tcp,Ssl,Ws,Wss]
 Protocol: [3.1, 3.1.1, 5.0]

This happens if the following defines are present:
  MQTT_TEST_BROKER
  MQTT_TEST_TYPE
  MQTT_TEST_PROTOCOL

If these are not defined, the old test behavior is kept

The logic is that we are replacing the type of VersionClient
to homegrown logic that replaces connectToHost with the
correct function:
  connectToHost
  connectToHostEncrypted,
  connectToHostWebSocket
  connectToHostWebSocketEncrypted

For this to work it is important that the VersionClient
macro is used everywhere.

Also, DefaultVersionTestData has been changed to
return version(0) if MQTT_TEST_PROTOCOL is defined,
we will now run one protocol at the time instead.

This is Change Request 2 of 2 wrt testing.

Task-number: QTBUG-129171
Change-Id: I4f68d7c2ea226a1107f009c80f87f8b749d9f120
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
2025-01-29 15:54:55 +01:00
Even Oscar Andersen
967c70f1d5 Use VersionClient macro everywhere
We want to use the VersionClient macro to iterate over
version,connectiontype. To do this (in a later patch)
it is necessary that VersionClient is used everywhere.

This is change request 1 of 2 wrt mqtt tests.

Task-number: QTBUG-129171
Change-Id: Ica2f97bc2fd130cc49191d7381d49e88e8dc4a0c
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
2025-01-29 12:40:15 +01:00
Even Oscar Andersen
dec643fc61 Add websocket support for mqtt
Move the example IODevices to be used with websockets
under the mqtt umbrella.

Two (private) devices are created; QMqttSecureWebSocketIO
and QMqttWebSocketIO

Fixes: QTBUG-129171
Change-Id: Ib7d37150c3a229e882a0c04a32cdd8b7929baf3b
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
2025-01-29 07:42:34 +01:00
Even Oscar Andersen
24f5eceea2 Replace raw m_transport pointer with std::shared_ptr
Preparing for the add websocket change request.

Using shared_ptr gives automatic lifetime management
and is needed when adding more transport types.

Task-number: QTBUG-129171
Change-Id: I347175c018963130f403f8e9fe764e77203383a9
Reviewed-by: Jøger Hansegård <joger.hansegard@qt.io>
2025-01-27 06:42:47 +01:00
Qt Submodule Update Bot
aa2fb73ac4 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I7cd9aed27c00b0470c2d336156cc581a00597480
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-01-23 19:56:18 +00:00
Qt Submodule Update Bot
3543195ee0 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: Icf63208ccf188653718b210a0d6ae529424d7a01
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-01-20 13:32:20 +00:00
Qt Submodule Update Bot
937974f18c Update dependencies on 'dev' in qt/qtmqtt
Change-Id: Ibbc37bab74636877240d7af614765127a3d144e0
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-01-14 18:18:02 +00:00
Qt Submodule Update Bot
ceeb04c46f Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I81b0d58559b4eec930a43c470696233a0998b1fb
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-01-03 14:15:01 +00:00
Jani Heikkinen
d1f445af72 Bump version to 6.10.0
Change-Id: I95e2cd231e584635b5a1efddc04192a45c274378
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2025-01-03 14:15:00 +00:00
Volker Hilsheimer
7130aadcea Move logging category into new private global header
Addresses header review comemnts, amends
18bed862b2.

Task-number: QTBUG-132090
Fixes: QTBUG-132164
Pick-to: 6.9
Change-Id: I7d8f2b048482e18112b02374fe53f2bbed52021e
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
2024-12-17 13:48:37 +01:00
Qt Submodule Update Bot
b118aafb0b Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I610c91b8895a9466575dec1e2a47feb784783bb0
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2024-12-08 17:02:31 +00:00
Qt Submodule Update Bot
9aec010a74 Update dependencies on 'dev' in qt/qtmqtt
Change-Id: I11b6c11833d5f35a8bef63ed8dbe0175482de226
Reviewed-by: Qt Submodule Update Bot <qt_submodule_update_bot@qt-project.org>
2024-12-08 03:30:11 +00:00