From ad98cffc004de0104e117830421584503954b4fb Mon Sep 17 00:00:00 2001 From: Alexey Edelev Date: Fri, 23 Feb 2024 15:30:40 +0100 Subject: [PATCH 01/21] Set OUTPUT_HEADERS and OUTPUT_TARGETS in qt_add_protobuf explicitly Forward the OUTPUT_HEADERS and OUTPUT_TARGETS arguments to the PARENT_SCOPE in qt_add_protobuf methods otherwise the variables remain empty when calling versionless function. Fixes: QTBUG-122700 Change-Id: Iefcf802e51e995bdd9ab4f79c475bdb52a3bab4f Reviewed-by: Alexandru Croitor (cherry picked from commit 2901ebad17c9cdfb058812e69164ec987aed2f6d) Reviewed-by: Qt Cherry-pick Bot (cherry picked from commit ab2f8a586fdbb50d068477d32bb423b730b1ac5e) (cherry picked from commit 7f1c0b6926620fa1ce997f0105ebc5472668a227) --- src/tools/qtprotobufgen/Qt6ProtobufToolsMacros.cmake | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/tools/qtprotobufgen/Qt6ProtobufToolsMacros.cmake b/src/tools/qtprotobufgen/Qt6ProtobufToolsMacros.cmake index 7f526c23..2fb22984 100644 --- a/src/tools/qtprotobufgen/Qt6ProtobufToolsMacros.cmake +++ b/src/tools/qtprotobufgen/Qt6ProtobufToolsMacros.cmake @@ -417,7 +417,15 @@ endfunction() if(NOT QT_NO_CREATE_VERSIONLESS_FUNCTIONS) function(qt_add_protobuf) if(QT_DEFAULT_MAJOR_VERSION EQUAL 6) + set(single_out_args OUTPUT_HEADERS OUTPUT_TARGETS) + + cmake_parse_arguments(PARSE_ARGV 1 arg "" "${single_out_args}" "") qt6_add_protobuf(${ARGN}) + foreach(out_arg IN LISTS single_out_args) + if(arg_${out_arg}) + set(${arg_${out_arg}} "${${arg_${out_arg}}}" PARENT_SCOPE) + endif() + endforeach() else() message(FATAL_ERROR "qt6_add_protobuf() is only available in Qt 6. " "Please check the protobuf documentation for alternatives.") From 3cd6eb316aee26d51ac360416319aecc9f4056d1 Mon Sep 17 00:00:00 2001 From: Qt Submodule Update Bot Date: Tue, 5 Mar 2024 11:44:12 +0000 Subject: [PATCH 02/21] Update dependencies on 'tqtc/lts-6.5' in qt/tqtc-qtgrpc Change-Id: I4bc71d44f53b3a8b82189d426f320cac53b2eea2 Reviewed-by: Qt Submodule Update Bot --- dependencies.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.yaml b/dependencies.yaml index bca8c9f7..f629f431 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -1,7 +1,7 @@ dependencies: ../tqtc-qtbase: - ref: e9efb7b1e2a6a669facf23d7328812ffba09daf2 + ref: 7190acbbdae5beb84641b9e4810249eb640d2120 required: true ../tqtc-qtdeclarative: - ref: dcf4fa09f3c4163c6ee5be0762f77f70e8c07394 + ref: 6fa6b97eb837fc98001f517fb2f79067831734e6 required: false From fce189e078d3205a00d5e47c91e3efac35f22775 Mon Sep 17 00:00:00 2001 From: Tarja Sundqvist Date: Sun, 3 Mar 2024 01:30:07 +0200 Subject: [PATCH 03/21] Bump version to 6.5.6 Change-Id: Icab1b2a7ad48443ca998058653ab08dfab7cf41e Reviewed-by: Tarja Sundqvist --- .cmake.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.cmake.conf b/.cmake.conf index ac0f20fc..1a963982 100644 --- a/.cmake.conf +++ b/.cmake.conf @@ -1,4 +1,4 @@ -set(QT_REPO_MODULE_VERSION "6.5.5") +set(QT_REPO_MODULE_VERSION "6.5.6") set(QT_REPO_MODULE_PRERELEASE_VERSION_SEGMENT "alpha1") set(QT_EXTRA_INTERNAL_TARGET_DEFINES "QT_LEAN_HEADERS=1") From 41920ac3eabc99f9e42c669ba00c45eddd4256f2 Mon Sep 17 00:00:00 2001 From: Qt Submodule Update Bot Date: Wed, 6 Mar 2024 18:46:47 +0000 Subject: [PATCH 04/21] Update dependencies on 'tqtc/lts-6.5' in qt/tqtc-qtgrpc Change-Id: If8970e483a93a097030c7f8b8054da3bf8fae06f Reviewed-by: Qt Submodule Update Bot --- dependencies.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.yaml b/dependencies.yaml index f629f431..137b84a8 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -1,7 +1,7 @@ dependencies: ../tqtc-qtbase: - ref: 7190acbbdae5beb84641b9e4810249eb640d2120 + ref: e09cc1bb9b396241a5e5439f107b449f28c4ffb9 required: true ../tqtc-qtdeclarative: - ref: 6fa6b97eb837fc98001f517fb2f79067831734e6 + ref: 0903fe2ff794f389d8282d487d02c4b4c130381d required: false From 0aa21315ad44da5b68926c8a620e14f8bad5a885 Mon Sep 17 00:00:00 2001 From: Qt Submodule Update Bot Date: Mon, 18 Mar 2024 20:16:03 +0000 Subject: [PATCH 05/21] Update dependencies on 'tqtc/lts-6.5' in qt/tqtc-qtgrpc Change-Id: I6ab434ef104f3cb21066ceaf9ecb7110dcce9431 Reviewed-by: Qt Submodule Update Bot --- dependencies.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.yaml b/dependencies.yaml index 137b84a8..b97cbdba 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -1,7 +1,7 @@ dependencies: ../tqtc-qtbase: - ref: e09cc1bb9b396241a5e5439f107b449f28c4ffb9 + ref: f552c4cd3fce3866776cc3db6904f2cefb70958c required: true ../tqtc-qtdeclarative: - ref: 0903fe2ff794f389d8282d487d02c4b4c130381d + ref: 99563030dadef890ee09052321762e8601bea943 required: false From 7aa877977047c91c8e94dd487bb005ac029e94f9 Mon Sep 17 00:00:00 2001 From: Tarja Sundqvist Date: Wed, 20 Mar 2024 10:59:51 +0200 Subject: [PATCH 06/21] Coin: Add alias to non tqtc module This changes the module name in Coin to match what is run in qt5 integration and allows reuse of artifacts. Change-Id: Ib3fc12c00cb5e66599ed58f3ac57191d7c14061c Reviewed-by: Toni Saario --- coin/module_config.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/coin/module_config.yaml b/coin/module_config.yaml index aaf33238..5069c33b 100644 --- a/coin/module_config.yaml +++ b/coin/module_config.yaml @@ -1,4 +1,5 @@ version: 2 +alias: qtgrpc accept_configuration: condition: property property: features From da522aafed49400570fe3c72bc535bf5783fdf1f Mon Sep 17 00:00:00 2001 From: Qt Submodule Update Bot Date: Thu, 21 Mar 2024 00:02:34 +0000 Subject: [PATCH 07/21] Update dependencies on 'tqtc/lts-6.5' in qt/tqtc-qtgrpc Change-Id: Iaeca0faa916a65bf56db1de7aa3f7f342618dbb4 Reviewed-by: Qt Submodule Update Bot --- dependencies.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.yaml b/dependencies.yaml index b97cbdba..a196e52e 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -1,7 +1,7 @@ dependencies: ../tqtc-qtbase: - ref: f552c4cd3fce3866776cc3db6904f2cefb70958c + ref: a8105ba2781f4fc680d8c58c10d38d8f320b9cb1 required: true ../tqtc-qtdeclarative: - ref: 99563030dadef890ee09052321762e8601bea943 + ref: fbaae45edaef8ee283da75ec941d0f213a785e34 required: false From 0effa36143c16d30cfc7fcc7fea692a2968ae098 Mon Sep 17 00:00:00 2001 From: Qt Submodule Update Bot Date: Fri, 22 Mar 2024 10:15:04 +0000 Subject: [PATCH 08/21] Update dependencies on 'tqtc/lts-6.5' in qt/tqtc-qtgrpc Change-Id: I9c65ab1d0d7c51cb793f9a9ec50aaa380bde999a Reviewed-by: Qt Submodule Update Bot --- dependencies.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.yaml b/dependencies.yaml index a196e52e..402438f8 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -1,7 +1,7 @@ dependencies: ../tqtc-qtbase: - ref: a8105ba2781f4fc680d8c58c10d38d8f320b9cb1 + ref: d278a28703f87550d1fbb39181cffb2e436d0416 required: true ../tqtc-qtdeclarative: - ref: fbaae45edaef8ee283da75ec941d0f213a785e34 + ref: 90e4f5678247601ed8ce6e13604547b159c7be0f required: false From f031b8bf7a36659926057bbbd7a63a25aa9e02fa Mon Sep 17 00:00:00 2001 From: Qt Submodule Update Bot Date: Mon, 25 Mar 2024 06:27:15 +0000 Subject: [PATCH 09/21] Update dependencies on 'tqtc/lts-6.5' in qt/tqtc-qtgrpc Change-Id: If6a72e8f29cae2fe38703858f8cbb8a3847d8c34 Reviewed-by: Qt Submodule Update Bot --- dependencies.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.yaml b/dependencies.yaml index 402438f8..91975765 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -1,7 +1,7 @@ dependencies: ../tqtc-qtbase: - ref: d278a28703f87550d1fbb39181cffb2e436d0416 + ref: 9884be691c331152da97846d2ffb6391a8c1f84b required: true ../tqtc-qtdeclarative: - ref: 90e4f5678247601ed8ce6e13604547b159c7be0f + ref: 91cff4fa7a357885752d141b0b04a9ad30a3ccb6 required: false From a979689b8ad55603ca21035b5ae6e92c37798c4f Mon Sep 17 00:00:00 2001 From: Alexey Edelev Date: Tue, 16 Jan 2024 08:08:07 +0100 Subject: [PATCH 10/21] Fix links to qtprotobufgen Fix links to qtprotobufgen in QProtobufSerializer and QAbstractProtobufSerializer docs. Pick-to: 6.5 Change-Id: Ib17438308f3e5a27e4093a3c52bd3b20c6a442b5 Reviewed-by: Leena Miettinen (cherry picked from commit 8e474ea1763544bf4383aa3bdbf577f8814ee050) Reviewed-by: Qt Cherry-pick Bot (cherry picked from commit 190e69d6a12fbfca787fbef9b7ddaf55d9be28ee) (cherry picked from commit 5ef6c9e355ce0b94865e439c926fde84080aa02d) Reviewed-by: Tatiana Borisova --- src/protobuf/qabstractprotobufserializer.cpp | 7 ++++--- src/protobuf/qprotobufserializer.cpp | 7 ++++--- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/src/protobuf/qabstractprotobufserializer.cpp b/src/protobuf/qabstractprotobufserializer.cpp index 9ad89a9e..45d61df8 100644 --- a/src/protobuf/qabstractprotobufserializer.cpp +++ b/src/protobuf/qabstractprotobufserializer.cpp @@ -17,9 +17,10 @@ QT_BEGIN_NAMESPACE \reentrant The QProtobufSerializer class registers serializers/deserializers for - classes implementing a protobuf message, inheriting QProtobufMessage. These - classes are generated automatically, based on a .proto file, using the cmake - build macro qt6_add_protobuf or by running qtprotobufgen directly. + classes implementing a protobuf message, inheriting \l QProtobufMessage. These + classes are generated automatically, based on a \c{.proto} file, using the CMake + function \l qt_add_protobuf or by running + \l {The qtprotobufgen Tool} {qtprotobufgen} directly. This class should be used as a base for specific serializers. The handlers property contains all message-specific serializers and should be used while diff --git a/src/protobuf/qprotobufserializer.cpp b/src/protobuf/qprotobufserializer.cpp index ad6e145e..7d9bf6f0 100644 --- a/src/protobuf/qprotobufserializer.cpp +++ b/src/protobuf/qprotobufserializer.cpp @@ -72,9 +72,10 @@ QtProtobufPrivate::SerializationHandler QtProtobufPrivate::findHandler(QMetaType basic functions for serialization/deserialization. The QProtobufSerializer class registers serializers/deserializers for - classes implementing a protobuf message, inheriting QProtobufMessage. These - classes are generated automatically, based on a .proto file, using the cmake - build macro qt6_add_protobuf or by running qtprotobufgen directly. + classes implementing a protobuf message, inheriting \l QProtobufMessage. These + classes are generated automatically, based on a \c{.proto} file, using the CMake + function \l qt_add_protobuf or by running + \l {The qtprotobufgen Tool} {qtprotobufgen} directly. */ /*! From c944f2238d7357995d20e8b7f8c1f12987b74574 Mon Sep 17 00:00:00 2001 From: Alexey Edelev Date: Sun, 14 Jan 2024 21:08:11 +0100 Subject: [PATCH 11/21] Move documentation for generator tools to separate directories Sharing documentation directory between two modules make documentation from these directory generated twice. Also links are not produced correctly. Pick-to: 6.5 Change-Id: I2720515312a55407b6b52e28721f10ecc977ca46 Reviewed-by: Tatiana Borisova Reviewed-by: Qt CI Bot Reviewed-by: Leena Miettinen (cherry picked from commit aa609fc1cbdc38e0b9f0ed7c5cc983389e59c7ab) Reviewed-by: Qt Cherry-pick Bot (cherry picked from commit 872f3870f238b75142ce0be4ea4a0e7065977dab) (cherry picked from commit 9984b11b33e687607f469bb7d4e75b7226117b25) --- src/grpc/doc/qtgrpc.qdocconf | 12 ++++++++---- src/protobuf/doc/qtprotobuf.qdocconf | 11 +++++++---- .../doc/src/qt-add-grpc-example.qdocinc | 0 src/tools/{ => qtgrpcgen}/doc/src/qtgrpcgen.qdoc | 0 .../doc/src/snippets/qt-add-grpc-example.cmake | 0 .../doc/src/qt-add-protobuf-example.qdocinc | 0 .../{ => qtprotobufgen}/doc/src/qtprotobufgen.qdoc | 0 7 files changed, 15 insertions(+), 8 deletions(-) rename src/tools/{ => qtgrpcgen}/doc/src/qt-add-grpc-example.qdocinc (100%) rename src/tools/{ => qtgrpcgen}/doc/src/qtgrpcgen.qdoc (100%) rename src/tools/{ => qtgrpcgen}/doc/src/snippets/qt-add-grpc-example.cmake (100%) rename src/tools/{ => qtprotobufgen}/doc/src/qt-add-protobuf-example.qdocinc (100%) rename src/tools/{ => qtprotobufgen}/doc/src/qtprotobufgen.qdoc (100%) diff --git a/src/grpc/doc/qtgrpc.qdocconf b/src/grpc/doc/qtgrpc.qdocconf index 6788d391..70a8cca5 100644 --- a/src/grpc/doc/qtgrpc.qdocconf +++ b/src/grpc/doc/qtgrpc.qdocconf @@ -17,13 +17,16 @@ qhp.QtGrpc.indexTitle = Qt GRPC qhp.QtGrpc.indexRoot = qhp.QtGrpc.subprojects = qmltypes examples classes + qhp.QtGrpc.subprojects.qmltypes.title = QML Types qhp.QtGrpc.subprojects.qmltypes.indexTitle = Qt GRPC QML Types qhp.QtGrpc.subprojects.qmltypes.selectors = qmlclass qhp.QtGrpc.subprojects.qmltypes.sortPages = true + qhp.QtGrpc.subprojects.examples.title = Examples qhp.QtGrpc.subprojects.examples.indexTitle = Qt GRPC Examples qhp.QtGrpc.subprojects.examples.selectors = doc:example + qhp.QtGrpc.subprojects.classes.title = C++ Classes qhp.QtGrpc.subprojects.classes.indexTitle = Qt GRPC C++ Classes qhp.QtGrpc.subprojects.classes.selectors = class doc:headerfile @@ -32,9 +35,11 @@ qhp.QtGrpc.subprojects.classes.sortPages = true depends += qtdoc qtcore qtnetwork qtwidgets qtprotobuf qtcmake {headerdirs,sourcedirs} += .. \ - ../../tools/doc/src + ../../tools/doc/src \ + ../../tools/qtgrpcgen/doc/src -exampledirs += ../../tools/doc/src/snippets \ + +exampledirs += ../../tools/qtgrpcgen/doc/src/snippets \ ../../../examples/grpc imagedirs += images \ @@ -48,6 +53,5 @@ manifestmeta.highlighted.names = "QtGrpc/Magic 8 Ball" tagfile = qtgrpc.tags -# Fail the documentation build if there are more warnings than the limit +# Enforce zero documentation warnings warninglimit = 0 - diff --git a/src/protobuf/doc/qtprotobuf.qdocconf b/src/protobuf/doc/qtprotobuf.qdocconf index 6d8988fa..c8f6db76 100644 --- a/src/protobuf/doc/qtprotobuf.qdocconf +++ b/src/protobuf/doc/qtprotobuf.qdocconf @@ -17,13 +17,16 @@ qhp.QtProtobuf.indexTitle = Qt Protobuf qhp.QtProtobuf.indexRoot = qhp.QtProtobuf.subprojects = qmltypes examples classes + qhp.QtProtobuf.subprojects.qmltypes.title = QML Types qhp.QtProtobuf.subprojects.qmltypes.indexTitle = Qt Protobuf QML Types qhp.QtProtobuf.subprojects.qmltypes.selectors = qmlclass qhp.QtProtobuf.subprojects.qmltypes.sortPages = true + qhp.QtProtobuf.subprojects.examples.title = Examples qhp.QtProtobuf.subprojects.examples.indexTitle = Qt Protobuf Examples and Tutorials qhp.QtProtobuf.subprojects.examples.selectors = doc:example + qhp.QtProtobuf.subprojects.classes.title = C++ Classes qhp.QtProtobuf.subprojects.classes.indexTitle = Qt Protobuf C++ Classes qhp.QtProtobuf.subprojects.classes.selectors = class doc:headerfile @@ -32,10 +35,11 @@ qhp.QtProtobuf.subprojects.classes.sortPages = true depends += qtdoc qtcore qtcmake qtgrpc qtwidgets {headerdirs,sourcedirs} += .. -sourcedirs += ../../tools/doc/src +sourcedirs += ../../tools/doc/src \ + ../../tools/qtprotobufgen/doc/src exampledirs += ../../../examples/protobuf \ - ../../tools/doc/src/snippets + ../../tools/qtprotobufgen/doc/src/snippets imagedirs += images \ ../../../examples/protobuf/sensors/doc/images @@ -48,6 +52,5 @@ manifestmeta.highlighted.names = "QtProtobuf/Sensors" tagfile = qtprotobuf.tags -# Fail the documentation build if there are more warnings than the limit +# Enforce zero documentation warnings warninglimit = 0 - diff --git a/src/tools/doc/src/qt-add-grpc-example.qdocinc b/src/tools/qtgrpcgen/doc/src/qt-add-grpc-example.qdocinc similarity index 100% rename from src/tools/doc/src/qt-add-grpc-example.qdocinc rename to src/tools/qtgrpcgen/doc/src/qt-add-grpc-example.qdocinc diff --git a/src/tools/doc/src/qtgrpcgen.qdoc b/src/tools/qtgrpcgen/doc/src/qtgrpcgen.qdoc similarity index 100% rename from src/tools/doc/src/qtgrpcgen.qdoc rename to src/tools/qtgrpcgen/doc/src/qtgrpcgen.qdoc diff --git a/src/tools/doc/src/snippets/qt-add-grpc-example.cmake b/src/tools/qtgrpcgen/doc/src/snippets/qt-add-grpc-example.cmake similarity index 100% rename from src/tools/doc/src/snippets/qt-add-grpc-example.cmake rename to src/tools/qtgrpcgen/doc/src/snippets/qt-add-grpc-example.cmake diff --git a/src/tools/doc/src/qt-add-protobuf-example.qdocinc b/src/tools/qtprotobufgen/doc/src/qt-add-protobuf-example.qdocinc similarity index 100% rename from src/tools/doc/src/qt-add-protobuf-example.qdocinc rename to src/tools/qtprotobufgen/doc/src/qt-add-protobuf-example.qdocinc diff --git a/src/tools/doc/src/qtprotobufgen.qdoc b/src/tools/qtprotobufgen/doc/src/qtprotobufgen.qdoc similarity index 100% rename from src/tools/doc/src/qtprotobufgen.qdoc rename to src/tools/qtprotobufgen/doc/src/qtprotobufgen.qdoc From 4d3184d7c61732286d8879ac1b26e1cea38e7d72 Mon Sep 17 00:00:00 2001 From: Alexey Edelev Date: Tue, 6 Feb 2024 13:31:44 +0100 Subject: [PATCH 12/21] Move the qtgrpc-index.qdoc to doc/src directory Change-Id: Iab2e1de8d30cc4759efb7fa6b89e8837885c3dd3 Reviewed-by: Paul Wicking (cherry picked from commit bfde39a4b2fe340e49ed93aeef6e80114bcd0397) Reviewed-by: Qt Cherry-pick Bot (cherry picked from commit 4bec67b5cbd60ea7ed9e83992fba04f6d58778ef) Reviewed-by: Tatiana Borisova (cherry picked from commit 9c8bc8e96af703dc66b04c5f3bcc3eaca0aafad2) --- src/grpc/doc/{ => src}/qtgrpc-index.qdoc | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) rename src/grpc/doc/{ => src}/qtgrpc-index.qdoc (78%) diff --git a/src/grpc/doc/qtgrpc-index.qdoc b/src/grpc/doc/src/qtgrpc-index.qdoc similarity index 78% rename from src/grpc/doc/qtgrpc-index.qdoc rename to src/grpc/doc/src/qtgrpc-index.qdoc index 7b5576d2..8df69640 100644 --- a/src/grpc/doc/qtgrpc-index.qdoc +++ b/src/grpc/doc/src/qtgrpc-index.qdoc @@ -9,16 +9,17 @@ The Qt GRPC and \l {Qt Protobuf} modules together allow you to define data and messages in \c proto files, and then use the code generators, - which generate code allowing accessors for fields and gRPC services - in the Qt framework. Such code allows users to communicate with the server - by sending calls or stream messages. + which generate client code allowing accessors for fields and gRPC services + in the Qt framework. The code generated by Qt GRPC enables client code to + communicate with a gRPC server (regardless of whether the server uses Qt) + by sending calls or streaming messages. \section1 Overview gRPC is a cross-platform high performance Remote Procedure Call (RPC) framework, that generates client/server bindings for a lot of languages. Usually, you use it to connect - services in a microservices-style architecture or connecting + services in a microservices-style architecture or to connect mobile applications and browsers to backend services. The gRPC clients and servers can run and talk to each other in various environments, and you can write in any of gRPC’s @@ -38,7 +39,10 @@ native gRPC channels. See \l {https://grpc.io/docs/languages/cpp/quickstart/} {gRPC for C++} for details. + \li \l {OpenSSL Toolkit} may be needed. \endlist + \note Check the \l {Example of installation for Windows using vcpkg} + to see how to install \c gRPC and \c Protobuf and to run Qt GRPC examples. To start working with the Qt GRPC functionality you should define required services and messages in a \c .proto file. @@ -108,4 +112,16 @@ \list \li \l {Qt GRPC Examples} \endlist + + \section1 Licenses and Attributions + + The Qt GRPC module is available under commercial licenses from \l{The Qt Company}. + In addition, it is available under free software licenses: + The \l{GNU General Public License, version 3}. + See \l{Qt Licensing} for further details. + + Furthermore, Qt GRPC in Qt \QtVersion may contain third party + modules under the following permissive licenses: + + \generatelist{groupsbymodule attributions-qtgrpc-tools} */ From 9fe5702c5c149aa1e9c46906597961b5225b502f Mon Sep 17 00:00:00 2001 From: Alexey Edelev Date: Mon, 26 Feb 2024 10:47:09 +0100 Subject: [PATCH 13/21] Split documentation for repeatedValueCompare list and map variants MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit It doesn't seem the previous version worked. Split documentation into two. Pick-to: 6.5 Change-Id: If800e2e4e444cb8210f63574dc950e8d84347960 Reviewed-by: Leena Miettinen Reviewed-by: Mårten Nordheim (cherry picked from commit b1448525e39d578379ca719ab87e265ce2e5436a) Reviewed-by: Qt Cherry-pick Bot (cherry picked from commit 5361100487b2b35737ac1e3ee738b3ebb24e58f5) (cherry picked from commit 940c19924751f9a93661b1bc6ef2f51fb1be07dd) Reviewed-by: Tatiana Borisova --- src/protobuf/qtprotobuftypes.cpp | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/src/protobuf/qtprotobuftypes.cpp b/src/protobuf/qtprotobuftypes.cpp index e702b99f..23d64739 100644 --- a/src/protobuf/qtprotobuftypes.cpp +++ b/src/protobuf/qtprotobuftypes.cpp @@ -528,14 +528,20 @@ QT_IMPL_METATYPE_EXTERN_TAGGED(QtProtobuf::sfixed64, QtProtobuf_sfixed64) /*! \fn template bool QtProtobuf::repeatedValueCompare(const QList> &a, const QList> &b) - \fn template bool QtProtobuf::repeatedValueCompare(const QHash &a, const QHash &b) - \fn template bool repeatedValueCompare(const QHash> &a, const QHash> &b) Compares two \c{repeated} fields (essentially a list) to each other. - Returns \c true if the two fields are equal, \c false otherwise. + Returns \c true if \a a is equal to \a b, \c false otherwise. - These functions are used in the generated code to implement operator==. + These functions are used in the generated code to implement \c {operator==}. */ +/*! + \fn template bool repeatedValueCompare(const QHash> &a, const QHash> &b) + + Compares two \c{map} fields to each other. + Returns \c true if \a a is equal to \a b, \c false otherwise. + + These functions are used in the generated code to implement \c {operator==}. +*/ QT_END_NAMESPACE From 2bebfe229cb8df8acabe39b600b8e40abe0dcdb3 Mon Sep 17 00:00:00 2001 From: Alexey Edelev Date: Mon, 26 Feb 2024 09:26:05 +0100 Subject: [PATCH 14/21] Add the missing copyrigh/sdpx headers to docinc files MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Wrap the docinc bodies with snippet begin/end markers and include them accordingly. Pick-to: 6.5 Change-Id: I711c14c342d0553ac64712c61d1001137659f72b Reviewed-by: Leena Miettinen (cherry picked from commit cdcd270bf9f1c227d16eedd22ce5a994cf605b72) Reviewed-by: Volker Hilsheimer (cherry picked from commit 5cabb34fbd48fc781ba08a6d19172350325fd6fa) Reviewed-by: Mårten Nordheim (cherry picked from commit 691b8da8cc6a928a4f07b4aeb4fadbcbddc64a60) Reviewed-by: Tatiana Borisova --- src/grpc/doc/src/cmake-commands.qdoc | 2 +- src/grpc/doc/src/qt_add_grpc.qdoc | 4 ++-- src/grpc/doc/src/qtgrpc-index.qdoc | 2 +- src/protobuf/doc/src/cmake-commands.qdoc | 6 +++--- src/protobuf/doc/src/qt_add_protobuf.qdoc | 6 +++--- src/tools/doc/src/qtprotogen-cmake-options.qdocinc | 5 +++++ src/tools/doc/src/qtprotogen-options.qdocinc | 5 +++++ src/tools/qtgrpcgen/doc/src/qt-add-grpc-example.qdocinc | 5 +++++ src/tools/qtgrpcgen/doc/src/qtgrpcgen.qdoc | 2 +- .../qtprotobufgen/doc/src/qt-add-protobuf-example.qdocinc | 5 +++++ src/tools/qtprotobufgen/doc/src/qtprotobufgen.qdoc | 4 ++-- 11 files changed, 33 insertions(+), 13 deletions(-) diff --git a/src/grpc/doc/src/cmake-commands.qdoc b/src/grpc/doc/src/cmake-commands.qdoc index 812ac7e1..9341a4e0 100644 --- a/src/grpc/doc/src/cmake-commands.qdoc +++ b/src/grpc/doc/src/cmake-commands.qdoc @@ -15,7 +15,7 @@ target_link_libraries(mytarget PRIVATE Qt6::Grpc) To generate gRPC services using Qt GRPC and link them with your program consider the following example: -\include qt-add-grpc-example.qdocinc +\include qt-add-grpc-example.qdocinc 0 \sa{CMake Command Reference} */ diff --git a/src/grpc/doc/src/qt_add_grpc.qdoc b/src/grpc/doc/src/qt_add_grpc.qdoc index 7575f96f..bf238594 100644 --- a/src/grpc/doc/src/qt_add_grpc.qdoc +++ b/src/grpc/doc/src/qt_add_grpc.qdoc @@ -77,8 +77,8 @@ target to the protobuf one: Since gRPC supports a client-server architecture, \c CLIENT or \c SERVER source code may be generated. \note for Qt 6.5 only \c CLIENT source code generation is supported. - \include qtprotogen-options.qdocinc - \include qtprotogen-cmake-options.qdocinc + \include qtprotogen-options.qdocinc 0 + \include qtprotogen-cmake-options.qdocinc 0 \endlist \sa{The qtgrpcgen Tool} diff --git a/src/grpc/doc/src/qtgrpc-index.qdoc b/src/grpc/doc/src/qtgrpc-index.qdoc index 8df69640..38821cf9 100644 --- a/src/grpc/doc/src/qtgrpc-index.qdoc +++ b/src/grpc/doc/src/qtgrpc-index.qdoc @@ -86,7 +86,7 @@ As a result, the full example of a CMake project file, that uses Qt GRPC functionality shall be: - \include qt-add-grpc-example.qdocinc + \include qt-add-grpc-example.qdocinc 0 \section1 Class Documentation \list diff --git a/src/protobuf/doc/src/cmake-commands.qdoc b/src/protobuf/doc/src/cmake-commands.qdoc index ba05b401..ed479a6e 100644 --- a/src/protobuf/doc/src/cmake-commands.qdoc +++ b/src/protobuf/doc/src/cmake-commands.qdoc @@ -14,10 +14,10 @@ target_link_libraries(mytarget PRIVATE Qt6::Protobuf) \endcode You can use \e {qt-add-protobuf} CMake macros. -The macros implicitly calls Protobuf code generation for qt-project. +The macros implicitly call Protobuf code generation for qt-project. -The macros usage example: -\include qt-add-protobuf-example.qdocinc +The macros usage examples: +\include qt-add-protobuf-example.qdocinc 0 \sa{CMake Command Reference} */ diff --git a/src/protobuf/doc/src/qt_add_protobuf.qdoc b/src/protobuf/doc/src/qt_add_protobuf.qdoc index a125589d..96854634 100644 --- a/src/protobuf/doc/src/qt_add_protobuf.qdoc +++ b/src/protobuf/doc/src/qt_add_protobuf.qdoc @@ -35,8 +35,8 @@ link to. \section1 Arguments \list - \include qtprotogen-options.qdocinc - \include qtprotogen-cmake-options.qdocinc + \include qtprotogen-options.qdocinc 0 + \include qtprotogen-cmake-options.qdocinc 0 \endlist \sa{The qtprotobufgen Tool} @@ -99,5 +99,5 @@ have the \c test_messages target as a transitive dependency. \section1 Example -\include qt-add-protobuf-example.qdocinc +\include qt-add-protobuf-example.qdocinc 0 */ diff --git a/src/tools/doc/src/qtprotogen-cmake-options.qdocinc b/src/tools/doc/src/qtprotogen-cmake-options.qdocinc index 84ff2ef3..19564a79 100644 --- a/src/tools/doc/src/qtprotogen-cmake-options.qdocinc +++ b/src/tools/doc/src/qtprotogen-cmake-options.qdocinc @@ -1,3 +1,7 @@ +// Copyright (C) 2022 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only + +//! [0] \li \c PROTO_FILES is the list of \c .proto files that will be used in the generation procedure. \li \c PROTO_INCLUDES is the list of directories that will be searched for @@ -11,3 +15,4 @@ custom project install rules. \li \c OUTPUT_TARGETS can be used to specify a variable that will hold the list of targets created by the function. This list can be useful for custom project install rules. +//! [0] diff --git a/src/tools/doc/src/qtprotogen-options.qdocinc b/src/tools/doc/src/qtprotogen-options.qdocinc index c4480126..76033cb7 100644 --- a/src/tools/doc/src/qtprotogen-options.qdocinc +++ b/src/tools/doc/src/qtprotogen-options.qdocinc @@ -1,3 +1,7 @@ +// Copyright (C) 2022 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only + +//! [0] \li \c COPY_COMMENTS Copies comments from \c .proto files. If provided in the parameter list, comments related to messages and fields are copied to generated header files. @@ -13,3 +17,4 @@ namespace. the generated code. The generated macro name is constructed as \c QPB__EXPORT. If the option is not set, the macro is not generated. +//! [0] diff --git a/src/tools/qtgrpcgen/doc/src/qt-add-grpc-example.qdocinc b/src/tools/qtgrpcgen/doc/src/qt-add-grpc-example.qdocinc index e709405a..0a9916d2 100644 --- a/src/tools/qtgrpcgen/doc/src/qt-add-grpc-example.qdocinc +++ b/src/tools/qtgrpcgen/doc/src/qt-add-grpc-example.qdocinc @@ -1,3 +1,7 @@ +// Copyright (C) 2022 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only + +//! [0] \snippet qt-add-grpc-example.cmake 0 The example above calls the \c{qt_add_grpc()} @@ -10,3 +14,4 @@ to generate protobuf message classes for the project. Finally, the example creates a target for an executable called \e{MyApp} which links to the \e{MyGrpcClient} and \e{MyProtoMessageLib} libraries. +//! [0] diff --git a/src/tools/qtgrpcgen/doc/src/qtgrpcgen.qdoc b/src/tools/qtgrpcgen/doc/src/qtgrpcgen.qdoc index c432dad5..ee7e18c6 100644 --- a/src/tools/qtgrpcgen/doc/src/qtgrpcgen.qdoc +++ b/src/tools/qtgrpcgen/doc/src/qtgrpcgen.qdoc @@ -61,6 +61,6 @@ Options have direct aliases in the \l{qt_add_grpc} function. The following options are supported: \list - \include qtprotogen-options.qdocinc + \include qtprotogen-options.qdocinc 0 \endlist */ diff --git a/src/tools/qtprotobufgen/doc/src/qt-add-protobuf-example.qdocinc b/src/tools/qtprotobufgen/doc/src/qt-add-protobuf-example.qdocinc index 32b1fa36..8f69909b 100644 --- a/src/tools/qtprotobufgen/doc/src/qt-add-protobuf-example.qdocinc +++ b/src/tools/qtprotobufgen/doc/src/qt-add-protobuf-example.qdocinc @@ -1,3 +1,7 @@ +// Copyright (C) 2022 The Qt Company Ltd. +// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GFDL-1.3-no-invariants-only + +//! [0] \badcode cmake_minimum_required(VERSION 3.16...3.22) project(MyThings) @@ -28,3 +32,4 @@ in the specified directories. We then create a target for an executable called \c{MyApp} which we link to the \c{MyMessages} library. +//! [0] diff --git a/src/tools/qtprotobufgen/doc/src/qtprotobufgen.qdoc b/src/tools/qtprotobufgen/doc/src/qtprotobufgen.qdoc index 912bd172..b81b295b 100644 --- a/src/tools/qtprotobufgen/doc/src/qtprotobufgen.qdoc +++ b/src/tools/qtprotobufgen/doc/src/qtprotobufgen.qdoc @@ -35,7 +35,7 @@ The following CMake commands integrate a protobuf schema into a Qt project. Usually \c qtprotobufgen would be invoked through CMake using the \c{qt_add_protobuf} macro, as shown in the following example: -\include qt-add-protobuf-example.qdocinc +\include qt-add-protobuf-example.qdocinc 0 \section2 Running manually @@ -63,6 +63,6 @@ Options have direct aliases in the \l{qt_add_protobuf} function. The following options are supported: \list - \include qtprotogen-options.qdocinc + \include qtprotogen-options.qdocinc 0 \endlist */ From 9538e5ec5a68dd3dc3634e26dc761e2d5a694f3c Mon Sep 17 00:00:00 2001 From: Qt Submodule Update Bot Date: Thu, 11 Apr 2024 00:05:15 +0000 Subject: [PATCH 15/21] Update dependencies on 'tqtc/lts-6.5' in qt/tqtc-qtgrpc Change-Id: I8c358b737c673d76ffcb41044b1d17687d82824b Reviewed-by: Qt Submodule Update Bot --- dependencies.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.yaml b/dependencies.yaml index 91975765..6b6cc6e5 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -1,7 +1,7 @@ dependencies: ../tqtc-qtbase: - ref: 9884be691c331152da97846d2ffb6391a8c1f84b + ref: 190d695b6c55036afd2858760d90b69f0d5b22d0 required: true ../tqtc-qtdeclarative: - ref: 91cff4fa7a357885752d141b0b04a9ad30a3ccb6 + ref: 08596ea035ed636637e382f25f5191c3c04139aa required: false From 1780e2db2067b451cdde79d19cc8196f4f558c32 Mon Sep 17 00:00:00 2001 From: Qt Submodule Update Bot Date: Mon, 15 Apr 2024 12:33:58 +0000 Subject: [PATCH 16/21] Update dependencies on 'tqtc/lts-6.5' in qt/tqtc-qtgrpc Change-Id: Id88b846438b75d9d999d736979930b09048fcf43 Reviewed-by: Qt Submodule Update Bot --- dependencies.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.yaml b/dependencies.yaml index 6b6cc6e5..f98192c1 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -1,7 +1,7 @@ dependencies: ../tqtc-qtbase: - ref: 190d695b6c55036afd2858760d90b69f0d5b22d0 + ref: 8bee75a19afef0965acddf8c98889927c0318ec9 required: true ../tqtc-qtdeclarative: - ref: 08596ea035ed636637e382f25f5191c3c04139aa + ref: 525ee238573fa9b0f4baa5217eb07702d190cde7 required: false From 999c936741c42450064b24ed3c2a31e37407841f Mon Sep 17 00:00:00 2001 From: Qt Submodule Update Bot Date: Fri, 19 Apr 2024 20:01:22 +0000 Subject: [PATCH 17/21] Update dependencies on 'tqtc/lts-6.5' in qt/tqtc-qtgrpc Change-Id: Ifbc20bde242cb96a0c7f0b6a6e48b36fb078d7f3 Reviewed-by: Qt Submodule Update Bot --- dependencies.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.yaml b/dependencies.yaml index f98192c1..4996caa2 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -1,7 +1,7 @@ dependencies: ../tqtc-qtbase: - ref: 8bee75a19afef0965acddf8c98889927c0318ec9 + ref: 7c6e3c297d7f2a062d380cc2902973b1675bdb99 required: true ../tqtc-qtdeclarative: - ref: 525ee238573fa9b0f4baa5217eb07702d190cde7 + ref: 5123c82512e21c46d30f47c5fcb4374018206d86 required: false From 42ded7d58b7de9d1f1db1b3ec2803d598cbd7453 Mon Sep 17 00:00:00 2001 From: Qt Submodule Update Bot Date: Fri, 26 Apr 2024 18:08:34 +0000 Subject: [PATCH 18/21] Update dependencies on 'tqtc/lts-6.5' in qt/tqtc-qtgrpc Change-Id: I94f4e1e6b560ff7bc52cb642e0ba24c1520b85b5 Reviewed-by: Qt Submodule Update Bot --- dependencies.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.yaml b/dependencies.yaml index 4996caa2..b9ff01b3 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -1,7 +1,7 @@ dependencies: ../tqtc-qtbase: - ref: 7c6e3c297d7f2a062d380cc2902973b1675bdb99 + ref: 6c6e6d959a99ae57d45fa5796c7c8f0a1ad2ba09 required: true ../tqtc-qtdeclarative: - ref: 5123c82512e21c46d30f47c5fcb4374018206d86 + ref: 031d87a1b14194462de018697ee0b6762cf3299e required: false From a7b9a0432f28b10448793fb21b9ecb40b0db6baf Mon Sep 17 00:00:00 2001 From: Qt Submodule Update Bot Date: Wed, 1 May 2024 21:14:16 +0000 Subject: [PATCH 19/21] Update dependencies on 'tqtc/lts-6.5' in qt/tqtc-qtgrpc Change-Id: I901403cee343110cef3deccf635f3adc2a07c2b1 Reviewed-by: Qt Submodule Update Bot --- dependencies.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.yaml b/dependencies.yaml index b9ff01b3..34705fd7 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -1,7 +1,7 @@ dependencies: ../tqtc-qtbase: - ref: 6c6e6d959a99ae57d45fa5796c7c8f0a1ad2ba09 + ref: 8b7eecb39f58a601a94cbed779dbc112764dadaf required: true ../tqtc-qtdeclarative: - ref: 031d87a1b14194462de018697ee0b6762cf3299e + ref: 2ea97cd53498a0ae9eb6a82fdc8fd4916557940e required: false From 23816d6eee8d2cd548b841431e8f890ba26d70bc Mon Sep 17 00:00:00 2001 From: Qt Submodule Update Bot Date: Thu, 2 May 2024 20:25:18 +0000 Subject: [PATCH 20/21] Update dependencies on 'tqtc/lts-6.5' in qt/tqtc-qtgrpc Change-Id: I75719b4b917ab23f0b7176ceedfabb48276b81da Reviewed-by: Qt Submodule Update Bot --- dependencies.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.yaml b/dependencies.yaml index 34705fd7..13a7403e 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -1,7 +1,7 @@ dependencies: ../tqtc-qtbase: - ref: 8b7eecb39f58a601a94cbed779dbc112764dadaf + ref: 47dd5b7aed6ccc623b3c08f74ed89112be112ec4 required: true ../tqtc-qtdeclarative: - ref: 2ea97cd53498a0ae9eb6a82fdc8fd4916557940e + ref: a45270eda3e7ca475ffce2d8d341d2a4a7568f22 required: false From ac96ecc6e70f8ac58a1949fa5a14c01c419ca32a Mon Sep 17 00:00:00 2001 From: Qt Submodule Update Bot Date: Tue, 7 May 2024 18:02:02 +0000 Subject: [PATCH 21/21] Update dependencies on 'tqtc/lts-6.5.6' in qt/tqtc-qtgrpc Change-Id: I9de183e4bff89a00602228a0d4fbb30a832148d8 Reviewed-by: Qt Submodule Update Bot --- dependencies.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dependencies.yaml b/dependencies.yaml index 13a7403e..a218732a 100644 --- a/dependencies.yaml +++ b/dependencies.yaml @@ -1,7 +1,7 @@ dependencies: ../tqtc-qtbase: - ref: 47dd5b7aed6ccc623b3c08f74ed89112be112ec4 + ref: 72e405b9079707c9c033864aa66d20221b54bb06 required: true ../tqtc-qtdeclarative: - ref: a45270eda3e7ca475ffce2d8d341d2a4a7568f22 + ref: 0bbb1c4e12e7d027b452a946652049f353a41132 required: false