Commit Graph

6441 Commits

Author SHA1 Message Date
Marco Bubke
728be60986 QmlDesigner: Change import export architecture
The new architecture should be a better abstractions for qml.
ImportedTypeNames are introduced. ModuleDependencies are now taken
over by document imports. Modules lost their version and
ExportedTypeNames gained it.

Task-number: QDS-4938
Task-number: QDS-4933
Task-number: QDS-5009
Task-number: QDS-5032
Change-Id: Ia86921c5be9107fe7d5bfd28f12bf8453769dc10
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-09-20 07:29:22 +00:00
Marco Bubke
13aaea197b QmlDesigner: Rename Import into Module
Task-number: QDS-4933
Change-Id: Ibc28ae731ffb27734f61eb438230fa58fe800bdc
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
2021-09-20 07:29:15 +00:00
Marco Bubke
a570d53db2 QmlDesigner: Add ProjectStorageUpdater
Adding a skeleton for the ProjectStorageUpdater.

Task-number: QDS-4819
Task-number: QDS-4793
Change-Id: I230d68f71480d360d71019883510ef22dd276802
Reviewed-by: Thomas Hartmann <thomas.hartmann@qt.io>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
2021-09-20 07:28:59 +00:00
Robert Löhning
f529051b58 Squish: Be fuzzy when comparing snippet fetched from Pastebin.Com
Change-Id: If08b2b9136d55e2dddca6181c1075d845422a30b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-09-16 07:17:55 +00:00
Robert Löhning
a1eb505fbd Squish: Use Qt 5.14 in tst_openqtcreator_qbs
Change-Id: If214c32a0a62ebdada455a325ad1b2d02adc67c0
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-09-16 07:17:37 +00:00
Eike Ziller
3d4d7c7e14 Merge remote-tracking branch 'origin/5.0'
Conflicts:
	src/plugins/clangtools/clangtoolssettings.cpp
	src/plugins/clangtools/executableinfo.cpp
	src/plugins/clangtools/executableinfo.h

Change-Id: Id8caf63e3e594792467d3447870086bd2d8f73b9
2021-09-13 17:03:55 +02:00
Christian Stenger
6786d585e0 Tests: Fix running dumper tests on Win
Using QtcProcess needs more setup, so use consistently
QProcess for all processes inside the dumper tests.

Change-Id: I7c09c6705c8b8d52ba7b27b054b825c4147647d3
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2021-09-13 11:18:48 +00:00
Jarek Kobus
4b81483b4d Add some explanation about how to run this test
Change-Id: I748e13db89dc79bbf11f663ce6914513d2912766
Reviewed-by: Alp Öz <aoz@qt.io>
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-09-13 10:50:44 +00:00
Jarek Kobus
f72c4cb8ac Ssh: Re-base SshProcess on top of QtcProcess
Change-Id: I266820e0e2ea12d6e4a5a83a679a7279fab9cd83
Reviewed-by: hjk <hjk@qt.io>
2021-09-13 09:26:09 +00:00
Cristian Adam
0f0287d907 Debugger: Enable standalone usage of debugger auto test
Change-Id: If89d261c82b25332ab6e354dfbf908765bb802f3
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2021-09-13 08:00:29 +00:00
Jarek Kobus
33f1a96005 Control the lifetime of SshProcessManager
Make it possible to control when the SshProcessManager is
being constructed / destructed. Expose public constructor.

Since different singletons depend on each other, we need
to control the order of creation and destruction of them.

The order of creation is like that:

1. QCoreApplication
2. ProcessReaper
3. ProcessLauncher
4. SshConnectionManager

The order of destruction must be opposite to the above.

Change-Id: Ice07eb751cd61c03cb461816fa1b74ab040a53de
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-09-10 14:02:21 +00:00
Jarek Kobus
ecfe6b7fc1 Add a test ensuring we don't receive a warning when killing process
Before we were receiving the following warning when detroying the
QtcProcess while still running:

QProcess: Destroyed while process ("[program_name]") is still running.

With the new implementation it won't appear anymore since terminating
running QtcProcesses is done internally by the reaper.

Change-Id: I14a0de136f463966cb1e4c43c5cb26b4de47e7ce
Reviewed-by: hjk <hjk@qt.io>
2021-09-09 14:34:59 +00:00
Ihor Dutchak
716efc964d Debugger: Add support boost::container vector/static_vector
Also fix boost::container::list.

Change-Id: Iaa2ff09defc6f90c3f6eb1f7b333f9e5ccc16b65
Reviewed-by: hjk <hjk@qt.io>
2021-09-09 07:18:34 +00:00
hjk
d10b8e47de Debugger: Fix CComplex dumper test
Looks like newer gdb's output looks now closer to lldb's.

Change-Id: I9b44eec1aa1c448ca4ed85696243807145a8de51
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-09-08 14:34:13 +00:00
hjk
adae66455d Docker: Use current cmake in test Dockerfile
Change-Id: Icf9c116a72e679223aaa9a3f545fb0f7db5a31d4
Reviewed-by: Pasi Petäjäjärvi <pasi.petajajarvi@qt.io>
2021-09-08 14:26:37 +00:00
Assam Boudjelthia
41528390b8 Revert "Move sdkmanager's sdk level parsing to AndroidConfig"
This reverts commit 2d77922856.

Reason for revert: This causes a build error in Android tests, reverting until the a fix is ready for that to not block the repo.

Change-Id: I74961df660ebaf69caf092d53172821815f21268
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-09-08 12:52:16 +00:00
Assam Boudjelthia
2d77922856 Move sdkmanager's sdk level parsing to AndroidConfig
Both the sdkmanger and avdmanager (maybe more) need to parse the sdk
level for packages and devices which may contain letters, make them
use the same logic.

Change-Id: Iff7fef3a66e00fac11b833f73f2f334a4cf1a766
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-09-08 08:09:20 +00:00
Eike Ziller
95de5c93b1 QmlJS: Fix issues with getting modulePaths
This patch

- improves performance by removing the usage of QRegularExpression for
trivial string operations (this is called 3000 times after configuring
Qt Creator)

- fixes handling of version number like "2.-1" which are the result of
imports with only a major version number like "import QtQuick 2"

Task-number: QTCREATORBUG-25899
Fixes: QTCREATORBUG-26178
Fixes: QTCREATORBUG-26216
Change-Id: Ic792909513f4fe25ac72043645f297ee41890375
Reviewed-by: Fawzi Mohamed <fawzi.mohamed@qt.io>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2021-09-07 08:16:48 +00:00
Jarek Kobus
ace765c199 Move ProcessReaper into lib/utils
Reuse ProcessReaper inside process launcher.
Automatically reap all internal QProcesses of QtcProcess
(either direct child of QtcProcess in QProcessImpl
or indirectly inside process launcher).
Make ProcessReaper work again on QProcess instead of on
QtcProcess, so it may still be reused for non-QtcProcesses.

Change-Id: I950cac5cec28f17ae97fe474d6a4e48c01d6aaa2
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: hjk <hjk@qt.io>
2021-09-06 21:28:19 +00:00
Jarek Kobus
8724a4efbb Use QtcProcess for clangbackend
Change-Id: Ifdcdba765409a09861f81dd3dff405115a986801
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-09-03 14:06:56 +00:00
Jarek Kobus
a454b3dc23 Use QProcess' / process lanuncher's exit code
Change-Id: I802116c45847daf9a647771ee293aef8463fc3c7
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-09-03 10:56:19 +00:00
Jarek Kobus
597750507e Implement process channel forwarding in process launcher
Change-Id: I9e526eb40ebc46284f773d10ec0e285a009c524d
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
2021-09-03 10:56:12 +00:00
Eike Ziller
253c4e55b6 CMake build: Compile QmlDesigner autotests
We cannot do this via a static library, because the tests need
to compile the same files with different defines
(QMLDESIGNER_TEST). Add a function which extends a target
with the corresponding files.

Also do not hardcode resource directories in the test -
the Qt Creator app bundle is no longer in a "bin/" subdirectory
on macOS. Use the build system provided IDE_*_PATH
variables instead.

Change-Id: I21850eba3cb47b4dcfd5e66227183b2d1ff35ff2
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Cristian Adam <cristian.adam@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-09-02 10:09:57 +00:00
Christian Kandeler
284817fae6 Merge CppTools into CppEditor
There was no proper separation of responsibilities between these
plugins. In particular, CppTools had lots of editor-related
functionality, so it's not clear why it was separated out in the first
place.
In fact, for a lot of code, it seemed quite arbitrary where it was put
(just one example: switchHeaderSource() was in CppTools, wheras
switchDeclarationDefinition() was in CppEditor).
Merging the plugins will enable us to get rid of various convoluted
pseudo-abstractions that were only introduced to keep up the artificial
separation.

Change-Id: Iafc3bce625b4794f6d4aa03df6cddc7f2d26716a
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-09-01 14:53:58 +00:00
Christian Stenger
9eee8e4b84 Tests: Add test for async copying via FilePath
Change-Id: Idbc18d43ea81d395cc76f7bf9cfb32df1350b3ed
Reviewed-by: hjk <hjk@qt.io>
2021-09-01 11:41:51 +00:00
hjk
5830641d0f Valgrind: Make callgrind work on docker
Callgrind on Remote Linux did not work for years, so its safe to ignore
the remains from the previous remote support and start over.

This here now handles the local case and the case where callgrind
runs together with the debuggee in the same docker container.

Guessing at the output file name is replaced by specifiying it in
advance.

Cross-setups are not yet supported.

Change-Id: I97edeb4eab7475727eddb26d25f8bec650a7eeb9
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-09-01 09:27:24 +00:00
Jarek Kobus
15c183fce6 Set process state to NotRunning after FailedToStart error
Remove the process in process launcher after error has appeared.
Remove unneeded stopStopProcedure as we are disconnecting from
process' signals inside removeProcess().
In order to behave as much similar to what QProcess does,
provide a test that:
- ensures the FailedToStart error is synchronously emitted
  when waitForStarted is being executed
- ensures that process state is reset to NotRunning after
  FailedToStart error
- 2nd call to start/waitForStarted doesn't block on
  waitForStarted

Change-Id: I139354421d037739f1cc1a2685b66f1e5b6170c8
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-08-31 12:09:36 +00:00
Eike Ziller
987ad3fe9c Merge remote-tracking branch 'origin/5.0'
Conflicts:
	cmake/QtCreatorIDEBranding.cmake
	qbs/modules/qtc/qtc.qbs
	qtcreator_ide_branding.pri
	src/plugins/android/androidconfigurations.cpp

Change-Id: Icd2b0fda2b2653656285bbbe457c30c9cd414d3f
2021-08-30 12:15:37 +02:00
Christian Stenger
aca5e375f4 Tests: Fix build without ShaderTools
Change-Id: Id22a91c440ea08fdab42e864d54587836e043584
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-08-27 13:38:45 +00:00
Alessandro Portale
595a4a621d Tests: Avoid Qt6-related deprecation warnings
Qt::AA_EnableHighDpiScaling and Qt::AA_UseHighDpiPixmaps are deprecated

Change-Id: I36a289f00feeaa472ee911a567c2a6160e259317
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-08-26 14:00:14 +00:00
Christian Stenger
68c2741587 Tests: Unify build for debugger tests
Latest breakages suggest to unify this as qmake was not linking
directly against utils when building some of the debugger related
tests except on Windows.
CMake and Qbs builds are untouched as they did link against utils
before already.

Change-Id: I0541964417546294b4b82aceac06f7322b1bef64
Reviewed-by: hjk <hjk@qt.io>
2021-08-26 12:11:55 +00:00
The Qt Project
2028d1c620 Merge "Merge remote-tracking branch 'origin/5.0'" 2021-08-26 11:07:04 +00:00
Christian Stenger
3d2a0ae2a6 Tests: Fix compile with qmake on Linux
Amends 244e940c94.

Change-Id: Ic1a308d44c51caae53c60dac7d08510b936896fd
Reviewed-by: hjk <hjk@qt.io>
2021-08-26 09:42:03 +00:00
Eike Ziller
0777b65db3 Merge remote-tracking branch 'origin/5.0'
Conflicts:
	qbs/modules/qtc/qtc.qbs
	src/plugins/android/androidconfigurations.cpp

Change-Id: If8dc2cdf131811e08ca147c6f58dbb3ed3bf7227
2021-08-26 11:09:08 +02:00
hjk
9796f88fd5 Docker: Add valgrind and perf to Docker build and run test images
Change-Id: If1154852ef069e890a1fc0d07ab6cbbe3bd3bea4
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-08-26 07:03:24 +00:00
Christian Stenger
244e940c94 Tests: Fix build with qmake
Change-Id: I926dcee9d6a6e535cb06c19096db74565f484224
Reviewed-by: hjk <hjk@qt.io>
2021-08-25 12:18:15 +00:00
Jarek Kobus
6c45764fa1 Rename test case, use both verbs in passive voice
waitForStartAndFinished -> waitForStartedAndFinished.

Change-Id: I44440a21cd91105b84227e13d1ea3d5b9490148f
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
Reviewed-by: hjk <hjk@qt.io>
2021-08-25 07:54:31 +00:00
Jarek Kobus
43b82bfc5f Add a test for waitingForStarted and waitingForFinished
Change-Id: I2d38bb2d37a71aad6d762aa68f1f3b329a4fa302
Reviewed-by: hjk <hjk@qt.io>
2021-08-24 18:24:41 +00:00
Christian Stenger
ee111ce3cc Tests: Fix qmake build
Change-Id: I4132efec68fd0e5b830417fd828ddff7ff141f5c
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Reviewed-by: Jarek Kobus <jaroslaw.kobus@qt.io>
2021-08-23 20:13:18 +00:00
Robert Löhning
4455dd2ece Squish: Prepare tst_WELP01 for Qt 6
Working around the wildcard issue...

Change-Id: I3d3b8e0360762ea72c39a49274df271fc0090e8b
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-08-23 09:28:25 +00:00
Robert Löhning
0824aa2ce3 Squish: Use tab visibility hack on Windows, too
Change-Id: I6e5f4b75747b703ab46e2f3776b134aff8b34ac0
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-08-23 09:26:39 +00:00
Robert Löhning
3d20cc68e5 Squish: Update tst_memberoperator
Change-Id: I929ef6dc2db7c9efdd0c33c42aa44268595bc75d
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-08-23 09:26:24 +00:00
Robert Löhning
f1c5c1fc03 Squish: Stabilize tst_memberoperator
Frequently wait for the editor again to avoid the
"Error in type() invocation".

Change-Id: Id8e5971e6ef8fbb8dfb59fbb971a2212557adf72
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-08-23 09:26:17 +00:00
Christian Kandeler
e0e8fda580 ClangCodeModel: Use clangd for completion and function hint
Change-Id: I80160f3a40da18ac178682afe6caba5e5af6e3eb
Reviewed-by: David Schulz <david.schulz@qt.io>
2021-08-23 09:06:31 +00:00
Cristian Adam
54c5322322 CppTools: Code model fix for C++20, MSVC, and newer CMake versions
Starting with version 3.20 CMake adds -std:c++20, which breaks the
code model when using MSVC.

Clang-cl 12 doesn't know about -std:c++20, but clang driver knows
about -std=c++20.

Fixes: QTCREATORBUG-26146
Change-Id: I696842e11b0a9ba8849455d2f81f8dde6dd95a27
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
2021-08-20 15:28:57 +00:00
Alessandro Portale
e803e76d28 Tests: Fix CMake build with Qt 6.2-Beta3+ and WITH_TESTS
NO_CREATE_PLUGIN_TARGET -> NO_PLUGIN

Amends: c568ab89c5

Change-Id: I579a5ec14a147c4cf641915c224ddee7ac573b80
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-08-20 14:15:43 +00:00
Christian Kandeler
2e77362da0 Fix some compiler warnings
Change-Id: I8d7feef99b8f59b29efe9caae02aa75cdf5ac597
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-08-20 10:28:20 +00:00
Eike Ziller
b09b6bd747 Merge remote-tracking branch 'origin/5.0'
Change-Id: I370268624bd6e91e7b44fa236e913f5f55867e17
2021-08-20 09:50:30 +02:00
hjk
142a34464f Utils: Avoid adding duplicated slashs in FilePath::pathAppended
Change-Id: I791412906e94a967a61d9b3212b704936c447183
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
2021-08-20 05:33:34 +00:00
Robert Löhning
468b2aec2d Squish: Update tst_WELP01
The "Get Started Now" button opens a different page.

Change-Id: I99b4b492afae3d5389eabbf9f3661d3653a2460f
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
2021-08-19 11:15:21 +00:00