summaryrefslogtreecommitdiffstats
path: root/src/libs/installer/downloadarchivesjob.h
Commit message (Collapse)AuthorAgeFilesLines
* Fix occasional crash in install phaseKatja Marttila2024-04-091-1/+1
| | | | | | | | | | | Progress information is printed using same static instance of the coordinator by different operations. The operation object pointer was saved as key to QHash so that progress could be tracked. This has caused problems in installer as QHash insert occasionally caused segmentation fault. Fixed so that the progress information is no longer tracked based on operation object pointer, instead object name is used. Task-number: QTIFW-3314 Change-Id: Ic4007f226321e109109006c5c89415308920c614 Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
* DownloadArchivesJob: allow download retries for command line runsArttu Tarkiainen2023-08-211-0/+2
| | | | | | | | | | | | | | Previously, on network errors or hash verification failures, the download job would be canceled when running the installer from CLI. This was to prevent infinite retries in case the automatic or default answer for the error message boxes was to retry. Add a retry counter and allow retrying the failed downloads from CLI runs until the max count is reached. Task-number: QTIFW-3098 Change-Id: Iee95f0eb4e47af89c74ffdd9ad6026bda6c87664 Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* Check sha1 checksum per repositoryKatja Marttila2023-02-091-4/+3
| | | | | | | | | | | | | | Updates.xml contains Checksum variable which can be set to false to skip the archives checksum verification. The variable was read from one arbitrary Updates.xml file and that was used in all downloads. Fixed so that the checksum is read per Updates.xml. This change also speeds up the component generation phase as it no longer needs to read Updates.xml file. Task-number: QTIFW-2805 Task-number: QTIFW-2928 Change-Id: Id28dd370ef200aec67cb85cbbc1d08d925b43c21 Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
* Add persistent metadata file cacheArttu Tarkiainen2022-10-141-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | Introduce GenericDataCache and Metadata classes for storing the fetched metadata files (Updates.xml and uncompressed files from the meta.7z archives) on local filesystem. The cache uses a checksum based dictionary to keep track of the cached metadata items, with the SHA1 sums of downloaded Updates.xml files being the keys to refer single metadata item. We still need to download all the Updates.xml files on each fetch to check if the cached metadata items are applicable for the current repositories. Update the Updates.xml files in auto-test data to have unique contents, otherwise there could be conflicts with identical test repositories, as the tests will also utilize the cache now. Also omit registering Repository type to the meta-object system in the class contructors, this is expensive as we construct objects from the class frequently, in the worst case hundreds of thousands times. PackageManagerCore already does the registering. Task-number: QTIFW-2621 Change-Id: Iee10ead68befd722ffe7f18ca48483d5a3666658 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* Make 'override' specifier usage consistentArttu Tarkiainen2022-01-211-4/+4
| | | | | | | | | Add where missing. Replace occurrences of Q_DECL_OVERRIDE macro, building IFW requires a C++11 compatible compiler so the language specifier is preferred. Change-Id: Idb75e2813d26b9da85e03891f0ae9537c6524c56 Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* Add total remaining download time estimation for archivesArttu Tarkiainen2021-08-191-1/+10
| | | | | | Task-number: QTIFW-2207 Change-Id: Ia4ccc5f71a489a1663cdbf66a69f442366e65fc9 Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* Merge remote-tracking branch 'origin/2.0'Katja Marttila2017-01-301-17/+12
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: Changelog dist/config/config.xml dist/packages/org.qtproject.ifw.binaries/meta/package.xml dist/packages/org.qtproject.ifw/meta/package.xml installerfw.pri src/libs/installer/lib7z_create.h src/libs/kdtools/kdgenericfactory.cpp src/libs/kdtools/kdgenericfactory.h src/libs/kdtools/kdupdaterapplication.cpp src/libs/kdtools/kdupdaterapplication.h src/libs/kdtools/kdupdaterupdatesourcesinfo.cpp src/libs/kdtools/kdupdaterupdatesourcesinfo.h src/libs/kdtools/localpackagehub.cpp src/libs/kdtools/localpackagehub.h src/libs/kdtools/updatefinder.cpp src/libs/kdtools/updatefinder.h tools/binarycreator/resources/mkdmg.sh Change-Id: Iab2513f549832d2e750e77131c673457ab265af4
| * License header update to GPL-EXCEPTKatja Marttila2017-01-261-17/+12
| | | | | | | | | | Change-Id: I6426c4e8f932cf26c6c638dec18d0c12e22972d1 Reviewed-by: Janne Anttila <janne.anttila@theqtcompany.com>
* | Merge remote-tracking branch 'origin/2.0'Iikka Eklund2016-01-201-4/+3
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: installerfw.pri src/libs/kdtools/kdgenericfactory.cpp src/libs/kdtools/kdgenericfactory.h src/libs/kdtools/kdupdaterapplication.cpp src/libs/kdtools/kdupdaterapplication.h src/libs/kdtools/kdupdaterupdatesourcesinfo.cpp src/libs/kdtools/kdupdaterupdatesourcesinfo.h sync.profile Change-Id: Ifdc8b065f89b7e241bd3788ed79768e21888161f
| * Update license headersIikka Eklund2015-12-291-4/+3
| | | | | | | | | | | | | | | | | | Update existing license headers. LGPL -> LGPLv21. Update copyright year as well. Change-Id: Ie1d71f8c68186b8f625f409ddf94691f178093c9 Reviewed-by: Katja Marttila <katja.marttila@theqtcompany.com> Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
* | Missed to rename classes and to update docs and tests.Karsten Heimrich2015-09-071-1/+1
| | | | | | | | | | Change-Id: I2d79ab4094cb9706287d44160543c19b35a66c95 Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* | Rename files. Remove {kd} prefix. Remove {kdupdater} prefix.Karsten Heimrich2015-07-141-1/+1
|/ | | | | Change-Id: I88c93cab718f4659296d5f7f562beefd747a366f Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
* Update CopyrightKai Koehne2015-02-181-7/+7
| | | | | Change-Id: I8dde6629cfd461104364d5cdc255cb54b58283fa Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* Add LGPLv3 as new licenseKai Koehne2014-10-161-14/+7
| | | | | | | Change-Id: I61158f956894e209dccf83744b4753774676099d Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com> Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
* Fix a possible race and some wrong assumptions about file ownership.kh12014-04-031-3/+2
| | | | | | | | | | | | The download archive job does not need to cleanup the files afterwards, that's taken care of by the meta data download. That one will provide the infrastructure where the files are downloaded at. Also prevent the meta job from removing the files once they are fetched in case of a cancel event (which does not entirely mean we are going to shutdown). Change-Id: I66eeff30ef4cabb485dd4f300b2917deb7557867 Reviewed-by: Kai Koehne <kai.koehne@digia.com> Reviewed-by: Niels Weber <niels.weber@digia.com>
* Add support to pass a query string when downloading archives.Niels Weber2013-09-131-1/+1
| | | | | | | Task-number: QTIFW-329 Change-Id: I645370f03958164905c064d1dcf0be97fd8dc039 Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
* Add 2013 to the copyright.Niels Weber2013-02-051-1/+1
| | | | | Change-Id: If64730ba7203d1a910a426c0d9c9a738ecfeff4b Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Change copyright headers from Nokia to DigiaSergio Ahumada2012-12-211-18/+27
| | | | | Change-Id: Id55a71a6ee24b234739b6066e11e9c1f2e389f73 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Fix naming.kh12012-10-011-1/+1
| | | | | Change-Id: Ice29a1bed7bc78fbee522fab942ff3858a70be9c Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
* Reorganize the tree, have better ifw.pri. Shadow build support.kh12012-03-191-0/+104
Change-Id: I01fb12537f863ed0744979973c7e4153889cc5cb Reviewed-by: Tim Jenssen <tim.jenssen@nokia.com>