Increase number of files allowed for macOSThis addressed the following error:
[29065] Critical: Error occurred while assembling the installer: Cannot
open resource <some file>: Too many open files
libc++abi.dylib: terminating with uncaught exception of type
QInstaller::Error: std::exception
Abort trap: 6
Kai from TQtC suggested the fix used in commit:
8f8800de7ab89e6cbc7b5eb08f2b3f16407e6cdf
Applying it to binarycreator fixed the iss...
Remove 'Your install seems to be corrupted' messageboxMessagebox is replaced with log. The critical messagebox is a bit harsh
as you can continue using the installer despite of the 'corrupted
install' message.
'Your install seems to be corrupted' can happen for number of reasons:
the installer for some reason was not able to write the needed information
to components.xml or maintenancetool.dat. Reason could be that the
installer was forcely interr...
Optimize ExctractArchiveOperation::fileFinished()This code was spending a lot of time detaching and
copying the file list, due to exporting it via the
setValue() call on each file finished iteration. This
was causing the install process to slow down, and
also made the UI freeze, giving the impression that the
install process had stopped.
Add the file paths to a local list instead, and then
call setValue when file extraction is complete.
Pro...
Do not reset core data values in restartDo not reset core data values as that removes all data set using
setValue() which are needed. Restart is called when pressing 'Restart' after
maintenancetool finish page or when changing settings from Settings
Dialog.
Task-number QTIFW-504
Change-Id: I0713b0371811957b93623433d26f0b10e4c8fb12
Reviewed-by: Janne Anttila <janne.anttila@qt.io>
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
Fix maintenancetool writing in WindowsIn Windows, maintenancetool is written using vb script. Installer
assumed that extension .vbs is always executed with script engine which
is not always true. In such cases create own extension (.qtInstaller)
which can be run with script engine
Task-number: QTIFW-1096
Change-Id: Ic52427e778fc7f3a540256e16b9e67b728c70d41
Reviewed-by: Karsten Heimrich <karsten.heimrich@qt.io>
Fix environment variables for XDG paths not being recognizedA QProcessEnvironment was used, which is empty by default.
Instead of using QProcessEnvironement::systemEnvironment I switched to
qgetenv(...) .
Task-number: QTIFW-1043
Change-Id: I0bc31641c8ac175254664c61cdb24bf9051d8345
Reviewed-by: Niels Weber <niels.weber@qt.io>
Delete directory if there are readonly filesTask-number:QTIFW-637
Change-Id: I38b947b10517de68aee5619915886c719cd5e2bf
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
Prepend file:// on Windows when calling QJSEngine::evaluate()Due to a bug reported at QTBUG-70425, it is necessary to ensure that
QJSEngine will see the filename passed in as a valid URL. So we
prepend file:// for those cases to ensure qsTr() will find the
right context when looking for translations.
Change-Id: Ib38b1f8467de78ec82c2c6c6909487f3a06c09bb
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
Fix install fail if there is no metadataInstaller was never able to continue from metadata download phase in
case there was no metadata in any of the packages. If metadata not
found, emit finished signal to continue installation.
Task-number: QTIFW-1150
Change-Id: I0d3f8fb147899fff4b1a1cc0c6de7a587aae9053
Reviewed-by: Antti Kokko <antti.kokko@qt.io>
Reset meta information download resultAs metadata can be downloaded in chunks, there are extra step counter in
UI in case there are more than 1 chunk to be fetched. Reset the counter
and result in case e.g. repositories are changed from settings and meta
information is retrieved again.
Task-number: QTIFW-1137
Change-Id: I1bfe06dc0ba375508efb0b6ebe5edce884310ea8
Reviewed-by: Samuli Piippo <samuli.piippo@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...
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>
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>
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>