Fix recursive error when there are unstable componentsChange-Id: Iecaf849368904a72bae1a1ca6e51b45cfafb54ef
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Add possibility to check/uncheck repositories with one button clickTask-number: QTIFW-1132
Change-Id: I4d71dedf6f099f8ccc7ecefcfa02cae78d28244b
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Add property to disable default repository savingBy default, all default repositories defined in <RemoteRepositories> are
saved to maintenancetool.ini -file. When you start maintenancetool, the
repositories are read from maintenancetool.ini and those are used. There
are cases when we don't want to use the default repositories when
running maintenancetol.
Change-Id: I4507e16636f2d709aa099eaa865264800591ce0d
Reviewed-by: Leena Miettinen <riitt...
Allow install other components if sha mismatches in metadataExpanding commit "Add attribute to mark parts of install tree unstable."
This change will allow installing other components if some component
has sha mismatch.
Change-Id: I61202da95dc07ca3f1fe931cfe1fbbb053596f42
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Fix select state for unstable componentsIn updater mode, unstable components needs to be unselected so that
those won't be updated. In packagemanager mode, installed unstable
components needs to be in checked state so that those won't be
uninstalled.
Change-Id: Ib3d16ae8c0eec4e07731a0082c02fd710ffdb9d6
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Decrease metadata dowload amountIf there are no Script, Translations, Licenses nor UserInterfaces
-tags in Updates.xml, there is no metadata. In such case, do not download
the empty metadata to decrease the time used in downloading metadata.
Task-number: QTIFW-975
Change-Id: I1b81a07b5ad43677e190fb058ece8b06382d215b
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Print component warnings only in verbose modeIf there are lot of components, it takes a lot of time to check every
component for their errors. Print those only when --verbose given in
command line.
Task-number: QTIFW-975
Change-Id: If9467416d5d8f3417cd30262f95e91308a79e7a6
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Fix ForcedInstallation components uninstall in deselectAllWe don't need to check the installed() state here as we do it already
when preselecting components in the tree
Task-number: QTIFW-1142
Change-Id: I3540a02f39ea7b379db6597c75d7fee76cc4caab
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Fix crash in updater if component does not exist anymoreTask-number: QTIFW-1140
Change-Id: I2038bb04526d6fbc3b35be67777a1096f80568cf
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Fix nested autodependency uninstallPrevious commit worked only when --show-virtual-components was uses.
Task-number: QTIFW-1114 QTBUG-67106
Change-Id: I6d0649a37095b10ec9fd3a079e020f6a70345c94
Reviewed-by: Antti Kokko <antti.kokko@qt.io>
Add missing link from the documentation for hybrid installersChange-Id: I05a3f5711cb963933470704bfec2ba8839384c0c
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Add missing content for example dependenciesAdded missing content for example --> making it possible to test it.
Changes to be committed:
new file: examples/dependencies/packages/componentA/data/installcontentA.txt
new file: examples/dependencies/packages/componentB/data/installcontentB.txt
new file: examples/dependencies/packages/componentC/data/installcontentC.txt
new file: examples/dependencies/packages/componentD/data/i...
Add attribute to mark parts of install tree unstableThis commit adds new AllowUnstableComponents configuration. Setting
AllowUnstablecomponents to true in config.xml will
* allow installing other components when there are errors in scripts
* allow installing other components when there are missing dependencies
* will mark the 'broken' components uninstallable in treeview
Task-number: QTIFW-930
Change-Id: I8d28cf9c4b0401e0bb76795e87d581f39b64f12...
Fix build error in MacOSMacOS does not understand ceil, use qCeil instead
Change-Id: I075aab60ae7e00336bdd4faf864c3922482401ac
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Fix install fail if there is huge amount of downloadable packagesIn some machines, installer does not manage to download meta files if
there are huge amount of downloadable packages. It seems that
QtConcurrent is not always able to handle so many download tasks.
Divided the downloadable tasks into size of 1000 to keep the
QtConcurrent running.
Change-Id: I3ba110e2cc565251e540349a6b073245280a6fbe
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
Fix infinite wait if downloadable package is missingInstead of waiting for a package that is missing, show error message and
abort installation
Task-number: QTIFW-1064
Change-Id: I021e7ece9e4020a85380318185cdb6a424dc26fa
Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Fix the maintenancetool that failing to elevate to adminIt fails to output logs in ~PackageManagerCore() when using '--checkupdates'.
It is installed in 'C:\Program Files (x86)'(needs admin rights).
Disable the admin query.
Because it does not need the query for checking the updates.
Change-Id: I8cbd5823287a23d52c2f1a7f1fae95979314e441
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
Fix devtool's segmentation fault when using operationchange the name of the variable to parse the arguments of operation command.
Change-Id: I251b17e6e48b0a5c12636199de57bbb761b3ac23
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
Avoid including macro.qdocconf from Qt documentationFrom Qt 5.11 onwards, macro.qdocconf requires QT_VERSION environment
variable to be defined. Just copy the two custom commands we use
in IFW.
Task-number: QTIFW-1103
Change-Id: Ib2d81e0f9e7b5518206efaf2a219ceb8109f6490
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Docs: Remove dependency to Qt's macros.qdocconfThe macros.qdocconf from Qt's global documentation config includes a
macro that uses the value of QT_VERSION, which is not defined for
IFW.
The documentation build therefore fails with
'error: Environment variable 'QT_VERSION' undefined'.
To work around this, load the macros we use from a local qdocconf
file.
Change-Id: I1dc02dffc758af8e855e42a0fceabb84434876d2
Reviewed-by: Leena Miettinen <...
move ts targets to a separate project filethat makes it possible to update the templates even if the ifw itself
cannot be built (e.g., due to using a -no-widgets qt build).
Change-Id: Ie170e6524dbed40f6c8b837e35af6b45a1c2d2dd
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
Remove unnecessary warningRemoved unnecessary warning about component specifying both
autodependency and dependency to same component. Both of them might be
necessary if we need to ensure the install order. Adding the same
component as dependency will ensure that the dependency component will
be installed first and its scripts run first.
Task-number: QTIFW-1022
Change-Id: Id400f1ecf00a4b863ee473218d61a549c6ceb9ca
Revie...
Fix Mkdir operation in uninstallIf Mkdir generates directories to target dir, then uninstall will fail to
remove those as targetDir is replaced with @RELOCATABLE_PATH@ when the
operations are written to dat file. Fixed so that @RELOCATABLE_PATH@ is
replaced with targetDir.
Task-number: QTIFW-1099
Change-Id: I52a0330a2645e2d4a5371ce0d6f1fb296878752f
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Enable building IFW with Squish supportChange enables building IFW with Squish support by passing SQUISH_PATH
to qmake when building IFW. Also enables runtime change of Squish port
with command line option --squish-port <port number>. If no port is set,
default port 11233 is used to attach to Squish.
Change-Id: I4821b360031df66968d3592886c2e45598e1b097
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Reviewed-by: Antti Kokko <antti.k...
Fix usesSystemConfiguration usageAs usesSystemConfiguration() is introduced in Qt 5.8, use it only when
compiling with Qt 5.8 or higher. IFW still supports version 5.6.2.
Change-Id: Ib39f38a452624a84627ad53c9941154bc0fd7929
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Set correct proxy typeFrom Qt 5.8 onwards system proxy might be used by default. Checked if that
is the case and updated settings accordingly.
Task-number: QTBUG-65143
Change-Id: Ibe8f3173636c57f73addcc576afdd37a68ec1d03
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Add no-proxy optionFrom Qt 5.8 onwards system proxy is used by default. Add option --no-proxy
to enable installer usage with no proxy.
Task-number: QTIFW-1085
Change-Id: If5247969aa9577cb746468c59802104d19826596
Reviewed-by: Kai Koehne <kai.koehne@qt.io>
Add line number information when throwing an Error regarding the scriptChange-Id: I5bc3ca4779ed12d927c3a6a041a81d8e39d5bd1f
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
make .ts file naming follow the usual patternthis makes it easier to integrate ifw into the surrounding
infrastructure.
Change-Id: I7918830b7a6c29d8556911eec83a3b6530478d84
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
Enable expanding items by defaultAn item can be expanded by default in component tree by setting
ExpandedByDefault to true in package.xml file.
Change-Id: Ib324327cf6ef6e2dda3271e704f3ced523c6579c
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Tim Jenssen <tim.jenssen@qt.io>
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
Fix maintenance tool file name parsing in macEarlier we used QFileInfo::baseName but that doesn't work properly if
'.' are used in file names. So start using fileName instead.
Task-number: QTBUG-61262
Change-Id: I474b9656ef6d83dfbcdbc6ba6e40f95e75853c80
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
Provide special handling of REG_EXPAND_SZ when setting environment variablesSince some registry settings with regard to the environment variables can
have the type set to REG_EXPAND_SZ then we need to ensure that this is
respected. Otherwise it will be changed to REG_SZ due to a limitation with
QSettings.
Task-number: QTIFW-794
Change-Id: Icaede82b151496367e531050082d416e19e15b56
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
Do not retry a download immediately after an errorChange-Id: I1751b5274b3f2f6c69482d98c8beb2c1ef77ae70
Reviewed-by: Katja Marttila <katja.marttila@qt.io>