summaryrefslogtreecommitdiffstats
path: root/src/tools
Commit message (Collapse)AuthorAgeFilesLines
...
* tools: port away from QPairMarc Mutz2023-12-148-22/+25
| | | | | | | | Pick-to: 6.7 Task-number: QTBUG-115841 Change-Id: If122a1c17b1b4092b115521cec814ce3b508cd80 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Ahmad Samir <a.samirh78@gmail.com>
* AndroidTestRunner: few minor fixes for loging and printingAssam Boudjelthia2023-12-141-13/+12
| | | | | | | | | | | | | * Don't add \n when using qDebug() * Trim testAppArgs of extra space at the end. * Don't print get-current-user command by default, that value is not that useful to be always printed. * Update outdated bit of the help printout to reflect what the test runner does. Pick-to: 6.7 Change-Id: I998bafc3aef524b368654f7b35a2a8e084d17542 Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
* Remove mentioning of UWP from windeployqt's configure summaryOliver Wolff2023-12-131-1/+1
| | | | | | | | Qt's UWP port has been dropped for Qt 6.0. Pick-to: 6.7 6.6 6.5 6.2 Change-Id: I72f2cfbd1234110a0bd0c15669fa326328d4d08c Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* moc: port from pair<> to a struct SuperClassMarc Mutz2023-12-133-14/+16
| | | | | | | | | | | | ... with properly-named members. This is in preparation of adding a new member in order to fix QTBUG-101141 (namespaced base classes). Pick-to: 6.7 6.6 6.5 Task-number: QTBUG-101141 Change-Id: I2309e425ac94ad275b54a898fd33a2891e5d1453 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* AndroidTestRunner: replace fprintf() with Qt logging callsAssam Boudjelthia2023-12-131-20/+14
| | | | | | | | To make the code more uniform. Pick-to: 6.7 Change-Id: I84cc9c6169e9eb5a4ba4909b6a7178206eb57c4d Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
* AndroidTestRunner: add new TestInfo structAssam Boudjelthia2023-12-131-19/+25
| | | | | | | | | | This contains test specific variables like pid, sdkversion, isPackageInstalled and isTestRunnerInterrupted which don't strictly fall under 'Options'. Pick-to: 6.7 Change-Id: I7c4a3422813f464b407d9b2be98c5b4a807c4f1e Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
* AndroidTestRunner: log when timing out waiting for the test to finishAssam Boudjelthia2023-12-131-0/+3
| | | | | | | | | Leave a log message to know when the test runner timed out or the test finished. Pick-to: 6.7 6.6 6.5 Change-Id: If56ecaa5b0e3af22b3e26480a584e2d52ac97553 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* AndroidTestRunner: uninstall the test when interruptedAssam Boudjelthia2023-12-131-21/+48
| | | | | | | | | | | | | | | If the test runner was interrupted, stop waiting for the test to start or to finish, go fetch the available test results and logcat and uninstall the test app. Also, set CMake TIMEOUT_SIGNAL_NAME to SIGINT and TIMEOUT_SIGNAL_GRACE_PERIOD to 10 seconds to allow enough time to fetch the logs and uninstall the test app. Task-number: QTBUG-106479 Pick-to: 6.7 6.6 6.5 Change-Id: I4820cfe58f05d15179b4af819caa92e475881634 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* windeployqt: Proper error message when qtpaths.bat/.exe could not be runOliver Wolff2023-12-112-9/+13
| | | | | | | | | If qtpaths cannt be found windeployqt should complain about that fact. Previously it complained about "Unsupported platform". Pick-to: 6.7 6.6 6.5 Change-Id: I4db954633c31ceac69c4d3c0e55cbe942c3272fd Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Fix build with -no-feature-processTasuku Suzuki2023-12-071-1/+1
| | | | | | | | | androidtestrunner uses QProcess Task-number: QTBUG-105524 Change-Id: If12eb011bbfb9848593657f86aa78b49309080e7 Reviewed-by: Axel Spoerl <axel.spoerl@qt.io> Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* AndroidTestRunner: fix args with quotes and spacesAssam Boudjelthia2023-12-051-2/+9
| | | | | | | | | | | | | | | | | | | | | | | First, replace double quote characters with 3 escaped double quotes to allow QProcess::splitCommand() to treat it as an actual quote character that's part of the tag. Then, escape single quote characters so they don't interfere with the shell command and also to be treated as part of the argument. Lastly, surround the args with escaped double quote so that args with spaces are also treated as one. Amends b044323c1656aeeec508afab8457755cc1e8c587. Example of this: tst_qkeyevent::modifiers("M","e","t","a") for double quotes tst_qunicodetools::wordBreakClass(two words) for spaces tst_QSpinBox::stepSelectAll("don't select all") for single quotes Task-number: QTQAINFRA-5703 Change-Id: Ie4317e4350bbac619bac41e41f42613f50cf1ad4 Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
* Add the 'IWYU pragma: export' record to all CaMeL-case header aliasesAlexey Edelev2023-12-041-2/+2
| | | | | | | Task-number: QTBUG-119505 Change-Id: I3831990636d2ababdbbc9ed51c3331f0e57679f1 Reviewed-by: Christian Kandeler <christian.kandeler@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* AndroidTestRunner: use Qt::StringLiterals and some cosmetic changesAssam Boudjelthia2023-11-301-54/+52
| | | | | | | | Cleanup the includes, and remove unused include dir in CMakeLists.txt. Task-number: QTQAINFRA-5928 Change-Id: I477024291042042765b666bda882bab4a5f8313f Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
* AndroidTestRunner: use QProcess instead of popen()Assam Boudjelthia2023-11-302-83/+113
| | | | | | | | | | | Using QProcess would make the test runner more robust when dealing with quoted arguments since it won't be using the system shell and handles quoting under the hood. Fixes: QTBUG-105524 Fixes: QTQAINFRA-5703 Change-Id: Ib666ffea33302f1dfc7e8972bd7750f14065c4fc Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
* AndroidTestRunner: Fix treatement of quotes in test argsAssam Boudjelthia2023-11-301-1/+1
| | | | | | | | | | | | | This has two parts, under testrunner, make sure to pass test args that has quotes as \\\" so that the Android app gets a \" after parsing the intent extras. The app args are then is passed to C++ where QProcess::splitCommand() is used to parse the args string into a list, and to preserve the quotes in this case, the former call expects triple quotes to to get the quote character preserved in the split list. Fixes: QTQAINFRA-5703 Change-Id: Iad81cadf24a6def21ef1536c882ecd510c4426cf Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
* CMake: Compute dynamic timeout for androidtestrunnerAlexandru Croitor2023-11-301-2/+2
| | | | | | | | | | | | | | | | | | | | Pass a CMake test TIMEOUT argument to androidtestrunner, using a value of 95% of that timeout to allow time for the test runner to do any cleanup before being killed. If no test argument is provided, use the value from CMake property DART_TESTING_TIMEOUT or CTEST_TEST_TIMEOUT. If that's not provided default to 25 minutes which is the default for DART_TESTING_TIMEOUT. Along the way set the default androidtestrunner timeout to 10 minutes and fix the wrong timeout in the help menu. Fixes: QTBUG-106479 Pick-to: 6.6 6.5 Change-Id: I12cd531583dd94954caf8044c37c22382d53d43c Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io> Reviewed-by: Dimitrios Apostolou <jimis@qt.io> Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
* AndroidTestRunner: pass testlib env vars to the test appAssam Boudjelthia2023-11-301-4/+20
| | | | | | | | | | | | | Check if the common testlib environment variables are set on the host and pass them to the test app. This include any env variable starting with "QTEST_". Fixes: QTBUG-106478 Task-number: QTBUG-106479 Pick-to: 6.6 6.5 Change-Id: I99e1b314b106cda20a66e3cac9a92b463b94f5c9 Reviewed-by: Dimitrios Apostolou <jimis@qt.io> Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
* AndroidTestRunner: fix failure to acquire test runner semaphoreAssam Boudjelthia2023-11-301-15/+41
| | | | | | | | | | | | | | | | Currently, if the test runner is interrupted by SIGINT and SIGTERM, the semaphore is never released and thus consecutive test runner executions will wait forever. To fix that, a signal handler for the former signals is added to release the QSystemSemaphore. Also, remove RunnerLocker and simply use QSystemSemaphore directly, and explicitly release the semaphore at the end of the test runner execution. Fixes: QTBUG-115298 Pick-to: 6.6 6.5 Change-Id: I4f6cc0e4d837460de9a66248e09d3cbaf24ce959 Reviewed-by: Axel Spoerl <axel.spoerl@qt.io> Reviewed-by: Zoltan Gera <zoltan.gera@qt.io>
* Android: bump Android target API level to 34Rami Potinkara2023-11-301-1/+1
| | | | | | | | Bumped on network related .gradle files too. Fixes: QTBUG-119145 Change-Id: I95f70e6cda1aad7a6bd7246c623eb6f143a829cb Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Windeployqt: Fix -v/--version optionTimothée Keller2023-11-281-2/+9
| | | | | | | | | | | While the version option was already there, it had no output attached to it, and simply generated the whole help text. Make sure that if the -v/--version option is set, only the tool version is outputted. Fixes: QTBUG-119511 Pick-to: 6.6 Change-Id: I59ee620333c02eb0a031cd05ac3170216cd034fa Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* qdbuscpp2xml: Register QtDBus metatypesIevgenii Meshcheriakov2023-11-281-0/+3
| | | | | | | | | | | | Explicitly register QtDBus-specific metatypes before attempting to generate output. This fixes a bug when types like QDBusObjectPath are sometimes ignored by this tool. Export QDBusMetaTypeId::init() for that reason. Add a regression test to tst_qdbuscpp2xml. Fixes: QTBUG-34550 Change-Id: I16faa79a794d09a26bad45e18730379681a20b50 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* AndroidTestRunner: use ndk-stack to pretty print crash reportsAssam Boudjelthia2023-11-281-0/+49
| | | | | | | | | | | | | | | | | | | Use ndk-stack [*] tool provided by the Android NDK to pretty print crash stacktraces to contain <source-file>:<line-number> lines for calls, making debugging crashes much easier. The ndk-stack path can be provided with the new param --ndk-stack, otherwise, it would be deduced using ANDROID_NDK_ROOT env var. If the tool is not found or the unstripped libs path cannot be obtained, the default crash report is printed instead. [*] https://developer.android.com/ndk/guides/ndk-stack Task-number: QTQAINFRA-5928 Pick-to: 6.6 6.5 Change-Id: I22c3ba131a44050c8fcbfd176d5ced096761d229 Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
* AndroidTestRunner: don't fail waiting for the app to start/finishAssam Boudjelthia2023-11-281-44/+50
| | | | | | | | | | | | | | | | | | | | | | Currently, under waitToFinish(), we wait for the app to start and if it doesn't start or starts and exits too quickly for the test runner to catch it, it fails. The test runner tries to get the pid of the test after it detects the app has started. However, we don't really need to fail, the test runner could simply continue the execution and assume the test was run and finished, and proceed to fetching the test results. Since, the results fetching don't anyway rely on the pid, the test runner can let that operation decide whether to fail or not (if not output is found). Also, along the way, instead of issuing a different command to get the pid (i.e. adb shell pidof), we can use the same "adb shell ps" command that is used to check if the app is running, to obtain the pid. Fixes: QTQAINFRA-5928 Fixes: QTBUG-88508 Pick-to: 6.6 6.5 Change-Id: Ice945fcb686c4ef21b5f1c143aa22922ae928333 Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
* AndroidTestRunner: print logcat and crash stacktrace when a test failsAssam Boudjelthia2023-11-281-16/+72
| | | | | | | | | | | | | | | | | | For better debugging for test failures, print both logcat and crash stacktrace (since the start of the current test only), to have an immediate idea of the reason of the failure or crash if any. The crash report and the logcat for Android before level 23, is fetched from the device's time of the app start since those two cases don't have an option for filtering by pid. Task-number: QTQAINFRA-5928 Fixes: QTBUG-114898 Pick-to: 6.6 6.5 Change-Id: I7760985032f342da4165cdb7573d4cfe5369ae03 Reviewed-by: Dimitrios Apostolou <jimis@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Axel Spoerl <axel.spoerl@qt.io>
* AndroidTestRunner: split androidtestrunner output retrieval failure logAssam Boudjelthia2023-11-281-18/+24
| | | | | | | | | | | | To make debugging easier, print a log for each step in the test output retrieval process instead of one error message that cover multiple potential error cases. Task-number: QTQAINFRA-5928 Pick-to: 6.6 6.5 Change-Id: Ia68c15e34cf4b0f8e2b0d351af785bb753807721 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io> Reviewed-by: Dimitrios Apostolou <jimis@qt.io>
* Moc: don't stumple over inline namespace in more placesFabian Kosmale2023-11-241-1/+3
| | | | | | | | | | | | | Ignore the 'inline' in case of nested namespace with another nested inline namespace. Amends 5222df2be7d10bf44dfc2971774eadcb526b7a13 Fixes: QTBUG-117765 Pick-to: 6.6 6.5 Change-Id: I87f2649606f63c818f225f8cc5ec914920763c5f Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* uic: Use fully qualified enum value for remaining casesFriedemann Kleint2023-11-151-3/+3
| | | | | | | | Task-number: PYSIDE-2492 Task-number: PYSIDE-1735 Task-number: QTBUG-118473 Change-Id: I4e5e328b0757145df2ceb550e2f90a64be91d5e9 Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* uic: Write fully qualified enum values for QMainWindow enumerationsFriedemann Kleint2023-11-151-5/+13
| | | | | | | | Task-number: PYSIDE-2492 Task-number: PYSIDE-1735 Task-number: QTBUG-118473 Change-Id: Ief50914bae3cc8e55f61113e8c8b6d6d24fe2c0f Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* uic: Prepare for encountering fully qualified enum values in new .ui filesFriedemann Kleint2023-11-151-24/+38
| | | | | | | | | | | | | | | | This means checks have to be rewritten using endsWith(). It mainly affects the QSizePolicy handling whose values originate from different sources, including numbers. To address this, refactor the code to deal with unqualified enum value names and introduce a helper function that fully qualifies the enumeration when writing out. Pick-to: 6.6 6.5 Task-number: PYSIDE-2492 Task-number: PYSIDE-1735 Task-number: QTBUG-118473 Change-Id: Iccbb884777aa9c696fbf48f9d7329353ef945b0f Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* windeployqt: improve MSVC runtime detectionYuhang Zhao2023-11-021-3/+13
| | | | | | | | | | | | | | | MSVC runtime dlls also include vccorelibXXX.dll, concrtXXX.dll, beside these traditional dlls, it's also possible to link against the new UCRT runtime, the ucrtbase.dll (and possibly including the API Set dlls), so we need to add some more checks to make windeployqt more robust. I've tested a custom Qt build locally, which I managed to make it link to ucrtbase.dll only, and this code works fine. Pick-to: 6.6 Change-Id: I00bc8666d8850aac279b8747465879e39348ba02 Reviewed-by: Oliver Wolff <oliver.wolff@qt.io> Reviewed-by: Timothée Keller <timothee.keller@qt.io>
* uic: Port enumeration lookups to QLatin1StringViewFriedemann Kleint2023-11-023-53/+53
| | | | | | | | | | | This makes string operations on them easier. Pick-to: 6.6 6.5 Task-number: PYSIDE-2492 Task-number: PYSIDE-1735 Task-number: QTBUG-118473 Change-Id: I92922b701fd72f5521eee7f6d3ef63492e03be9b Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
* Windeployqt: add options to deploy/block pluginsTimothée Keller2023-10-314-29/+269
| | | | | | | | | | | | Some plugin types are pulled in by default by certain modules. Give users the option to add/skip plugins and/or their types. [ChangeLog][Tools][Windeployqt] Windeployqt now has options that allow for custom plugin deployment. Users can include or exclude them, either individually, or by type. Fixes: QTBUG-117910 Pick-to: 6.6 Change-Id: I85235783dcd814396f184912269cd5976717b2dd Reviewed-by: Oliver Wolff <oliver.wolff@qt.io>
* no-thread: don't build macdeployqtMorten Sørvig2023-10-311-1/+1
| | | | | | | macdeployqt requires multithrading support. Change-Id: Ie561434d68f46bc82ec603aee2c36cd43597073a Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Prefer using override instead of virtual in qdbusxml2cppAhmed Kerimov2023-10-271-1/+1
| | | | | | | | | | | | | | In C++ 11 override keyword was introduced to allow overridden functions to be marked appropriately. Its presence allows compilers to verify that an overridden function correctly overrides a base class implementation. This can be useful as compilers can generate a compile time error when: - The base class implementation function signature changes. - The user has not created the override with the correct signature. This commit improves the D-Bus interface code generation. Change-Id: I0353575c3f70277d04e41b8fa0096c1b2b28058a Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* androiddeployqt: Copy templates and stdcpp lib in auxillary modeNikunj Arora2023-10-191-7/+6
| | | | | | | | | | [ChangeLog][Android][Deployment Changes] Now the auxillary mode of androiddeployqt also copies the templates and the stdcpp lib file without building the APK. Fixes: QTBUG-115241 Change-Id: I3d4647277e7f62f079c683645443462ef8026948 Reviewed-by: Tinja Paavoseppä <tinja.paavoseppa@qt.io>
* macdeployqt: Fix codesigning with @loader_pathJonas Kvinge2023-10-171-0/+4
| | | | | | | | | | | When the -executable parameter is specified, macdeployqt uses @loader_path instead of @rpath. This case was not handled in getBinaryDependencies() used for the code signing. Fixes: QTBUG-118075 Pick-to: 6.6 Change-Id: Ie1e0d0781305e1849df9ec0d5fb1c3ce6713a62b Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* windeployqt: Don't copy files from unneeded QML modulesArno Rehn2023-10-102-4/+24
| | | | | | | | | | | | | | | | | | | Previously, windeployqt would recurse into subdirectories when copying QML modules, even if those subdirectories were a nested QML module that was not needed for deployment. Since most QML modules are nested in the QtQuick and QtQml modules, the old code effectively always copied *all* QML modules. This patch adds guards that prevent recursing into subdirectories if those subdirectories represent QML modules. These nested modules will still be deployed, but only if referenced from the QML application (as determined by qmlimportscanner). Fixes: QTBUG-117459 Pick-to: 6.6 Change-Id: I4c0dfc15956ff40a0e8caec3fa334df10cc92ccd Reviewed-by: Timothée Keller <timothee.keller@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* Search extra library paths for Android dependency XML files as wellVolker Krause2023-10-071-0/+5
| | | | | | | | | | | | | | | This fixes a regression compared to Qt5. In Qt5 absoluteFilePath() unconditionally searched for all files in extra prefix dirs and the Qt install prefix, in particular also the -android-dependencies.xml files. After the changes in Qt6 up to now however those files are only searched in the Qt install prefix. This broke external libraries also making use of the -android-dependencies.xml mechanism, such as some KDE frameworks. Pick-to: 6.5 6.6 Change-Id: Ic53aab50c70f853f3b1d621d6de6edb3df223905 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io>
* Windeployqt: fix typoTimothée Keller2023-10-061-1/+1
| | | | | | | | | | Change "qpaths" to "qtpaths" since the former is not a valid option. Fixes: QTBUG-117817 Pick-to: 6.6 6.5 Change-Id: Ib8c8c80f31c1c54747340442c6bf3185c7c69001 Reviewed-by: Wladimir Leuschner <wladimir.leuschner@qt.io> Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
* macdeployqt: Also look for app libraries with .so extensionJonas Kvinge2023-09-271-1/+1
| | | | | | | | Fixes deploying glib-networking gio modules which uses .so file extension. Change-Id: I6b4c4e9c3bb5745ffa33d7e83c5853a9372f1ca6 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Android: bump Android target API level to 33Assam Boudjelthia2023-09-231-1/+1
| | | | | | | | | To follow latest Play Store requirement. Pick-to: 6.6.0 6.6 6.5 Fixes: QTBUG-112637 Change-Id: I1ef4f8b639f4b0cc759a2363b7b9b9864b159509 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
* Remove framework-related functionality from syncqtAlexey Edelev2023-09-221-30/+4
| | | | | | | | | | | | | | | | | | The files generated by syncqt should land not only in module include directory, but also in framework directory. Before syncqt made two copies of the generated files one in staging directory and the second one in module framework directory. This commit moves all logic related to framework header files to cmake scripts. This is done for both consistency and simlifying the logic. The whole module .syncqt_staging directory is copying to the framework library in cmake. [ChangeLog][Tools][syncqt] '-framework' and '-frameworkIncludeDir' arguments were removed. The related logic is moved to cmake scripts. Task-number: QTBUG-116483 Pick-to: 6.6 6.5 Change-Id: If79c5470d2ab51eb7fc083bce6fb01858bed76ba Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* moc: make qHash(SubArray) accept a seedMarc Mutz2023-09-201-3/+3
| | | | | | | | | | | This prevents the use of the one-arg-to-two-arg adapter template which we'd remove rather sooner than later, because it's causing all sorts of problems, but probably can't, until Qt 7. Pick-to: 6.6 Task-number: QTBUG-116074 Change-Id: I5907da0dc8c01b636d16dcc01e9c808ab9a85081 Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
* Iterate over all extraPrefixDirs when collecting "directories"Alexey Edelev2023-09-151-5/+22
| | | | | | | | | | | | | | | | | When collecting plugins required for the android application according to linked targets we should take into account all prefix directories. But not only the first one. Otherwise the order we use when adding paths to extraPrefixDirs will affect collecting of the plugins. This specifically leads to the issue if the user project builds custom Qt plugins. The plugin directory from user project build tree will be found first and all plugins from Qt installation directory are discarded. Pick-to: 6.6 6.5 Fixes: QTBUG-116920 Change-Id: Id94ebaf5ccd1a279a74b38b59ff535f45230e1b4 Reviewed-by: Assam Boudjelthia <assam.boudjelthia@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* syncqt: Generate the deprecated header in the framework directory tooAlexey Edelev2023-09-121-2/+10
| | | | | | | | | | | Generate the missing deprecated header in the framework directory for the cross-module deprecation case. Amends 7e84a04563142d217317928865a8f6475d189d95 Pick-to: 6.5 6.6 Change-Id: Ibb2d262e41c6de7dfb34c39cabd6b19c43aa9636 Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* syncqt: Mark updateOrCopy as exception freeAlexey Edelev2023-09-121-2/+3
| | | | | | | Pick-to: 6.5 6.6 Change-Id: I4ac468ef503775bca7d3848d26b42990bb4fdd1a Reviewed-by: Amir Masoud Abdol <amir.abdol@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* syncqt: Catch fs exceptions that happen when clearing staging directoryAlexey Edelev2023-09-121-17/+28
| | | | | | | Pick-to: 6.5 6.6 Change-Id: I1617f0940e1b1d892d321fc6f5df11262ee1f288 Reviewed-by: Amir Masoud Abdol <amir.abdol@qt.io> Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
* syncqt: Add the missing is_open check to writeIfDifferentAlexey Edelev2023-09-121-0/+4
| | | | | | Pick-to: 6.5 6.6 Change-Id: I2a969483d20f250083c1a262bd3bfc696a7f0df4 Reviewed-by: Amir Masoud Abdol <amir.abdol@qt.io>
* syncqt: Add the missing file stream close callsAlexey Edelev2023-09-121-0/+2
| | | | | | | | | Call close explicitly to avoid any issues related to non-closed file descriptors. Pick-to: 6.5 6.6 Change-Id: I02df30032dc04afd5d135d707eff4a6efe6a3ea5 Reviewed-by: Amir Masoud Abdol <amir.abdol@qt.io>
* syncqt: Handle possible exceptions thrown by std::filesystem::create_directoriesAlexey Edelev2023-09-121-7/+33
| | | | | | | | | Wrap the directory creation logic with try/catch to handle possible file system exceptions. Pick-to: 6.6 6.5 Change-Id: I11ad4552dccfdc8cc8a4ec4912d0a15d0f9557c6 Reviewed-by: Amir Masoud Abdol <amir.abdol@qt.io>