| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |\
| | |
| | |
| | | |
Change-Id: I8e2864b3ec81cffa907fe02ff1f2019e155c54e3
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When collecting information about the paths to be compressed into
unified metadata, if the package directory used to update repository was
missing replacements for two or more components, it would reveal an
issue with the traversing of the existing repository directory.
Fix by adding the missing "cd up" after entering a component entry
directory. Add new test case.
Task-number: QTIFW-2287
Change-Id: Ica1228968398b6e987bdf89336f74f53fcd35d27
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I1e3a91fd0722b0b73197257ec5092a617b41516e
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
libarchive is a multi-format archive and compression library
written in C and licensed under the new BSD license. Usage of
libarchive brings in support for additional archive formats
(in addition to 7z) with the installer framework, like zip and
tar, with several available compression methods like gzip, bzip2
and xz.
libarchive will coexist as a supported archive format handler
with the LZMA SDK currently used in the framework, which will
continue to be used for handling the 7-Zip file format.
This change introduces classes for handling archive operations
using both libraries, removes most calls to the old Lib7z facade
and migrates the code base to use the new handling methods.
Task-number: QTIFW-2255
Change-Id: I8d77110ded503060495a3d6fdfdbc26281df9453
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Qbsp package adding failed using gui if the package with the same name
existed in the component tree.
Also increased priority to qbsp package so that if the same name and version
exists in the component tree then qbsp package is used.
Task-number: QTIFW-2312
Change-Id: I732fef1a7ba503d2332f411e15b6873c63dcf630
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTIFW-2245
Change-Id: Id9a79c7c572dc588c05ad37c67ae3f0431fa7cdb
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I86049138466399411ba36791330f4a94faad8c52
|
| |
| |
| |
| |
| |
| | |
Task-number: QTIFW-2225
Change-Id: I6a7fdfc1070ad54d520563cae7d2446e97e2e87c
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|\|
| |
| |
| | |
Change-Id: I8adecc4573134d2b33f2b98fba9372320b2f8737
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTIFW-2189
Change-Id: Ic6f56156194039cca7bebf095fad8c1fc66fc275
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In a somewhat rare case, it is possible that a same package exist in
multiple repositories. The latest available package from remotes is
used - however if we select that package for inclusion and also
implicitly get some other package from the another repository it exists
in with an older version (autodependency, etc.), that repository is then
also used to parse package information, and we store a duplicate entry
of the package to the Updates.xml to-be-written to the offline
installer binary.
Fix by appending only the package with the latest version to the
PackageInfoVector object used to temporarily hold the package
information.
Task-number: QTIFW-2190
Change-Id: Icdb3dc979153dfada37fdb0aabb3c718bc8aedff
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Search command results can now be optionally filtered with
the '--filter-packages'-option, which takes an unspecified
count of key-value pairs that contain the desired package
information element and a regular expression used to find
matches in the element.
Example usage:
'installer --fp "Version=1.0, Description=Some text" search *'
Only the packages which match all given filter rules are
included in the output print.
Task-number: QTIFW-2168
Change-Id: I788b065d95952b988489c36db80b3c859b970f05
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously subcomponents of a virtual component were shown on
search results, and trying to install these would print a bit
vague message: 'Component not found'. As the sub-branches of
virtual component nodes are hidden on GUI, we should also hide
them when using CLI search, and give a more appropriate error
message why the component cannot be explicitly selected for
installation, if the user still tries to do so.
Also some minor refactoring to the handling of supplemental
information about binary type of the running installer/mt.
This change does not fix the possible case of an install script
changing the 'virtual'-state of a component, as it would require
downloading and evaluating the full metadata for repositories (or
components), which would impose a performance penalty to search.
Task-number: QTIFW-2168
Change-Id: Ibacaca23c38f5ea98967955d91849cefc1f11f61
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I787b6ae58a01af1d8be5f3504e561982cf8acc0c
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ia8305652afdf29cbc88328b76f5156187aa54dba
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: Ibf92b3e93ca11428f92e60031a5c8c3c5f60b402
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
| |
| |
| |
| |
| | |
Change-Id: I77acdecaf5660f2d7aa723c56d53a97e5687a8b8
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Components can be updated from online repository using version number.
Sometimes there is a need to update to an older version which is now
possible by using content sha. Content sha can be added to repository
with repogen --sha-update <component_id>. If there is a new content sha
available in the repository, component is updated although it version
number might be smaller. After the content sha is removed from online
repository, the normal update with version number is performed.
Task-number: QTIFW-1798
Change-Id: Id9e32b0345af5101cccaf6e30c81bd39691d9590
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|/
|
|
|
|
|
|
| |
Functionality is only moved from repogen.cpp to repositorygen.cpp. This
makes the repository testing much easier.
Change-Id: I2078e2880955c71b9ffa0ac46501eafbd499c3ba
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This also changes some of the return values in our CLI-related
functions in PackageManagerCore class to better catch cases
where we exit without failing but also without doing anything.
Also adapt existing tests.
Task-number: QTIFW-2028
Change-Id: I73c4ca1b20d439773d0e290195f137d0d7369d17
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Setting <TreeName> -tag to component.xml will overwrite the default location
of component in installer's tree view. This way we can define the component
location without a complete repo build. Updates.xml can be directly modified
by adding <TreeName> -tag for easy relocation of components. TreeName must be
an unique name - it cannot conflict with existing tree name or name.
Task-number: QTIFW-594
Change-Id: Ie69f90f1303d932369d566d0d7b4bc0e354505c6
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Execute operation can have hard coded paths to program which is
executed. In case the program is relocated, UNDO operation will fail as
it will not find the program. Implemented new XXXX_OLD value which can
be used for overwriting the hardcoded value. In case the program
execution fails, program is tried to launch again with the replaced
value.
Task-number: QTIFW-2125
Change-Id: I446a4c423e53cc4ffc6e5e25617d2400945ac3d9
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
| |
Task-number: QTIFW-1903
Change-Id: I4d8eaf71a1a63dfbfa75ea61af728fa1f5e3e9f3
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The operations write the output files to a valid, writable directory
value of XDG_DATA_HOME variable if set, otherwise defaulting to
"$HOME/.local/share". This follows the XDG Base Directory Specification
but misses the use case of system-wide installation: the XDG_DATA_HOME
should only contain base directory relative to which user specific data
files should be stored.
Prefer a predefined value "/usr/local/share" when launced as root or
the internal elevated admin rights handling is active. This should be
a sane and well known value for applications installed system-wide, and
should not conflict with files extracted by distribution's package
management system.
Task-number: QTIFW-2093
Change-Id: I96fab3367122e7df783697e07baeb71dfd9b3f0e
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
|
| |
Task-number: QTIFW-1945
Change-Id: Ic8a076a28385e99ad09cfbccd07c7012d6570639
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
|
| |
Task-number: QTIFW-2089
Change-Id: I8cccd471718eaaa6dc167a852b8854dc424f994e
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
| |
Task-number: QTIFW-2090
Change-Id: If0c2d4901ee1fb634e1e436ab14a507d06dd99ab
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
| |
Task-number: QTIFW-2088
Change-Id: Ic5e781b89b1c74fc8f65575bd46c073610545523
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
| |
Task-number: QTIFW-1973
Change-Id: I89f15c8ed7d56c3e1bc72d3c740e9054363f9390
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Setting ForcedUpdate for component will cause a mandatory update for
component if it is installed. Component must be updated before any other
component can be updated/installed/removed. Essential components are updated
at the same time with ForcedUpdate.
Task-number: QTIFW-1565
Change-Id: I6af07fba222371e8cd161d1fec65301450077d86
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
| |
Operations can from now on be declared also in component.xml. The
operations are performed, backuped and rollbacked the same way as they
would be when defined from scripting api.
Task-number: QTIFW-507
Change-Id: Ia509219b94737136c3de25db0cb0c72076b48380
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
|
| |
This makes it possible to utilize parts of our existing tooling in the
offline installer from online installer generation process.
Task-number: QTIFW-2048
Change-Id: I7ee605be75541cc83a3b6909089bda45f0835bcf
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
|
|
|
|
| |
Also removed logging categories for package information, the full package
information can be printed by increasing the verbosity level.
Task-number: QTIFW-1950
Change-Id: I4bce019a63ba1fbf48e3bb0ca45511e42d4974c9
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|\
| |
| |
| | |
Change-Id: If5205ff6ef2c8989520e24d41595c04d5920d207
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
United metadata 7z was missing the component which had no update
available.
Task-number: QTIFW-2018
Change-Id: I069fd852499f157075bf28e3ccfef3e42e5f30a9
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
| |
| |
| |
| |
| |
| |
| |
| | |
The debug print does not look very nice when the string contains escape
characters for quotes or extra spaces.
Change-Id: I9428d3aef4e3ebd693f66083447430e4e2600098
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| |
| |
| | |
Task-number: QTIFW-1062
Change-Id: I3deb46cae74d1e5851d4ddd4b58c0ba19375ddbd
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTIFW-1996
Change-Id: Iaf9aa6bfd39d266ed052838e969881c168b4b2ed
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| |
| | |
Change-Id: Ifbbfec4449a9f5b0a79269fc7ddfcc1780e762e5
Task-number: QTBUG-76210
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
| |
| |
| |
| |
| |
| | |
Task-number: QTIFW-1953
Change-Id: Ie291e8ae96d46082e342e9bcb152258862813afd
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|/
|
|
|
| |
Change-Id: Ie61b192bcf047cc70f728ea15370ff50e7a41769
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
|
|
|
|
|
| |
Change-Id: Iced229d7d364f68599bd6eec20db57838f36a671
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
| |
Change-Id: I67178a9df34e3ed4752452dca9a85709fdd4c620
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Fixed regogen 'update' and 'repository' options to work with unite
metadata.
--update-new-components with unify metadata is prevented.
Moved --update-new-components functionality from repogen.cpp to
QInstallerTools so it can be accessed from tests.
Created tests for repogen.
Task-number: QTIFW-1943
Change-Id: I12389f4747154a0f6f51b4f34f630103c2cfef04
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
|
| |
When updating essential, no other components should be installed nor
updated unless there is autodepend on the essential component.
Task-number: QTIFW-1970
Change-Id: If9edd6515e3e5ec51611ac07ac52b13f05983b9d
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of returning just true or false when running installer or
maintenancetool, utilize the PackagemanagerCore status message.
Added also a new status enum, EssentialUpdated, which is returned when
calling command 'update' and only essential components are updated.
Also fixed a bug when components could be installed even when there
were an essential update available.
Task-number: QTIFW-1969
Change-Id: I43826301656573b34e1338b49566d199bdcd7468
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Add support for a configurable image shown on top of the page list.
- Add missing object names for easier object reference, for example
when using stylesheets.
- Remove the vertical line separating side widget as this looks
particularly ugly on custom styles.
Task-number: QTIFW-1939
Change-Id: I16e17e72163068381f54491f7fbe965eb4c5295d
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
|
|
|
|
|
|
| |
Task-number: QTIFW-1930
Change-Id: Ie180777a0c5dc7c6a7b4e273169e673cd5c7e918
Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
|
|
|
|
|
|
| |
Task-number: QTIFW-1929
Change-Id: I4c9cc7449126b6bb8898f5148f2cb612b175f52a
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
|