| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added possibility to overwrite undo in copy, move, delete, mkdir, rmdir,
appendfile and prependfile operations. Undo is performed when component
is uninstalled or updated, by adding UNDOOPERATION to the end of
argument list will skip the undo operation.
Also added unit tests for rmdir and prependfile operations
Task-number: QTIFW-3333
Task-number: QTIFW-393
Change-Id: I88dbb16d2ebabe42b4ff810e6196da0be8b4cc65
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
QStandardPaths has changed in Qt 6.6, changing the script properties for
script usage accordingly.
Task-number: QTIFW-3334
Change-Id: Ib0bf1f0370d8f8691436df0df28a445e39bdb39f
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
|
|
|
|
|
|
|
|
| |
In Qt6, productType is macos, whereas in Qt5 it was osx.
Task-number: QTIFW-3309
Change-Id: I403c8a2734eac7a511f742bdd1be130090f7af07
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
| |
Task-number: QTIFW-3320
Change-Id: I3cd4e19f4bfb192ef929b2f724ee77c0b770f06d
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Sometimes the button texts in installer are not something that is
suitable. Added possibility to change button texts from script to a
specific installer page.
Task-number: QTIFW-711
Change-Id: I2883cda6d770843c3617fda4e6b07d102a357730
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|\
| |
| |
| | |
Change-Id: Id9fe7a127a72b58732f5dffd11c4c9c7c1c56060
|
| |
| |
| |
| |
| |
| | |
Change-Id: Ia2e5a7c2039270e7b33d5f7b449a3c9c3b38cd59
Reviewed-by: Inkamari Harjula <inkamari.harjula@qt.io>
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTIFW-3248
Change-Id: I093097d899bb7784965ce34af9fa6de396186d78
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
Reviewed-by: Inkamari Harjula <inkamari.harjula@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
In Supported Platforms section, link to Linux dependecies added.
Task-number: QTIFW-3170
Change-Id: I0d22791113b3d1d6ff0bebb421d6f56143199b0b
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously, offline installers did not consider configured repositories
for metadata fetch, but this was changed in a fix for bug
report QTIFW-3078.
Some users were relying on the previous behavior, so make it
configurable in the installer's config file, and default to the
new behavior.
Task-number: QTIFW-3160
Change-Id: I26c0ab825f080f81ce2320e0be5f75334207c33e
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Texts modified on landing and overview pages. New screenshots to be added later.
Image in Choosing Installer Type section was updated.
Task-number: QTBUG-117600
Change-Id: I0fa76d25519d2488d6ff68a93bd6b7761f592b3c
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The custom qmake documentation build target did not correctly
locate private include paths for Qt modules. Fix this by replacing
dashes with underscores (e.g. qtcore-private -> qtcore_private)
before querying the paths.
Remove duplicate entry for qtcore-private (it's already added at
top level).
In ifw.qdocconf, fix relative additional include paths. Remove all
non-existent paths from the configuration.
Use the correct URL for the online documentation.
Remove the now-obsolete custom module header, and let QDoc build
an artificial one based on 'headerdirs'.
In passing, fix minor issues in the documentation sources.
Change-Id: I5cdbd64307448014fa8b73a70378627fdb89b942
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
rootComponentsAdded -signal is not used anywhere, in case the components
are added connect to componentAdded -signal instead
Task-number: QTIFW-807
Change-Id: I148e74bd9f1650ae09f0020269fb7ed2349b5d3b
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|/
|
|
|
|
|
| |
Task-number: QTIFW-893
Change-Id: I7b995d021963329c438198c3f4fb02832b014090
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
| |
To access buildCpuArchitecture from script
Task-number: QTIFW-3224
Change-Id: I02086f7d3e064fe53d6fa9322b8832110c40c6b1
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
| |
IFW builds only with visual studio compilers in Windows, updating the
INSTALL file accordingly
Change-Id: Ia93c3af8e4798e5cd862acd56a3750a0d7b39ed7
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Maintenance tool was written with both capital letters and non-capital
letters, unifying the naming and writing with non-capital letters. Also
wrote the name behind a macro, in case we some day want to change it.
Task-number: QTIFW-3169
Change-Id: Ic4da06a14edd1d9675704befb5599d2c54747446
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In case the "--type=aliases|packages" option is omitted, search first
for aliases, and if not found, search for components. If the option
is specified, search only given type.
This changes the behavior from previous one, where only aliases were
considered for the search by default, if the type option was omitted.
Change-Id: Ie01ea85e1b88376f8df3edbf864d1e78788c3464
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
|
| |
Task-number: QTIFW-1217
Change-Id: I94de47861a4751a7807ae5482b2feaad5faa60fb
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
|
| |
Change "Requires" to "Required" and use plural form for the dependency
properties, to be more uniform with the dependency properties for
components.
Change-Id: Iccb36701bc32ebafd27914272225ad1615c5f9fa
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
In addition to RequiresComponent and RequiresAlias, introduce new
OptionalComponent and OptionalAlias properties for component aliases.
The new properties are used to declare optional requirements for
aliases, which do not cause the declaring alias to become unstable in
case the referred component or alias is missing from the installer.
Task-number: QTIFW-3166
Change-Id: I43c8cd08099e879180ec7e028b55836750c727bd
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
| |
Change-Id: I68ee86163c3b4d825633efce6dba9f1c0d23ed39
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Introduce concept of component aliases, which act as an alternative way
for referring a set of related components.
Component aliases are declared in an alias definition file, which is
included to the created installer's binary layout as a resource. The
file lists the available aliases, including metadata - such as name,
version, and description - and the list of components and other aliases
the alias requires.
Aliases can be referred only from the CLI for the time being, with the
supported commands 'install' and 'search'.
Task-number: QTIFW-2978
Change-Id: I281f171cc7d932ce496051d7090ae169a4709eec
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Documentation build targets have been removed from Qt 6 when building
with qmake. Reintroduce custom targets to call qdoc, qhelpgenerator,
and qtattributionsscanner via 'html_docs' and 'docs' targets.
These are adapted from similar targets once used by Qt Creator.
Change-Id: If572b709c56860a9949c1f4a5ae66a660e2a621e
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Some operations in Windows might need native separatos. Adding
documentation how the separators can be easily converted to native
style.
Task-number: QTIFW-2578
Change-Id: I20c44fdaef98095add32421a6303570c6372a056
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The installer.gainAdminRights() and installer.dropAdminRights() methods
are invokable from the scripting API. During installing, updating or
uninstalling components, installer does it's own decision making to
request and drop admin rights on-demand, but this could be overridden
with the aforementioned methods.
This was not taken into account, instead it was only checked if admin
rights were gained in the context of the calling method. Fix by
checking if the admin rights were present at the start of the installer,
or if they were requested by anyone during installation.
Task-number: QTIFW-2929
Change-Id: Ie4f6fc0ac746183b00f460a2e60c57c2eae9808c
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
|
|
|
|
|
| |
Creating a shortcut to network share in installer is not possible in
Windows.
Task-number: QTIFW-2933
Change-Id: Ic6594e7baedf581dece6692882443afe47b2040e
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There was behavioral mismatch of handling processes to stop for updates
between GUI and CLI modes.
For CLI, each command that would make changes to components would
recursively check the installation directory for running processes
early on, and block continuing if such processes were found. In addition
to this, the component scripts may have requested to stop processes
before performing component 'updates' (add/remove/update).
For GUI, only the latter functionality was utilized, so remove
the early checks from the CLI side to make the behavior uniform.
Task-number: QTIFW-2927
Task-number: QTIFW-3009
Change-Id: I028e699c43ef4352593b49ccc8a927644916c41a
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
|
|
| |
Task-number: QTIFW-964
Change-Id: If666d7d651f8240e3e7d4c25d9e9d7d81cbe1b39
Reviewed-by: Katarina Behrens <katarina.behrens@qt.io>
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|\
| |
| |
| | |
Change-Id: I9946bf8ff3ea4e132a0490b59c1d4d557198ef62
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
showSettingsButton() called from control script had no effect.
Fixed it so that if showSettingsButton will overwrite the IFW
decision to show the settings button.
Change-Id: Ia08c03cc13db58168fd371f230517bcc83ee0e12
Task-number: QTIFW-810
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTIFW-2988
Change-Id: I7cedcc0516960c0d10cb304181da117dc98781af
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
Reviewed-by: Venugopal Shivashankar <Venugopal.Shivashankar@qt.io>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Fixes: QTIFW-2988
Change-Id: I0e64f56b560fe7183232f5262190a46346a1fc36
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I486d6f3f6fbdbfe1b92ccff918aaf0fe72aa2fc8
|
| |
| |
| |
| |
| |
| | |
Change-Id: I907882c46ef3d549594531118628c8929ee9742c
Reviewed-by: Tero Pelkonen <tero.pelkonen@qt.io>
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I07baba6a0e64b6022e6a933708e199551be7dd2f
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
IFW could already previously detect circular and missing dependencies by
running a precheck calculation when building the component tree.
However, there can be also cases of where the user selection results in
unsolvable changes to components.
One such case was the erroneous possibility to uninstall a component
marked with ForcedInstallation, if any of its dependencies was checkable
and the user unselected it for uninstallation.
Add support for reacting to such errors in the component tree view,
displaying a message box about the invalid dependency resolvation error,
and blocking further navigation until the component selection passes
the dependency calculations.
Also attempt some refactoring the related code to simplify the different
call sequences resulting in recalculation of the components.
Change-Id: I9dc78f858bd4be7932f89f8e14bbfd97fbd3a0f6
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In addition to the automatic selection, allow end user to select
components declaring the AutoDependOn property when updating components.
This does not change the previous rules for automatic selection for
update, meaning the component 'A' declaring AutoDependOn relation to
component 'B' will still be updated when 'B' is selected for update,
regardless of the user selected check state for 'A'.
This fixes some cases not handled by the automatic selection, where
the component declaring AutoDependOn relation could not be updated.
An example scenario:
- 'A' (1.0.0) declaring an auto dependency to 'B' does not follow the
release schedule and versioning of the component 'B' (2.1.0).
- 'A' has a new release (1.0.1) that is pushed to remote repository
- The end user cannot update the component 'A' unless 'B' is also
updated to the repository, which would trigger the automatic selection
Task-number: QTIFW-2855
Change-Id: Iea06c366f7f14f391cbc0b4a6526c8aee349ae59
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTIFW-2860
Change-Id: Icadb39c13279d3614179f8e16d33be696198a74c
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
This reflects the official IFW builds on Linux.
Task-number: QTIFW-2919
Change-Id: I838fd0e544e1fc8d9a2c4b7d344fb7aad2082b20
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ia8717933439359e23b65d9465dec8c70fbe59ee2
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
|\|
| |
| |
| | |
Change-Id: Id8121e6b4cdda23c8c44cf779e35dce8d9a28090
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
As the components can still be selected with the selection buttons
above the view, it makes little sense to artificially limit selecting
individual items for update and hiding their check state. Also the
documented use case for the property - making a parent component
non-checkable so only some of its children should be checked - does
not apply for the updater view.
Apply similar fix to forced installation components, which should
be also toggleable for updates.
Task-number: QTIFW-836
Change-Id: I18f34c4e8ee1e24e761e50edd3066ec4aea3432e
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I958043ec15b0ae8a31b3aa7a33166861bb0a3d41
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This change adds attribute, postLoad, to existing <Script> -element.
Using <Script postLoad="True"> will call the script loading and
evaluation only to those components which are selected for install or
update right before the components installation start.
Task-number: QTIFW-2820
Change-Id: Ic1967d329cbb5de6a0216ff3f76cc2ede178db80
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|/
|
|
|
|
|
|
|
|
|
| |
This adds general description of using QObjects that are not part of the
documented global JS objects exposed to the scripting API by IFW, as it
is possible and often needed to achieve wanted functionality in the
controller and component scripts.
Change-Id: I3529f59d75d9e5d097e993602a5942d9bae9214f
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
|
|
| |
Also refresh the existing images on page for uniform look.
Change-Id: Id258202289116023aa18c634378e3cad71925418
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The option can be used to select the path for metadata cache without
opening the installer's settings dialog.
Add public PackageManagerCore::resetLocalCache() function and remove
automatic initialization of the local cache in the private core class
constructor, so we can control the timeline better. Also make
PackageManagerCore::clearLocalCache() a regular member function as
it does not need to be a Qt slot.
Task-number: QTIFW-2810
Change-Id: Ia4a903026a10b90da16ba1b93fd3098a709f7ed7
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
|
|
|
|
| |
The command can be used to clear the contents of local metadata cache
without opening the installer GUI.
Task-number: QTIFW-2810
Change-Id: I18cec027b9945f83d25fa1716858756ececae6d4
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously maintenance tool could be updated from online repository
placing installerbase to repository and setting setInstallerBaseBinary()
in install script. The maintenancetool app bundle was written in the
code and installerbase placed under .app/Contents/MacOS/. This prevented
the maintenancetool app bundle to be signed and notarized.
Fixed so that the whole app bundle can be placed to repository. This
does not break the signing nor notarization as the whole bundle is
copied as it is. The setInstallerBaseBinary() is still needed in the
install script so that the installer knows which bundle is the
maintenance tool. Old way of updating maintenancetool still exists, if
the installerbaseBinary does not contain the ending 'app' installer
assumes that the maintenance tool is the executable itself instead of
whole app bundle.
This change also adds a new binarycreator switch
--create-maintenancetool, which can be used in macos to create the app
bundle for maintenance tool.
Task-number: QTIFW-2750
Change-Id: I3483ddb815d035644e826559947f6f9de4af9361
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|