summaryrefslogtreecommitdiffstats
path: root/src/common-lib/exception.h
Commit message (Collapse)AuthorAgeFilesLines
* Clang-tidy / ClazyRobert Griebl7 days1-1/+1
| | | | | | | | It's been a long time since the last round, so there are a lot of fixes Change-Id: Ic226130eed0d03776749a2a04806efaa537f3f19 Pick-to: 6.11 Reviewed-by: Bernd Weimer <bernd.weimer@qt.io>
* Change all appman libraries to use Qt's default regarding shared/staticRobert Griebl7 days1-3/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | The idea of using static libraries only was to shave off any milli-second possible from the startup time. This does bring a lot of problems though, in that a lot of valid use-cases where you need access to an internal symbol are not possible, because you cannot link to the static libraries from a Qt or QML plugin, because you get duplicate symbols. As we need the possibility to access Appman symbols from auto-generated plugins for a new intent overhaul, we are doing 2 things now: 1) This patch will simply convert the existing libs over to building as static/shared, depending on how Qt itself was built. 2) The follow-up patch will consolidate the library zoo into more managable and logical chunks. Plus this will also help with keeping the hit to the startup performance in check. A few destructors used in std::unique_ptrs had to made explicit to make MSVC happy. Change-Id: I1bdbb6d8f4c16a6bf70bd98b9a146203d9036a57 Pick-to: 6.11 Reviewed-by: Bernd Weimer <bernd.weimer@qt.io>
* Security: remove suid-root supportRobert Griebl2025-08-251-3/+4
| | | | | | | | | | | | All suid-root binaries are dangerous if not setup correctly. This here is a better way to avoid these inherent problems, while still being able to use the appman's built-in sudo-helper with minimal changes. Pick-to: 6.10 Change-Id: If13507e226a57b16659c89599497735f2df128ad Reviewed-by: Dominik Holland <dominik.holland@qt.io>
* Replace all #pragma once with old-style #ifdef include guardsRobert Griebl2024-03-051-1/+4
| | | | | | | | Change-Id: I1805fbccf4d9398fddfe8f4ab977236afc49ca45 Fixes: QTBUG-122951 Pick-to: 6.7 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Dominik Holland <dominik.holland@qt.io>
* Axivion: fix or document most of the reported issuesRobert Griebl2024-02-211-1/+3
| | | | | | | Change-Id: I5723096b8db71c216b33e189a2469b3130c19504 Pick-to: 6.7 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Dominik Holland <dominik.holland@qt.io>
* Clazy: fixesRobert Griebl2024-01-081-1/+1
| | | | | | Change-Id: I2f9f0245e1d0ac0c6ee618a0c90f31aaa1465e93 Pick-to: 6.7 Reviewed-by: Dominik Holland <dominik.holland@qt.io>
* Clazy: modernizeRobert Griebl2024-01-081-18/+18
| | | | | | Change-Id: I8abe9b5b62d255b93754af84b82fbf88ca9b78a4 Pick-to: 6.7 Reviewed-by: Dominik Holland <dominik.holland@qt.io>
* Modernize string literalsRobert Griebl2024-01-081-2/+2
| | | | | | | | | Replace all our custom qSL/qL1S/qL1C macros with standard C++ and QString unicode string literals. Change-Id: I9e0b69fb46525421f408f260518a69b8f8125d99 Pick-to: 6.7 Reviewed-by: Dominik Holland <dominik.holland@qt.io>
* Add a simple package-server for app installation testingRobert Griebl2023-08-041-1/+1
| | | | | | | | | | | | The old qtauto-deployment-server aka app-store is a Django service that is much too complex for what it was designed for. Instead of having to deal with Python dependencies, database migrations and Django configurations, this new package-server is a simple command-line tool that just works right out of the box. Change-Id: Ifb672b58fbe092b48ca4609823faf5525d7b9257 Reviewed-by: Bernd Weimer <bernd.weimer@qt.io>
* Fix include style to what's mandated for public headersAlexandru Croitor2022-12-121-4/+4
| | | | | | | | | | This fixes errors for the developer-build. Task-number: QTBUG-109337 Change-Id: I145e5eb5074f6e8b03e3304f58f0dd57ee1dfe95 Reviewed-by: Zoltan Gera <zoltan.gera@qt.io> Reviewed-by: Alexey Edelev <alexey.edelev@qt.io> Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Fix QScopedPointer::take deprecation warningRobert Griebl2022-06-151-1/+0
| | | | | | | | Also replaced the remaining usages of QScopedPointer with std::unique_ptr for consistency. Change-Id: Ic63d1b3ea03a4562e4e40c3e9c7992459fde716e Reviewed-by: Dominik Holland <dominik.holland@qt.io>
* Use SPDX license identifiersDominik Holland2022-06-151-30/+4
| | | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. Files that have to be modified by hand are modified. License files are organized under LICENSES directory. Pick-to: 6.4 Task-number: QTBUG-67283 Change-Id: I09660e42dea769d720ff30e652485d9861cea965 Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Update copyright headers to 2021 an finally switch to the GPLRobert Griebl2021-06-011-25/+13
| | | | | | | | | Also removed all the SPDX tags and -QTAS license extensions. Change-Id: Ibd10fe37afcbba832831d027cf2f1891ca0226c0 Fixes: AUTOSUITE-1648 Fixes: AUTOSUITE-1646 Reviewed-by: Dominik Holland <dominik.holland@qt.io>
* Qt6 port, part 2 .. compiling with cmakeRobert Griebl2020-11-281-1/+1
| | | | | Change-Id: I0b3b0bd420fc2b5a5d263439ef263a8214bbdb4b Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Qt 6 port, part 1 .. without cmakeRobert Griebl2020-11-281-7/+1
| | | | | | | | | All C++ and QML unit-tests pass. The QML "windowitem" test is very unstable though and often crashes in the RHI layer. Change-Id: Ia42fc71ad69d2ba74b8b631ded7569b48cf458ee Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Disallow implicit ASCII castsBernd Weimer2020-09-171-0/+6
| | | | | | | Disallow implicit C string to QString conversion, except in tests. Change-Id: I0d1477784eede11a54544c28b338fe7ecd42ef02 Reviewed-by: Robert Griebl <robert.griebl@qt.io>
* Fix copyright headersRobert Griebl2019-11-051-0/+1
| | | | | | | Forgot to amend the copyright headers in the last commit fb8ed4e Change-Id: Id105364fc7c2e7cc45da04ec84dcfa00c9d2578e Reviewed-by: Dominik Holland <dominik.holland@qt.io>
* Rewrite of the YAML parser abstraction for QtRobert Griebl2019-10-301-0/+21
| | | | | | | | | | The base is still libyaml, but we are using the low-level parse/event API to speed up parsing. In addition to the old YAML-to-QVariantMap and QVariantMap- to-YAML APIs, the new parser interface makes it possible easily write a validating parser: the new YamlParser class. Change-Id: Ib2130509a3a2675142ce43c8ef125cf48cfd8fea Reviewed-by: Dominik Holland <dominik.holland@qt.io>
* Rename from Luxoft AM to Qt AMRobert Griebl2019-08-051-1/+1
| | | | | | Change-Id: I84bbd9e7f735ed1864804a9887d3a02b7c925e53 Reviewed-by: Vladimir Minenko <vladimir.minenko@pelagicore.com> Reviewed-by: Bernd Weimer <bernd.weimer@pelagicore.com>
* Update the appman-dumptypes toolRobert Griebl2019-01-161-0/+1
| | | | | | | | | - Added all the missing classes - Split the generated types definition the same way we split the QML import namespace earlier - otherwise QtCreator cannot use this information Change-Id: I8259f7fe0598c54a75b125aac44f189177e7046b Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Update copyright statementsRobert Griebl2018-12-181-1/+2
| | | | | | | | - added 2019 - everything is (c) Luxoft instead of Pelagicore from now on Change-Id: I82f874f0b0601deae1bb39347821edaf3c4cc6d8 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Clang code model fixesRobert Griebl2018-04-171-1/+1
| | | | | Change-Id: I46bb240aa843c297e83278a4f1b29f95be093c83 Reviewed-by: Thomas Senyk <thomas.senyk@pelagicore.com>
* Update Pelagicore copyright headers to 2018Robert Griebl2018-02-071-1/+1
| | | | | Change-Id: I8d9278053ccdef5a57e51753aa6157941ebcee52 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Introduce config file cachingRobert Griebl2017-04-251-1/+5
| | | | | | | | | | | After parsing all config files specified on the command line, the appman will write a binary dump of the resulting configuration QVariantMap to a cache file via QDataStream. This cache file includes absolute paths and checksums of all config files, so that the appman can verify if the cache is still up-to-date on subsequent starts. Change-Id: I1d6f6621f75d1bba7849b3514177fc2c245c4c23 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Replace C++03 throw(Exception) specifications with C++11 noexcept(false)Robert Griebl2017-03-141-15/+15
| | | | | | | | | | Newer clang versions already complain about throw(foo) being deprecated in C++17. Of course MSVC2013 has no support for plain noexcept(bool), so we have to make do with the unwieldly Q_DECL_NOEXCEPT_EXPR(false) as long as we need to support it. Change-Id: Id5d6890213fa019753dec624b71db8aefe010e7c Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Made Exception default to code == Error::SystemRobert Griebl2017-02-071-0/+1
| | | | | | | This makes a big chunk of all the exception throws much more readable. Change-Id: I4444137157ec2e33360de0e21f1268f7fd615270 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Fixed missing overridesRobert Griebl2017-01-201-1/+1
| | | | | Change-Id: I8d713f90ccff0c7a8608af30386bd619ae452063 Reviewed-by: Bernd Weimer <bernd.weimer@pelagicore.com>
* Updated Pelagicore AG copyright to 2017Robert Griebl2017-01-161-1/+1
| | | | | | | Also added a few pro file tweaks to make this search&replace easier next year. Change-Id: I2d1153d62bfe558075009abcd8cad491f149c93f Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Make the build warning freeRobert Griebl2016-10-191-2/+2
| | | | | | | | | Replaced all AM_*_NAMESPACE with the undocumented QT_*_NAMESPACE_<foo> mechanism. Add dummy "we mean it" comments to _p.h headers, even though all of the AM's C++ API is private anyway. Change-Id: I45c1b7490f3d519e79350a19dab129ad20623d92 Reviewed-by: Thomas Senyk <thomas.senyk@pelagicore.com>
* Reimplemented build-system as a real Qt moduleRobert Griebl2016-10-171-3/+3
| | | | | | | | | | This should help with doc generation and actually running the unit-tests in the CI system. Please note that the binaries are now installed into $$[QT_INSTALL_BINS] Change-Id: I6f27ba39f8e5d923e1aeff550ba11c1fbd8ac5cf Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Moved all symbols to a private namespaceRobert Griebl2016-09-231-0/+3
| | | | | | | | | This was done to avoid conflicts with C++ plugins that get loaded into both the system-ui or the QML app runtime. Change-Id: I03fc222d806292f0f0734709568514862b6da56d Reviewed-by: Bernd Weimer <bernd.weimer@pelagicore.com> Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Fixed license header to align with the final QtAS contract.Robert Griebl2016-06-021-6/+16
| | | | | | | | | | | The AppMan is triple-licensed now, like the rest of Qt: commercial, LGPL3 and GPL2/3 To be more aligned with Qt, the docs are also FDL and the tests, as well as the tools are GPL-EXCEPT now. Change-Id: Ib0168a112c3bcd340576f92416a6fe36fa315240 Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Use the same license wording for GPL3 as the standard Qt 5.7 license.Robert Griebl2016-04-111-13/+14
| | | | | Change-Id: I0f8cb01cd1239bf70434f3b39392a1464c32620e Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Updated copyright year to 2016Robert Griebl2016-03-171-1/+1
| | | | | Change-Id: I2630c098272ec75bed0333d7eab0610c0c621893 Reviewed-by: Robert Griebl <robert.griebl@pelagicore.com>
* Fixed all relevant clazy warnings - especially QString related ones.Robert Griebl2016-01-141-4/+4
| | | | | | | | | | | | Most error strings have not been converted to QStringLiterals on purpose: It's a better tradeoff here to use half the space and take a "performance hit" when running into an (unlikely) error condition. Please note that still no version of MSVC is able to cope with concatenated string literals: http://blog.qt.io/blog/2014/06/13/qt-weekly-13-qstringliteral Change-Id: Ife5f5841de121da75838ae9dbb67909a5816768e Reviewed-by: Dominik Holland <dominik.holland@pelagicore.com>
* Tweaked the header layout a little bit, so that it passes the CI check.Robert Griebl2015-11-201-4/+4
| | | | | | | Also change-id I8ffe7bca in qtqa is needed for this to work. Change-Id: I15d1e641e5d3888b4a46c16267a6059f85b32487 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* Fixed all copyright headers to be GPLv3Robert Griebl2015-11-161-1/+3
| | | | | | | | Somehow my header replacement script pasted the wrong template into header files -- the cpp and doc files were correct. Change-Id: Ib512232058bcf139608c519d867ffd266f49fd52 Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
* Initial commit of Pelagicore's ApplicationManager with squashed history.Robert Griebl2015-10-261-0/+86
(minus all 3rd party stuff - we will re-add them later, potentially changing the way some of them are handled completely) Change-Id: I55f15b12f0dbe0c4f979206eaa163d4793ff7073 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com> Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com>