summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/tinycbor
Commit message (Collapse)AuthorAgeFilesLines
* Fix -Wimplicit-fallthrough for clangTim Blechmann2024-03-011-1/+1
| | | | | | | | | | | | | | | | | | | Clang's `-Wimplicit-fallthrough` warnings are a little stricter than gcc's interpretation: switch (i) { case 0: foo(); case 4: break; } While gcc accepts the implicit fallthrough, if the following statement is a trivial `break`, clang will warn about it. Pick-to: 6.7 Change-Id: I38e0817f1bc034fbb552aeac21de1516edcbcbb0 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* CI: Enable tests under corelib/serialization for Wasm platformPiotr Wierciński2023-08-142-26/+32
| | | | | | | Add more tests on WebAssembly platform for better tests coverage. Change-Id: Iaaaa824ae6058a9ae5dba4c4038a7f687bfc17e0 Reviewed-by: Mikołaj Boc <Mikolaj.Boc@qt.io>
* TinyCbor: port away from Q_FOREACHMarc Mutz2023-08-072-1/+93
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Upstream change: https://github.com/intel/tinycbor/pull/238 Says it in the upstream commit message: > Unfortunately, the container's initialization code doesn't exactly > lend itself to making the container const (not even IILE > (Immediately-Invoked Lambda Expression) would help here, due to the > interdependency with len), so the idiomatic solution would be to use > std::as_const()/qAsConst(). > > The former is available from C++17, which we don't require, yet, and > the latter is not available under QT_NO_AS_CONST (the default for Qt > these days), so grab the nettle and implement a t17::as_const() that > switches between a manual implementation of std::as_const and the > real thing, depending on __cpp_lib_as_const. The t17 here mimicks > the qNN (q20::remove_cvref_t/q23::forward_like/etc) mechanism used > in Qt itself for backports, with s/q/t/ because ... _T_inyCbor. > > The t17 implementation is local to tst_encoder.cpp, but can easily > be extracted into a separate header once more users emerge. Task-number: QTBUG-115839 Change-Id: I200ae6abbb6173fa9d4b9964be66501c2145f066 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* tinycbor: fix build with gcc-13Martin Jansa2023-06-211-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fixes: http://errors.yoctoproject.org/Errors/Details/701753/ qtbase/6.5.0-r0/git/tests/auto/corelib/serialization/qcborstreamwriter/../../../../../src/3rdparty/tinycbor/tests/encoder/data.cpp:242:90: error: invalid user-defined conversion from 'float' to 'const qfloat16&' [-fpermissive] 242 | QTest::newRow("nan_f16") << raw("\xf9\x7e\0") << QVariant::fromValue<qfloat16>(myNaNf()); | ~~~~~~^~ n file included from TOPDIR/tmp-glibc/work/core2-64-oe-linux/qtbase/6.5.0-r0/image/usr/include/QtCore/qmetatype.h:14, from TOPDIR/tmp-glibc/work/core2-64-oe-linux/qtbase/6.5.0-r0/image/usr/include/QtTest/qtestcase.h:11, from TOPDIR/tmp-glibc/work/core2-64-oe-linux/qtbase/6.5.0-r0/image/usr/include/QtTest/qtest.h:13, from TOPDIR/tmp-glibc/work/core2-64-oe-linux/qtbase/6.5.0-r0/image/usr/include/QtTest/QTest:1, from TOPDIR/tmp-glibc/work/core2-64-oe-linux/qtbase/6.5.0-r0/git/tests/auto/corelib/serialization/qcborstreamwriter/tst_qcborstreamwriter.cpp:4: TOPDIR/tmp-glibc/work/core2-64-oe-linux/qtbase/6.5.0-r0/image/usr/include/QtCore/qfloat16.h:81:22: note: candidate is: 'constexpr qfloat16::qfloat16(NativeType)' (near match) 81 | constexpr inline qfloat16(NativeType f) : f(f) {} | ^~~~~~~~ TOPDIR/tmp-glibc/work/core2-64-oe-linux/qtbase/6.5.0-r0/image/usr/include/QtCore/qfloat16.h:81:22: note: conversion of argument 1 would be ill-formed: TOPDIR/tmp-glibc/work/core2-64-oe-linux/qtbase/6.5.0-r0/git/tests/auto/corelib/serialization/qcborstreamwriter/../../../../../src/3rdparty/tinycbor/tests/encoder/data.cpp:242:90: warning: converting to 'qfloat16::NativeType' {aka '_Float16'} from 'float' with greater conversion rank 242 | QTest::newRow("nan_f16") << raw("\xf9\x7e\0") << QVariant::fromValue<qfloat16>(myNaNf()); | ~~~~~~^~ TOPDIR/tmp-glibc/work/core2-64-oe-linux/qtbase/6.5.0-r0/git/tests/auto/corelib/serialization/qcborstreamwriter/../../../../../src/3rdparty/tinycbor/tests/encoder/data.cpp:242:90: warning: converting to 'qfloat16::NativeType' {aka '_Float16'} from 'float' with greater conversion rank TOPDIR/tmp-glibc/work/core2-64-oe-linux/qtbase/6.5.0-r0/image/usr/include/QtCore/qfloat16.h:81:42: note: initializing argument 1 of 'constexpr qfloat16::qfloat16(NativeType)' 81 | constexpr inline qfloat16(NativeType f) : f(f) {} | ~~~~~~~~~~~^ In file included from TOPDIR/tmp-glibc/work/core2-64-oe-linux/qtbase/6.5.0-r0/image/usr/include/QtCore/qmetaobject.h:9, from TOPDIR/tmp-glibc/work/core2-64-oe-linux/qtbase/6.5.0-r0/image/usr/include/QtTest/qtestcase.h:12: TOPDIR/tmp-glibc/work/core2-64-oe-linux/qtbase/6.5.0-r0/image/usr/include/QtCore/qvariant.h:435:43: note: initializing argument 1 of 'static std::enable_if_t<(is_copy_constructible_v<T> && is_destructible_v<T>), QVariant> QVariant::fromValue(const T&) [with T = qfloat16; std::enable_if_t<(is_copy_constructible_v<T> && is_destructible_v<T>), QVariant> = QVariant]' 435 | static inline auto fromValue(const T &value) | ~~~~~~~~~^~~~~ Fixes: QTBUG-114785 Pick-to: 6.6 6.5 Change-Id: I4876ebd8890eee883a0d1a2bef8cb7aec4fd0f2f Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Highlight third-party modules that are security criticalKai Köhne2023-03-311-0/+1
| | | | | | | | | | | | | | Mark any modules listed as 'processing untrusted content' in https://wiki.qt.io/Third_Party_Code_in_Qt also in the qt_attribution.json files. For reasoning, see also https://lists.qt-project.org/pipermail/development/2023-February/043667.html Pick-to: 6.5 Change-Id: Id547d4f7e77dac8c7e8e382e65169e7bd0330fcf Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* 3rdparty: update TinyCBOR links to 0.6.0 final releaseThiago Macieira2021-11-011-2/+2
| | | | | | | | No code change. Pick-to: 6.2 Change-Id: Ice04365c72984d07a64dfffd16b28c74ee1c07eb Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Fix invalid JSON due to missing comma after valueCraig Scott2021-09-101-1/+1
| | | | | | | | | Amends 248828b9a3562fc23ac1d39733aaf07a83584dc4 Pick-to: 6.2 6.2.0 Change-Id: I606835942e988736786aaf6881ecddc94c8a882c Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* 3rdparty: Update TinyCBOR to v0.6-rc1Thiago Macieira2021-09-0611-30/+32
| | | | | Change-Id: Ie72b0dd0fbe84d2caae0fffd16a169a70845d33e Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Fix attribution for tinycborKai Köhne2021-02-151-1/+1
| | | | | | | | Amends cbdf2ba46aed53d002b90d4d9683c28306f8e0a9 Pick-to: 6.1 Change-Id: Ie1a89ec9367ecc2d674b5f8b27ab3d9bc5a16eca Reviewed-by: Topi Reiniö <topi.reinio@qt.io>
* Update TinyCBORThiago Macieira2021-01-2211-48/+114
| | | | | | | | | | | Updated to commit e6a4fa4862bcc3a6f6b07cf9d9b784d0ab6068b4. Pick-to: 6.0 Fixes: QTBUG-89650 Task-number: QTBUG-90214 Change-Id: I6edce5101800424a8093fffd15cdf6591cbf809d Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Remove the qmake project filesJoerg Bornemann2021-01-072-19/+0
| | | | | | | | | | | | | | | | Remove the qmake project files for most of Qt. Leave the qmake project files for examples, because we still test those in the CI to ensure qmake does not regress. Also leave the qmake project files for utils and other minor parts that lack CMake project files. Task-number: QTBUG-88742 Change-Id: I6cdf059e6204816f617f9624f3ea9822703f73cc Reviewed-by: Edward Welbourne <edward.welbourne@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Replace QtTest headers with QTestDavid Skoland2020-12-224-4/+5
| | | | | | | | | | | Complete search and replace of QtTest and QtTest/QtTest with QTest, as QtTest includes the whole module. Replace all such instances with correct header includes. See Jira task for more discussion. Fixes: QTBUG-88831 Change-Id: I981cfae18a1cabcabcabee376016b086d9d01f44 Pick-to: 6.0 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Fix copyright year of tinycborKai Koehne2020-10-121-1/+1
| | | | | | | | | | [ChangeLog][Third-Party Code] Fix aggregated copyright information of TinyCBOR component to reflect the years in the individual source files. Note that this is not same as the Copyright year in the upstream MIT license text. Pick-to: 5.15 5.12 Change-Id: I238d973d937fbfc3a81627c4c65491fbb5cb3c30 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* CBOR support: prevent overflowing QByteArray's max allocationThiago Macieira2020-03-271-14/+23
| | | | | | | | | | | | QByteArray doesn't like it. Apply the same protection to QString, which we know uses the same backend but uses elements twice as big. That means it can contain slightly more than half as many elements, but exact half will suffice for our needs. Change-Id: Iaa63461109844e978376fffd15f9d4c7a9137856 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* TinyCBOR: Fix parsing on big-endian machinesThiago Macieira2019-04-251-3/+6
| | | | | | | Original commit from https://github.com/thiagomacieira/tinycbor/pull/1 Change-Id: I194d3f37471a49788a7bfffd1594ef5db19465fd Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Update TinyCBOR with bugfixesThiago Macieira2019-04-087-113/+457
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Updated to https://github.com/thiagomacieira/tinycbor commit ac9369d8ec8511bc7516266ae6b07f7da860c954. Fabrice Fontaine (1): fix undefined encode_half in json2cbor Pedro Oliveira (1): Fixed minor error in the example code. Svyatoslav Phirsov (2): Typo fixed in stdlib fread(...) usage typo in dumprecursive return type Thiago Macieira (9): Install the tinycbor-version.h header. Update version number for a possible but unlikely 0.5.3 release Fix #137: off-by-one error in UTF-8 decoding Update Travis CI to Ubuntu Xenial Pretty: fix use of uninitialised variable Validation: fix out-of-bounds access when content ends in a string Parser: apply the same memory-check update Tests: remove useless comment Tests: Catch an earlier QCOMPARE failure in compare() phirsov (6): Fix off-by-one causing buffer overflow in open_memstream Protect macro argument expansion using parentheses eliminating misleading messages in case .config file not yet created Run check silently in Travis Make AppVeyor test suit run silent as in Travis enhancement #149 implemented: access half-precision floating point data as single float Change-Id: I9e3d261ad9bf41cfb2b6fffd159088f1cc9b3b02 Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Update various qt_attribution.json filesEdward Welbourne2018-11-021-0/+1
| | | | | | | | | | | | | Marking various as final because no upstream is known or available. Listing versions of others, where I was able to discover them. Updated a stale link (that helpfully redirected). Task-number: QTBUG-70008 Change-Id: Id00f34827133c560735c68793b4f1353f2b2ca85 Reviewed-by: Tobias Koenig <tobias.koenig@kdab.com> Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io> Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
* Update TinyCBORThiago Macieira2018-09-012-59/+69
| | | | | | | | Updated to https://github.com/thiagomacieira/tinycbor commit 1286d99bdc664de6acf7c5274702325f5a095a0f Change-Id: I0d3cc366baaa49f3ad28fffd15428e886333bb38 Reviewed-by: Kai Koehne <kai.koehne@qt.io>
* Update TinyCBOR to 1b233087a6e6b6be297e69bfcce5ed36f338c91dThiago Macieira2018-07-185-23/+44
| | | | | | | | From the fork at https://github.com/thiagomacieira/tinycbor Change-Id: I117816bf0f5e469b8d34fffd153dc88683051208 Reviewed-by: Mårten Nordheim <marten.nordheim@qt.io> Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* QCborStreamReader: update to the new TinyCBOR zero-copy string APIThiago Macieira2018-06-065-66/+84
| | | | | Change-Id: Iab119b62106d40fb8499fffd1510abe5d8f2722a Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
* Import TinyCBORThiago Macieira2018-05-2720-0/+6858
This does not match any upstream version, but rather the "dev" branch at https://github.com/thiagomacieira/tinycbor/. I've found myself completely out of time to finish developing the TinyCBOR buffer integration and zero-copy support. Change-Id: I9741f017961b410c910dfffd150133cbf6fbe678 Reviewed-by: Lars Knoll <lars.knoll@qt.io>