Squish: Replace Qt 5.3 kit with Qt 5.10

This patch just changes the minimum for replacing the kits while
keeping the tests running. Further updates to the tests should
be done in separate patches.

Task-number: QTCREATORBUG-19440
Change-Id: I25ce60ad0a47678dba4352a4b2601ca1cdd4741d
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
Robert Loehning
2018-03-21 22:21:56 +01:00
parent 17d530d60d
commit fdc4ac41d9
23 changed files with 177 additions and 169 deletions

View File

@@ -25,30 +25,25 @@ Second - some of the test suites/test cases expect a build of Qt 4.8.7 to be ava
* Other: * Other:
make -j<number of available cores> make -j<number of available cores>
Third - some of the test suites/test cases expect Qt 5.3.1 (default toolchain), Qt 5.4.1 (gcc, Linux and Windows only) and Qt 5.6.1-1 (default toolchain) Third - some of the test suites/test cases expect Qt versions to be installed in their default
installed in their default locations. On Linux/Mac this is ~/Qt5.x.1 and on Windows this is C:\Qt\Qt5.x.1. The default toolchains are gcc on Linux, locations. On Linux/macOS this is ~/Qt5.x.1 and on Windows this is C:\Qt\Qt5.x.1. It's easiest to
clang on Mac and MSVC2010 (Qt <= 5.5) or MSVC2013 (Qt > 5.5) on Windows. It's easiest to use default installations of the official opensource Qt packages. use installations of the official opensource Qt packages. Just install the Qt version for the
respective toolchain and if possible the additional module Qt Script. Do not install Qt WebEngine.
The exact versions and toolchains are:
On macOS it might be necessary to tweak some files of the Qt installation - depending on the installed Xcode and its installed SDKs. Linux:
If Xcode 8+ is installed you will need to update the file Qt 5.4.1 (gcc)
~/Qt5.3.1/5.3/clang_64/mkspecs/features/mac/default_pre.prf Qt 5.6.1-1 (gcc)
Change the line Qt 5.10.1 (gcc)
isEmpty($$list($$system("/usr/bin/xcrun -find xcrun 2>/dev/null"))) macOS:
Qt 5.6.1-1 (clang)
Qt 5.10.1 (clang)
to Windows:
Qt 5.4.1 (gcc)
isEmpty($$list($$system("/usr/bin/xcrun -find xcodebuild 2>/dev/null"))) Qt 5.6.1-1 (MSVC2013, 32 bit)
Qt 5.10.1 (MSVC2015, 32 bit)
Furthermore - depending on the installed SDK it might be necessary to update the file
~/Qt5.3.1/5.3/clang_64/mkspecs/qdevice.pri
Search for the following line
!host_build:QMAKE_MAC_SDK = macosx10.8
Newer Xcode might miss the 10.8 SDK. Check
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs
which SDKs are installed and update the version number accordingly.
Fourth - you'll have to provide some additional repositories (and for the hooking into subprocesses even some more Squish bundles, see below). Fourth - you'll have to provide some additional repositories (and for the hooking into subprocesses even some more Squish bundles, see below).
These additional repositories are located inside ~/squish-data or C:\Users\<user>\squish-data (depending on the OS you're on). These additional repositories are located inside ~/squish-data or C:\Users\<user>\squish-data (depending on the OS you're on).

View File

@@ -101,7 +101,7 @@
<value type="QString" key="PE.Profile.Icon">:///DESKTOP///</value> <value type="QString" key="PE.Profile.Icon">:///DESKTOP///</value>
<value type="QString" key="PE.Profile.Id">{a1e860d1-c241-4abf-80fe-cf0c9f0a43b3}</value> <value type="QString" key="PE.Profile.Id">{a1e860d1-c241-4abf-80fe-cf0c9f0a43b3}</value>
<valuelist type="QVariantList" key="PE.Profile.MutableInfo"/> <valuelist type="QVariantList" key="PE.Profile.MutableInfo"/>
<value type="QString" key="PE.Profile.Name">Desktop 5.3.1 default</value> <value type="QString" key="PE.Profile.Name">Desktop 5.10.1 default</value>
<value type="bool" key="PE.Profile.SDK">false</value> <value type="bool" key="PE.Profile.SDK">false</value>
<valuelist type="QVariantList" key="PE.Profile.StickyInfo"/> <valuelist type="QVariantList" key="PE.Profile.StickyInfo"/>
</valuemap> </valuemap>

View File

@@ -16,7 +16,7 @@
<variable>QtVersion.1</variable> <variable>QtVersion.1</variable>
<valuemap type="QVariantMap"> <valuemap type="QVariantMap">
<value type="int" key="Id">9</value> <value type="int" key="Id">9</value>
<value type="QString" key="Name">Desktop Qt 5.6.1 (SQUISH_DEFAULT_COMPILER)</value> <value type="QString" key="Name">Qt %{Qt:Version} (SQUISH_DEFAULT_COMPILER)</value>
<value type="QString" key="QMakePath">~/Qt5.6.1/5.6/SQUISH_DEFAULT_COMPILER/bin/qmake</value> <value type="QString" key="QMakePath">~/Qt5.6.1/5.6/SQUISH_DEFAULT_COMPILER/bin/qmake</value>
<value type="QString" key="QtVersion.Type">Qt4ProjectManager.QtVersion.Desktop</value> <value type="QString" key="QtVersion.Type">Qt4ProjectManager.QtVersion.Desktop</value>
<value type="bool" key="isAutodetected">false</value> <value type="bool" key="isAutodetected">false</value>
@@ -26,8 +26,8 @@
<variable>QtVersion.2</variable> <variable>QtVersion.2</variable>
<valuemap type="QVariantMap"> <valuemap type="QVariantMap">
<value type="int" key="Id">11</value> <value type="int" key="Id">11</value>
<value type="QString" key="Name">Desktop Qt 5.3.1 (SQUISH_DEFAULT_COMPILER)</value> <value type="QString" key="Name">Qt %{Qt:Version} (SQUISH_DEFAULT_COMPILER)</value>
<value type="QString" key="QMakePath">~/Qt5.3.1/5.3/SQUISH_DEFAULT_COMPILER/bin/qmake</value> <value type="QString" key="QMakePath">~/Qt5.10.1/5.10.1/SQUISH_DEFAULT_COMPILER/bin/qmake</value>
<value type="QString" key="QtVersion.Type">Qt4ProjectManager.QtVersion.Desktop</value> <value type="QString" key="QtVersion.Type">Qt4ProjectManager.QtVersion.Desktop</value>
<value type="bool" key="isAutodetected">false</value> <value type="bool" key="isAutodetected">false</value>
</valuemap> </valuemap>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProfiles> <!DOCTYPE QtCreatorProfiles>
<!-- Written by QtCreator 4.0.83, 2016-07-21T11:54:33. --> <!-- Written by QtCreator 4.5.1, 2018-01-10T17:26:12. -->
<qtcreator> <qtcreator>
<data> <data>
<variable>Profile.0</variable> <variable>Profile.0</variable>
@@ -50,29 +50,6 @@
</data> </data>
<data> <data>
<variable>Profile.2</variable> <variable>Profile.2</variable>
<valuemap type="QVariantMap">
<value type="bool" key="PE.Profile.AutoDetected">false</value>
<value type="QString" key="PE.Profile.AutoDetectionSource"></value>
<valuemap type="QVariantMap" key="PE.Profile.Data">
<value type="QString" key="Android.GdbServer.Information"></value>
<value type="QString" key="Debugger.Information">{70e26273-2c0b-4534-bbc0-eb6ca670821a}</value>
<value type="QString" key="PE.Profile.Device">Desktop Device</value>
<value type="QByteArray" key="PE.Profile.DeviceType">Desktop</value>
<value type="QString" key="PE.Profile.SysRoot"></value>
<value type="QString" key="PE.Profile.ToolChain">ProjectExplorer.ToolChain.Gcc:{c3f59b87-6997-4bd8-8067-ee04dc536371}</value>
<value type="QString" key="QtPM4.mkSpecInformation"></value>
<value type="int" key="QtSupport.QtInformation">11</value>
</valuemap>
<value type="QString" key="PE.Profile.Icon">:///DESKTOP///</value>
<value type="QString" key="PE.Profile.Id">{e91398ba-6443-4b02-b416-782a70d9df90}</value>
<valuelist type="QVariantList" key="PE.Profile.MutableInfo"/>
<value type="QString" key="PE.Profile.Name">Desktop 5.3.1 default</value>
<value type="bool" key="PE.Profile.SDK">false</value>
<valuelist type="QVariantList" key="PE.Profile.StickyInfo"/>
</valuemap>
</data>
<data>
<variable>Profile.3</variable>
<valuemap type="QVariantMap"> <valuemap type="QVariantMap">
<value type="bool" key="PE.Profile.AutoDetected">false</value> <value type="bool" key="PE.Profile.AutoDetected">false</value>
<value type="QString" key="PE.Profile.AutoDetectionSource"></value> <value type="QString" key="PE.Profile.AutoDetectionSource"></value>
@@ -96,7 +73,7 @@
</valuemap> </valuemap>
</data> </data>
<data> <data>
<variable>Profile.4</variable> <variable>Profile.3</variable>
<valuemap type="QVariantMap"> <valuemap type="QVariantMap">
<value type="bool" key="PE.Profile.AutoDetected">false</value> <value type="bool" key="PE.Profile.AutoDetected">false</value>
<value type="QString" key="PE.Profile.AutoDetectionSource"></value> <value type="QString" key="PE.Profile.AutoDetectionSource"></value>
@@ -119,13 +96,41 @@
<valuelist type="QVariantList" key="PE.Profile.StickyInfo"/> <valuelist type="QVariantList" key="PE.Profile.StickyInfo"/>
</valuemap> </valuemap>
</data> </data>
<data>
<variable>Profile.4</variable>
<valuemap type="QVariantMap">
<value type="bool" key="PE.Profile.AutoDetected">false</value>
<value type="QString" key="PE.Profile.AutoDetectionSource"></value>
<valuemap type="QVariantMap" key="PE.Profile.Data">
<value type="QString"></value>
<value type="QString" key="Android.GdbServer.Information"></value>
<value type="QString" key="Debugger.Information">{70e26273-2c0b-4534-bbc0-eb6ca670821a}</value>
<value type="QString" key="PE.Profile.Device">Desktop Device</value>
<value type="QByteArray" key="PE.Profile.DeviceType">Desktop</value>
<valuelist type="QVariantList" key="PE.Profile.Environment"/>
<value type="QString" key="PE.Profile.SysRoot"></value>
<valuemap type="QVariantMap" key="PE.Profile.ToolChainsV3">
<value type="QByteArray" key="C">{7bfd4fd4-e64a-417f-b10f-20602e1719d1}</value>
<value type="QByteArray" key="Cxx">{c3f59b87-6997-4bd8-8067-ee04dc536371}</value>
</valuemap>
<value type="QString" key="QtPM4.mkSpecInformation"></value>
<value type="int" key="QtSupport.QtInformation">17</value>
</valuemap>
<value type="QString" key="PE.Profile.Icon"></value>
<value type="QString" key="PE.Profile.Id">{0d32ea2d-f954-4011-8f7c-80da4977c94c}</value>
<valuelist type="QVariantList" key="PE.Profile.MutableInfo"/>
<value type="QString" key="PE.Profile.Name">Desktop 5.10.1 default</value>
<value type="bool" key="PE.Profile.SDK">false</value>
<valuelist type="QVariantList" key="PE.Profile.StickyInfo"/>
</valuemap>
</data>
<data> <data>
<variable>Profile.Count</variable> <variable>Profile.Count</variable>
<value type="int">5</value> <value type="int">5</value>
</data> </data>
<data> <data>
<variable>Profile.Default</variable> <variable>Profile.Default</variable>
<value type="QString">{e91398ba-6443-4b02-b416-782a70d9df90}</value> <value type="QString">{542217c7-ce0f-48f7-843b-d4fad339688d}</value>
</data> </data>
<data> <data>
<variable>Version</variable> <variable>Version</variable>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorQtVersions> <!DOCTYPE QtCreatorQtVersions>
<!-- Written by QtCreator 4.0.83, 2016-07-21T11:54:33. --> <!-- Written by QtCreator 4.5.1, 2018-01-10T17:13:44. -->
<qtcreator> <qtcreator>
<data> <data>
<variable>QtVersion.0</variable> <variable>QtVersion.0</variable>
@@ -14,16 +14,6 @@
</data> </data>
<data> <data>
<variable>QtVersion.1</variable> <variable>QtVersion.1</variable>
<valuemap type="QVariantMap">
<value type="int" key="Id">11</value>
<value type="QString" key="Name">Qt 5.3.1 (SQUISH_DEFAULT_COMPILER)</value>
<value type="QString" key="QMakePath">~/Qt5.3.1/5.3/SQUISH_DEFAULT_COMPILER/bin/qmake</value>
<value type="QString" key="QtVersion.Type">Qt4ProjectManager.QtVersion.Desktop</value>
<value type="bool" key="isAutodetected">false</value>
</valuemap>
</data>
<data>
<variable>QtVersion.2</variable>
<valuemap type="QVariantMap"> <valuemap type="QVariantMap">
<value type="int" key="Id">13</value> <value type="int" key="Id">13</value>
<value type="QString" key="Name">Qt %{Qt:Version} (SQUISH_DEFAULT_COMPILER)</value> <value type="QString" key="Name">Qt %{Qt:Version} (SQUISH_DEFAULT_COMPILER)</value>
@@ -33,7 +23,7 @@
</valuemap> </valuemap>
</data> </data>
<data> <data>
<variable>QtVersion.3</variable> <variable>QtVersion.2</variable>
<valuemap type="QVariantMap"> <valuemap type="QVariantMap">
<value type="int" key="Id">15</value> <value type="int" key="Id">15</value>
<value type="QString" key="Name">Qt %{Qt:Version} (SQUISH_DEFAULT_COMPILER)</value> <value type="QString" key="Name">Qt %{Qt:Version} (SQUISH_DEFAULT_COMPILER)</value>
@@ -42,6 +32,16 @@
<value type="bool" key="isAutodetected">false</value> <value type="bool" key="isAutodetected">false</value>
</valuemap> </valuemap>
</data> </data>
<data>
<variable>QtVersion.3</variable>
<valuemap type="QVariantMap">
<value type="int" key="Id">17</value>
<value type="QString" key="Name">Qt %{Qt:Version} (SQUISH_DEFAULT_COMPILER)</value>
<value type="QString" key="QMakePath">~/Qt5.10.1/5.10.1/SQUISH_DEFAULT_COMPILER/bin/qmake</value>
<value type="QString" key="QtVersion.Type">Qt4ProjectManager.QtVersion.Desktop</value>
<value type="bool" key="isAutodetected">false</value>
</valuemap>
</data>
<data> <data>
<variable>Version</variable> <variable>Version</variable>
<value type="int">1</value> <value type="int">1</value>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProfiles> <!DOCTYPE QtCreatorProfiles>
<!-- Written by QtCreator 4.2.2, 2017-02-10T17:44:37. --> <!-- Written by QtCreator 4.5.1, 2018-01-10T14:28:58. -->
<qtcreator> <qtcreator>
<data> <data>
<variable>Profile.0</variable> <variable>Profile.0</variable>
@@ -32,34 +32,6 @@
</data> </data>
<data> <data>
<variable>Profile.1</variable> <variable>Profile.1</variable>
<valuemap type="QVariantMap">
<value type="bool" key="PE.Profile.AutoDetected">false</value>
<value type="QString" key="PE.Profile.AutoDetectionSource"></value>
<valuemap type="QVariantMap" key="PE.Profile.Data">
<value type="QString" key="Android.GdbServer.Information"></value>
<value type="QString" key="Debugger.Information">{1b25f20a-d584-4fb7-85b3-74dd15b82f6f}</value>
<value type="QString" key="PE.Profile.Device">Desktop Device</value>
<value type="QByteArray" key="PE.Profile.DeviceType">Desktop</value>
<valuelist type="QVariantList" key="PE.Profile.Environment"/>
<value type="QString" key="PE.Profile.SysRoot"></value>
<value type="QString" key="PE.Profile.ToolChain">ProjectExplorer.ToolChain.Msvc:{1186dad9-c485-4f69-b7e1-aff54c89ecb2}</value>
<valuemap type="QVariantMap" key="PE.Profile.ToolChains">
<value type="QByteArray" key="C">{93e707bd-236f-4d8d-917d-814aa358024b}</value>
<value type="QString" key="Cxx">ProjectExplorer.ToolChain.Msvc:{1186dad9-c485-4f69-b7e1-aff54c89ecb2}</value>
</valuemap>
<value type="QString" key="QtPM4.mkSpecInformation"></value>
<value type="int" key="QtSupport.QtInformation">20</value>
</valuemap>
<value type="QString" key="PE.Profile.Icon">:///DESKTOP///</value>
<value type="QString" key="PE.Profile.Id">{6a95566e-8372-4372-8286-ef73af7de191}</value>
<valuelist type="QVariantList" key="PE.Profile.MutableInfo"/>
<value type="QString" key="PE.Profile.Name">Desktop 5.3.1 default</value>
<value type="bool" key="PE.Profile.SDK">false</value>
<valuelist type="QVariantList" key="PE.Profile.StickyInfo"/>
</valuemap>
</data>
<data>
<variable>Profile.2</variable>
<valuemap type="QVariantMap"> <valuemap type="QVariantMap">
<value type="bool" key="PE.Profile.AutoDetected">false</value> <value type="bool" key="PE.Profile.AutoDetected">false</value>
<value type="QString" key="PE.Profile.AutoDetectionSource"></value> <value type="QString" key="PE.Profile.AutoDetectionSource"></value>
@@ -87,7 +59,7 @@
</valuemap> </valuemap>
</data> </data>
<data> <data>
<variable>Profile.3</variable> <variable>Profile.2</variable>
<valuemap type="QVariantMap"> <valuemap type="QVariantMap">
<value type="bool" key="PE.Profile.AutoDetected">false</value> <value type="bool" key="PE.Profile.AutoDetected">false</value>
<value type="QString" key="PE.Profile.AutoDetectionSource"></value> <value type="QString" key="PE.Profile.AutoDetectionSource"></value>
@@ -114,13 +86,41 @@
<valuelist type="QVariantList" key="PE.Profile.StickyInfo"/> <valuelist type="QVariantList" key="PE.Profile.StickyInfo"/>
</valuemap> </valuemap>
</data> </data>
<data>
<variable>Profile.3</variable>
<valuemap type="QVariantMap">
<value type="bool" key="PE.Profile.AutoDetected">false</value>
<value type="QString" key="PE.Profile.AutoDetectionSource"></value>
<valuemap type="QVariantMap" key="PE.Profile.Data">
<value type="QString"></value>
<value type="QString" key="Android.GdbServer.Information"></value>
<value type="QString" key="Debugger.Information">{1b25f20a-d584-4fb7-85b3-74dd15b82f6f}</value>
<value type="QString" key="PE.Profile.Device">Desktop Device</value>
<value type="QByteArray" key="PE.Profile.DeviceType">Desktop</value>
<valuelist type="QVariantList" key="PE.Profile.Environment"/>
<value type="QString" key="PE.Profile.SysRoot"></value>
<valuemap type="QVariantMap" key="PE.Profile.ToolChainsV3">
<value type="QByteArray" key="C">{c96cfaf3-fb8a-472b-b3c7-e94e8c490f17}</value>
<value type="QByteArray" key="Cxx">{ed856706-2a9d-4745-9d85-4e322b6f91d4}</value>
</valuemap>
<value type="QString" key="QtPM4.mkSpecInformation"></value>
<value type="int" key="QtSupport.QtInformation">26</value>
</valuemap>
<value type="QString" key="PE.Profile.Icon"></value>
<value type="QString" key="PE.Profile.Id">{37fad24d-07f3-442e-8c65-d9ded3633f7e}</value>
<valuelist type="QVariantList" key="PE.Profile.MutableInfo"/>
<value type="QString" key="PE.Profile.Name">Desktop 5.10.1 default</value>
<value type="bool" key="PE.Profile.SDK">false</value>
<valuelist type="QVariantList" key="PE.Profile.StickyInfo"/>
</valuemap>
</data>
<data> <data>
<variable>Profile.Count</variable> <variable>Profile.Count</variable>
<value type="int">4</value> <value type="int">4</value>
</data> </data>
<data> <data>
<variable>Profile.Default</variable> <variable>Profile.Default</variable>
<value type="QString">{6a95566e-8372-4372-8286-ef73af7de191}</value> <value type="QString">{f9c7858c-d167-4b78-847a-91943bd0af07}</value>
</data> </data>
<data> <data>
<variable>Version</variable> <variable>Version</variable>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorQtVersions> <!DOCTYPE QtCreatorQtVersions>
<!-- Written by QtCreator 4.0.83, 2016-07-20T17:07:18. --> <!-- Written by QtCreator 4.5.1, 2018-01-10T14:24:21. -->
<qtcreator> <qtcreator>
<data> <data>
<variable>QtVersion.0</variable> <variable>QtVersion.0</variable>
@@ -14,16 +14,6 @@
</data> </data>
<data> <data>
<variable>QtVersion.1</variable> <variable>QtVersion.1</variable>
<valuemap type="QVariantMap">
<value type="int" key="Id">20</value>
<value type="QString" key="Name">Qt 5.3.1 (msvc2010_opengl)</value>
<value type="QString" key="QMakePath">C:/Qt/Qt5.3.1/5.3/msvc2010_opengl/bin/qmake.exe</value>
<value type="QString" key="QtVersion.Type">Qt4ProjectManager.QtVersion.Desktop</value>
<value type="bool" key="isAutodetected">false</value>
</valuemap>
</data>
<data>
<variable>QtVersion.2</variable>
<valuemap type="QVariantMap"> <valuemap type="QVariantMap">
<value type="int" key="Id">22</value> <value type="int" key="Id">22</value>
<value type="QString" key="Name">Qt %{Qt:Version} (mingw491_32)</value> <value type="QString" key="Name">Qt %{Qt:Version} (mingw491_32)</value>
@@ -33,7 +23,7 @@
</valuemap> </valuemap>
</data> </data>
<data> <data>
<variable>QtVersion.3</variable> <variable>QtVersion.2</variable>
<valuemap type="QVariantMap"> <valuemap type="QVariantMap">
<value type="int" key="Id">24</value> <value type="int" key="Id">24</value>
<value type="QString" key="Name">Qt %{Qt:Version} (msvc2013)</value> <value type="QString" key="Name">Qt %{Qt:Version} (msvc2013)</value>
@@ -42,6 +32,16 @@
<value type="bool" key="isAutodetected">false</value> <value type="bool" key="isAutodetected">false</value>
</valuemap> </valuemap>
</data> </data>
<data>
<variable>QtVersion.3</variable>
<valuemap type="QVariantMap">
<value type="int" key="Id">26</value>
<value type="QString" key="Name">Qt %{Qt:Version} (msvc2015)</value>
<value type="QString" key="QMakePath">C:/Qt/Qt5.10.1/5.10.1/msvc2015/bin/qmake.exe</value>
<value type="QString" key="QtVersion.Type">Qt4ProjectManager.QtVersion.Desktop</value>
<value type="bool" key="isAutodetected">false</value>
</valuemap>
</data>
<data> <data>
<variable>Version</variable> <variable>Version</variable>
<value type="int">1</value> <value type="int">1</value>

View File

@@ -4,17 +4,6 @@
<qtcreator> <qtcreator>
<data> <data>
<variable>ToolChain.0</variable> <variable>ToolChain.0</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.MsvcToolChain.SupportedAbi">x86-windows-msvc2010-pe-32bit</value>
<value type="QString" key="ProjectExplorer.MsvcToolChain.VarsBat">c:/Program Files (x86)/Microsoft Visual Studio 10.0/VC/vcvarsall.bat</value>
<value type="QString" key="ProjectExplorer.MsvcToolChain.VarsBatArg">x86</value>
<value type="bool" key="ProjectExplorer.ToolChain.Autodetect">true</value>
<value type="QString" key="ProjectExplorer.ToolChain.DisplayName">Microsoft Visual C++ Compiler 10.0 (x86)</value>
<value type="QString" key="ProjectExplorer.ToolChain.Id">ProjectExplorer.ToolChain.Msvc:{1186dad9-c485-4f69-b7e1-aff54c89ecb2}</value>
</valuemap>
</data>
<data>
<variable>ToolChain.1</variable>
<valuemap type="QVariantMap"> <valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.GccToolChain.Path">C:/Qt/Qt5.4.1/Tools/mingw491_32/bin/g++.exe</value> <value type="QString" key="ProjectExplorer.GccToolChain.Path">C:/Qt/Qt5.4.1/Tools/mingw491_32/bin/g++.exe</value>
<valuelist type="QVariantList" key="ProjectExplorer.GccToolChain.PlatformCodeGenFlags"/> <valuelist type="QVariantList" key="ProjectExplorer.GccToolChain.PlatformCodeGenFlags"/>
@@ -29,19 +18,7 @@
</valuemap> </valuemap>
</data> </data>
<data> <data>
<variable>ToolChain.2</variable> <variable>ToolChain.1</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.MsvcToolChain.SupportedAbi">x86-windows-msvc2010-pe-32bit</value>
<value type="QString" key="ProjectExplorer.MsvcToolChain.VarsBat">C:/Program Files (x86)/Microsoft Visual Studio 10.0/VC/vcvarsall.bat</value>
<value type="QString" key="ProjectExplorer.MsvcToolChain.VarsBatArg">x86</value>
<value type="bool" key="ProjectExplorer.ToolChain.Autodetect">true</value>
<value type="QString" key="ProjectExplorer.ToolChain.DisplayName">Microsoft Visual C++ Compiler 10.0 (x86)</value>
<value type="QString" key="ProjectExplorer.ToolChain.Id">ProjectExplorer.ToolChain.Msvc:{93e707bd-236f-4d8d-917d-814aa358024b}</value>
<value type="int" key="ProjectExplorer.ToolChain.Language">1</value>
</valuemap>
</data>
<data>
<variable>ToolChain.3</variable>
<valuemap type="QVariantMap"> <valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.MsvcToolChain.SupportedAbi">x86-windows-msvc2013-pe-32bit</value> <value type="QString" key="ProjectExplorer.MsvcToolChain.SupportedAbi">x86-windows-msvc2013-pe-32bit</value>
<value type="QString" key="ProjectExplorer.MsvcToolChain.VarsBat">C:/Program Files (x86)/Microsoft Visual Studio 12.0/VC/vcvarsall.bat</value> <value type="QString" key="ProjectExplorer.MsvcToolChain.VarsBat">C:/Program Files (x86)/Microsoft Visual Studio 12.0/VC/vcvarsall.bat</value>
@@ -53,7 +30,7 @@
</valuemap> </valuemap>
</data> </data>
<data> <data>
<variable>ToolChain.4</variable> <variable>ToolChain.2</variable>
<valuemap type="QVariantMap"> <valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.GccToolChain.OriginalTargetTriple">i686-w64-mingw32</value> <value type="QString" key="ProjectExplorer.GccToolChain.OriginalTargetTriple">i686-w64-mingw32</value>
<value type="QString" key="ProjectExplorer.GccToolChain.Path">C:/Qt/Qt5.4.1/Tools/mingw491_32/bin/gcc.exe</value> <value type="QString" key="ProjectExplorer.GccToolChain.Path">C:/Qt/Qt5.4.1/Tools/mingw491_32/bin/gcc.exe</value>
@@ -69,6 +46,32 @@
<value type="int" key="ProjectExplorer.ToolChain.Language">1</value> <value type="int" key="ProjectExplorer.ToolChain.Language">1</value>
</valuemap> </valuemap>
</data> </data>
<data>
<variable>ToolChain.3</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.MsvcToolChain.SupportedAbi">x86-windows-msvc2015-pe-32bit</value>
<value type="QString" key="ProjectExplorer.MsvcToolChain.VarsBat">C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/vcvarsall.bat</value>
<value type="QString" key="ProjectExplorer.MsvcToolChain.VarsBatArg">x86</value>
<value type="bool" key="ProjectExplorer.ToolChain.Autodetect">true</value>
<value type="QString" key="ProjectExplorer.ToolChain.DisplayName">Microsoft Visual C++ Compiler 14.0 (x86)</value>
<value type="QString" key="ProjectExplorer.ToolChain.Id">ProjectExplorer.ToolChain.Msvc:{c96cfaf3-fb8a-472b-b3c7-e94e8c490f17}</value>
<value type="int" key="ProjectExplorer.ToolChain.Language">1</value>
<value type="QString" key="ProjectExplorer.ToolChain.LanguageV2">C</value>
</valuemap>
</data>
<data>
<variable>ToolChain.4</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.MsvcToolChain.SupportedAbi">x86-windows-msvc2015-pe-32bit</value>
<value type="QString" key="ProjectExplorer.MsvcToolChain.VarsBat">C:/Program Files (x86)/Microsoft Visual Studio 14.0/VC/vcvarsall.bat</value>
<value type="QString" key="ProjectExplorer.MsvcToolChain.VarsBatArg">x86</value>
<value type="bool" key="ProjectExplorer.ToolChain.Autodetect">true</value>
<value type="QString" key="ProjectExplorer.ToolChain.DisplayName">Microsoft Visual C++ Compiler 14.0 (x86)</value>
<value type="QString" key="ProjectExplorer.ToolChain.Id">ProjectExplorer.ToolChain.Msvc:{ed856706-2a9d-4745-9d85-4e322b6f91d4}</value>
<value type="int" key="ProjectExplorer.ToolChain.Language">2</value>
<value type="QString" key="ProjectExplorer.ToolChain.LanguageV2">Cxx</value>
</valuemap>
</data>
<data> <data>
<variable>ToolChain.5</variable> <variable>ToolChain.5</variable>
<valuemap type="QVariantMap"> <valuemap type="QVariantMap">

View File

@@ -32,9 +32,9 @@ class Targets:
(DESKTOP_4_8_7_DEFAULT, (DESKTOP_4_8_7_DEFAULT,
EMBEDDED_LINUX, EMBEDDED_LINUX,
DESKTOP_5_3_1_DEFAULT,
DESKTOP_5_4_1_GCC, DESKTOP_5_4_1_GCC,
DESKTOP_5_6_1_DEFAULT) = ALL_TARGETS DESKTOP_5_6_1_DEFAULT,
DESKTOP_5_10_1_DEFAULT) = ALL_TARGETS
@staticmethod @staticmethod
def availableTargetClasses(): def availableTargetClasses():
@@ -62,12 +62,12 @@ class Targets:
return "Desktop 4.8.7 default" return "Desktop 4.8.7 default"
elif target == Targets.EMBEDDED_LINUX: elif target == Targets.EMBEDDED_LINUX:
return "Embedded Linux" return "Embedded Linux"
elif target == Targets.DESKTOP_5_3_1_DEFAULT:
return "Desktop 5.3.1 default"
elif target == Targets.DESKTOP_5_4_1_GCC: elif target == Targets.DESKTOP_5_4_1_GCC:
return "Desktop 5.4.1 GCC" return "Desktop 5.4.1 GCC"
elif target == Targets.DESKTOP_5_6_1_DEFAULT: elif target == Targets.DESKTOP_5_6_1_DEFAULT:
return "Desktop 5.6.1 default" return "Desktop 5.6.1 default"
elif target == Targets.DESKTOP_5_10_1_DEFAULT:
return "Desktop 5.10.1 default"
else: else:
return None return None
@@ -83,7 +83,7 @@ class Targets:
@staticmethod @staticmethod
def getDefaultKit(): def getDefaultKit():
return Targets.DESKTOP_5_3_1_DEFAULT return Targets.DESKTOP_5_6_1_DEFAULT
# this class holds some constants for easier usage inside the Projects view # this class holds some constants for easier usage inside the Projects view
class ProjectSettings: class ProjectSettings:
@@ -169,7 +169,7 @@ class Qt5Path:
@staticmethod @staticmethod
def getPaths(pathSpec): def getPaths(pathSpec):
qt5targets = [Targets.DESKTOP_5_3_1_DEFAULT, Targets.DESKTOP_5_6_1_DEFAULT] qt5targets = [Targets.DESKTOP_5_6_1_DEFAULT, Targets.DESKTOP_5_10_1_DEFAULT]
if platform.system() != 'Darwin': if platform.system() != 'Darwin':
qt5targets.append(Targets.DESKTOP_5_4_1_GCC) qt5targets.append(Targets.DESKTOP_5_4_1_GCC)
if pathSpec == Qt5Path.DOCS: if pathSpec == Qt5Path.DOCS:
@@ -223,20 +223,20 @@ class Qt5Path:
@staticmethod @staticmethod
def examplesPath(target): def examplesPath(target):
qtMinorVersion, qtPatchVersion = Qt5Path.getQtMinorAndPatchVersion(target) qtMinorVersion, qtPatchVersion = Qt5Path.getQtMinorAndPatchVersion(target)
if qtMinorVersion == 2: if qtMinorVersion < 10:
path = "examples"
else:
path = "Examples/Qt-5.%d" % qtMinorVersion path = "Examples/Qt-5.%d" % qtMinorVersion
else:
path = "Examples/Qt-5.%d.%d" % (qtMinorVersion, qtPatchVersion)
return os.path.join(Qt5Path.__createPlatformQtPath__(qtMinorVersion), path) return os.path.join(Qt5Path.__createPlatformQtPath__(qtMinorVersion), path)
@staticmethod @staticmethod
def docsPath(target): def docsPath(target):
qtMinorVersion, qtPatchVersion = Qt5Path.getQtMinorAndPatchVersion(target) qtMinorVersion, qtPatchVersion = Qt5Path.getQtMinorAndPatchVersion(target)
if qtMinorVersion == 2: if qtMinorVersion < 10:
path = "doc"
else:
path = "Docs/Qt-5.%d" % qtMinorVersion path = "Docs/Qt-5.%d" % qtMinorVersion
else:
path = "Docs/Qt-5.%d.%d" % (qtMinorVersion, qtPatchVersion)
return os.path.join(Qt5Path.__createPlatformQtPath__(qtMinorVersion), path) return os.path.join(Qt5Path.__createPlatformQtPath__(qtMinorVersion), path)

View File

@@ -315,7 +315,7 @@ def createNewQtQuickUI(workingDir, qtVersion = "5.6"):
return projectName return projectName
def createNewQmlExtension(workingDir, targets=[Targets.DESKTOP_5_3_1_DEFAULT]): def createNewQmlExtension(workingDir, targets=[Targets.DESKTOP_5_6_1_DEFAULT]):
available = __createProjectOrFileSelectType__(" Library", "Qt Quick 2 Extension Plugin") available = __createProjectOrFileSelectType__(" Library", "Qt Quick 2 Extension Plugin")
if workingDir == None: if workingDir == None:
workingDir = tempDir() workingDir = tempDir()
@@ -639,10 +639,11 @@ def __getSupportedPlatforms__(text, templateName, getAsStrings=False):
version = res.group("version") version = res.group("version")
else: else:
version = None version = None
if 'only available with Qt 5.6' in text: if templateName.startswith("Qt Quick Application - "):
result = [Targets.DESKTOP_5_6_1_DEFAULT] if templateName == "Qt Quick Application - Empty":
elif 'available with Qt 5.7 and later' in text: result = [Targets.DESKTOP_5_6_1_DEFAULT, Targets.DESKTOP_5_10_1_DEFAULT]
result = [] # FIXME we have currently no Qt5.7+ available in predefined settings else:
result = [Targets.DESKTOP_5_10_1_DEFAULT]
elif 'Supported Platforms' in text: elif 'Supported Platforms' in text:
supports = text[text.find('Supported Platforms'):].split(":")[1].strip().split(" ") supports = text[text.find('Supported Platforms'):].split(":")[1].strip().split(" ")
result = [] result = []
@@ -651,7 +652,7 @@ def __getSupportedPlatforms__(text, templateName, getAsStrings=False):
result.append(Targets.DESKTOP_4_8_7_DEFAULT) result.append(Targets.DESKTOP_4_8_7_DEFAULT)
if platform.system() in ("Linux", "Darwin"): if platform.system() in ("Linux", "Darwin"):
result.append(Targets.EMBEDDED_LINUX) result.append(Targets.EMBEDDED_LINUX)
result.extend([Targets.DESKTOP_5_3_1_DEFAULT, Targets.DESKTOP_5_6_1_DEFAULT]) result.extend([Targets.DESKTOP_5_6_1_DEFAULT, Targets.DESKTOP_5_10_1_DEFAULT])
if platform.system() != 'Darwin': if platform.system() != 'Darwin':
result.append(Targets.DESKTOP_5_4_1_GCC) result.append(Targets.DESKTOP_5_4_1_GCC)
elif 'Platform independent' in text: elif 'Platform independent' in text:

View File

@@ -165,7 +165,7 @@ def main():
with TestSection(getCodeModelString(useClang)): with TestSection(getCodeModelString(useClang)):
if not startCreator(useClang): if not startCreator(useClang):
continue continue
openQmakeProject(examplePath, [Targets.DESKTOP_5_3_1_DEFAULT]) openQmakeProject(examplePath, [Targets.DESKTOP_5_6_1_DEFAULT])
checkCodeModelSettings(useClang) checkCodeModelSettings(useClang)
if not openDocument("cplusplus-tools.Sources.main\\.cpp"): if not openDocument("cplusplus-tools.Sources.main\\.cpp"):
earlyExit("Failed to open main.cpp.") earlyExit("Failed to open main.cpp.")

View File

@@ -80,7 +80,7 @@ def main():
if not startedWithoutPluginError(): if not startedWithoutPluginError():
return return
# open example project # open example project
openQmakeProject(examplePath, [Targets.DESKTOP_5_3_1_DEFAULT]) openQmakeProject(examplePath, [Targets.DESKTOP_5_6_1_DEFAULT])
# open qml file # open qml file
openDocument("animation.Resources.animation\\.qrc./animation.basics.color-animation\\.qml") openDocument("animation.Resources.animation\\.qrc./animation.basics.color-animation\\.qml")
# get editor # get editor

View File

@@ -123,7 +123,7 @@ def main():
for p in proFiles: for p in proFiles:
removePackagingDirectory(os.path.dirname(p)) removePackagingDirectory(os.path.dirname(p))
examplesLineEdit = waitForObject(search %(expect[1][0], expect[1][1])) examplesLineEdit = waitForObject(search %(expect[1][0], expect[1][1]))
example = openExample(examplesLineEdit, "address book", "Address Book.*", example = openExample(examplesLineEdit, "address book", "(0000 )?Address Book.*",
"Address Book Example") "Address Book Example")
if example is not None: if example is not None:
# close second example application # close second example application

View File

@@ -108,7 +108,7 @@ def performTest(workingDir, projectName, targetCount, availableConfigs):
colMean, colMedian, colLongest, colShortest) = range(2, 11) colMean, colMedian, colLongest, colShortest) = range(2, 11)
model = waitForObject(":Events.QmlProfilerEventsTable_QmlProfiler::" model = waitForObject(":Events.QmlProfilerEventsTable_QmlProfiler::"
"Internal::QmlProfilerStatisticsMainView").model() "Internal::QmlProfilerStatisticsMainView").model()
compareEventsTab(model, "events_qt5.tsv") compareEventsTab(model, "events_qt%s.tsv" % qtVersion)
test.compare(dumpItems(model, column=colPercent)[0], '100.00 %') test.compare(dumpItems(model, column=colPercent)[0], '100.00 %')
# cannot run following test on colShortest (unstable) # cannot run following test on colShortest (unstable)
for i in [colTotal, colMean, colMedian, colLongest]: for i in [colTotal, colMean, colMedian, colLongest]:

View File

@@ -0,0 +1,10 @@
"0" "1" "6" "11"
"<program>" "" "1" "Main Program"
"main.qml:15" "Handling Signal" "2" "onTriggered: { runCount += 1; var i; for (i = 1; i < 2500; ++i) { var j = i * i; console.log(j); } }"
"main.qml:15" "JavaScript" "2" "onTriggered"
"main.qml:4" "Creating" "2" "QtQuick.Window/Window"
"main.qml:0" "Compiling" "1" "main.qml"
"main.qml:10" "Creating" "2" "QtQuick/Timer"
"main.qml:14" "Binding" "3" "running: runCount < 2"
"main.qml:14" "JavaScript" "3" "expression for running"
"<bytecode>" "Binding" "1" "Source code not available"
1 0 1 6 11
2 <program> 1 Main Program
3 main.qml:15 Handling Signal 2 onTriggered: { runCount += 1; var i; for (i = 1; i < 2500; ++i) { var j = i * i; console.log(j); } }
4 main.qml:15 JavaScript 2 onTriggered
5 main.qml:4 Creating 2 QtQuick.Window/Window
6 main.qml:0 Compiling 1 main.qml
7 main.qml:10 Creating 2 QtQuick/Timer
8 main.qml:14 Binding 3 running: runCount < 2
9 main.qml:14 JavaScript 3 expression for running
10 <bytecode> Binding 1 Source code not available

View File

@@ -27,7 +27,6 @@ source("../../shared/qtcreator.py")
def main(): def main():
global tmpSettingsDir, availableBuildSystems global tmpSettingsDir, availableBuildSystems
qtVersionsForQuick = ["5.6"]
availableBuildSystems = ["qmake", "Qbs"] availableBuildSystems = ["qmake", "Qbs"]
if which("cmake"): if which("cmake"):
availableBuildSystems.append("CMake") availableBuildSystems.append("CMake")
@@ -72,6 +71,7 @@ def main():
template = current.values()[0] template = current.values()[0]
displayedPlatforms = __createProject__(category, template) displayedPlatforms = __createProject__(category, template)
if template.startswith("Qt Quick Application - "): if template.startswith("Qt Quick Application - "):
qtVersionsForQuick = ["5.6", "5.10"] if template == "Qt Quick Application - Empty" else ["5.10"]
for counter, qtVersion in enumerate(qtVersionsForQuick): for counter, qtVersion in enumerate(qtVersionsForQuick):
def additionalFunc(displayedPlatforms, qtVersion): def additionalFunc(displayedPlatforms, qtVersion):
requiredQtVersion = __createProjectHandleQtQuickSelection__(qtVersion) requiredQtVersion = __createProjectHandleQtQuickSelection__(qtVersion)
@@ -128,9 +128,7 @@ def handleBuildSystemVerifyKits(category, template, kits, displayedPlatforms,
test.log("Using build system '%s'" % buildSystem) test.log("Using build system '%s'" % buildSystem)
selectFromCombo(combo, buildSystem) selectFromCombo(combo, buildSystem)
clickButton(waitForObject(":Next_QPushButton")) clickButton(waitForObject(":Next_QPushButton"))
if (template.startswith("Qt Quick Application - ") if template == "Qt Quick Application - Scroll":
and template != "Qt Quick Application - Empty"):
test.warning("No suitable Qt version available for '%s'" % template)
clickButton(waitForObject(":Next_QPushButton")) clickButton(waitForObject(":Next_QPushButton"))
elif specialHandlingFunc: elif specialHandlingFunc:
specialHandlingFunc(displayedPlatforms, *args) specialHandlingFunc(displayedPlatforms, *args)

View File

@@ -64,7 +64,7 @@ def main():
openGeneralMessages() openGeneralMessages()
# Verify messages appear once, from using default kit before configuring # Verify messages appear once, from using default kit before configuring
generalMessages = str(waitForObject(":Qt Creator_Core::OutputWindow").plainText) generalMessages = str(waitForObject(":Qt Creator_Core::OutputWindow").plainText)
test.compare(generalMessages.count("Project MESSAGE: Cannot build Qt Creator with Qt version 5.3.1."), 1, test.compare(generalMessages.count("Project MESSAGE: Cannot build Qt Creator with Qt version 5.6.1."), 2,
"Warning about outdated Qt shown?") "Warning about outdated Qt shown?")
test.compare(generalMessages.count("Project ERROR: Use at least Qt 5.6.2."), 2, test.compare(generalMessages.count("Project ERROR: Use at least Qt 5.6.2."), 2,
"Minimum Qt version shown (once when parsing with default kit, once with selected)?") "Minimum Qt version shown (once when parsing with default kit, once with selected)?")

View File

@@ -53,6 +53,8 @@ def main():
["Resources", "adding.qrc"], ["Resources", "adding.qrc"],
["QML", "example.qml"]]: ["QML", "example.qml"]]:
filenames = ["ABCD" + filename.upper(), "abcd" + filename.lower(), "test", "TEST", filename] filenames = ["ABCD" + filename.upper(), "abcd" + filename.lower(), "test", "TEST", filename]
if (filename.endswith(".qrc") and JIRA.isBugStillOpen(20101)):
filenames.remove("ABCD" + filename.upper())
previous = filenames[-1] previous = filenames[-1]
for filename in filenames: for filename in filenames:
tempFiletype = filetype tempFiletype = filetype

View File

@@ -39,7 +39,7 @@ def main():
"Verifying window title contains created session name.") "Verifying window title contains created session name.")
checkWelcomePage(sessionName, True) checkWelcomePage(sessionName, True)
for project in projects: for project in projects:
openQmakeProject(project, [Targets.DESKTOP_5_3_1_DEFAULT]) openQmakeProject(project, [Targets.DESKTOP_5_6_1_DEFAULT])
progressBarWait(20000) progressBarWait(20000)
checkNavigator(52, "Verifying whether all projects have been opened.") checkNavigator(52, "Verifying whether all projects have been opened.")
openDocument("animation.Resources.animation\\.qrc./animation.basics.animators\\.qml") openDocument("animation.Resources.animation\\.qrc./animation.basics.animators\\.qml")

View File

@@ -39,7 +39,7 @@ def main():
startApplication("qtcreator" + SettingsPath) startApplication("qtcreator" + SettingsPath)
if not startedWithoutPluginError(): if not startedWithoutPluginError():
return return
openQmakeProject(os.path.join(templateDir, proFile), [Targets.DESKTOP_5_3_1_DEFAULT]) openQmakeProject(os.path.join(templateDir, proFile), [Targets.DESKTOP_5_6_1_DEFAULT])
qmlFiles = [treebase + "focus\\.qml", treebase + "Core.ListMenu\\.qml"] qmlFiles = [treebase + "focus\\.qml", treebase + "Core.ListMenu\\.qml"]
checkOutlineFor(qmlFiles) checkOutlineFor(qmlFiles)
testModify() testModify()

View File

@@ -35,14 +35,8 @@ def main():
# using a temporary directory won't mess up a potentially existing # using a temporary directory won't mess up a potentially existing
workingDir = tempDir() workingDir = tempDir()
projectName = createNewQtQuickUI(workingDir, qtVersion) projectName = createNewQtQuickUI(workingDir, qtVersion)
kit = Targets.getStringForTarget(Targets.DESKTOP_5_6_1_DEFAULT)
if addAndActivateKit(Targets.DESKTOP_5_6_1_DEFAULT):
quick = "2.6" quick = "2.6"
else: qmlViewer = modifyRunSettingsForHookIntoQtQuickUI(1, 0, workingDir, projectName, 11223, quick)
test.fatal("Failed to activate kit %s" % kit)
continue
test.log("Running project Qt Quick UI Prototype (%s)" % kit)
qmlViewer = modifyRunSettingsForHookIntoQtQuickUI(2, 1, workingDir, projectName, 11223, quick)
if qmlViewer!=None: if qmlViewer!=None:
qmlViewerPath = os.path.dirname(qmlViewer) qmlViewerPath = os.path.dirname(qmlViewer)
qmlViewer = os.path.basename(qmlViewer) qmlViewer = os.path.basename(qmlViewer)

View File

@@ -29,7 +29,7 @@ def main():
startApplication("qtcreator" + SettingsPath) startApplication("qtcreator" + SettingsPath)
if not startedWithoutPluginError(): if not startedWithoutPluginError():
return return
for target in [Targets.DESKTOP_5_6_1_DEFAULT, Targets.DESKTOP_5_3_1_DEFAULT]: for target in [Targets.DESKTOP_5_6_1_DEFAULT, Targets.DESKTOP_5_10_1_DEFAULT]:
# using a temporary directory won't mess up a potentially existing # using a temporary directory won't mess up a potentially existing
createNewQmlExtension(tempDir(), [target]) createNewQmlExtension(tempDir(), [target])
# wait for parsing to complete # wait for parsing to complete