New Qt patch or minor releases are not considered "updates" by the
installer framework. The Qt packages are set up this way, to allow
installations of multiple patch versions of the same minor Qt versions.
Explicitly check if a newer Qt version than the latest installed one was
released since we last checked for updates, and inform the user with a
link to the Qt blog, and a button to start the package manager. We don't
show anything when checking for updates the very first time, since at
that point we must assume that the user installed the newest Qt version
they want.
Fixes: QTCREATORBUG-26708
Change-Id: I68374b3242b64d392a16de1abaac1292e0d534cf
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Reviewed-by: <github-actions-qt-creator@cristianadam.eu>
It's been available since a while, and is the preferred way to use it
nowadays.
Task-number: QTIFW-2349
Change-Id: Ic55f209ab7068d1d093cf92cb21e33794c0b04f1
Reviewed-by: Arttu Tarkiainen <arttu.tarkiainen@qt.io>
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
To make clear that this is not just any finish.
Also change FinishedError to FinishedWithError, to create
symmetry.
Also adapt enum member description to reality.
Change-Id: I13e05391eb86fdb24e2ae660f14dfddb282e1104
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
The result is fully stored in the object anyway. Using the extra
SynchronousProcessResponse structure only causes copies of
the data and complicates access on the user side in
a lot of cases.
The result bits are now also accessible individually.
There's obvious room for follow-up changes on the topic, e.g.
ShellCommand::runCommand's parameter list could shrink to
just a SynchronousProcess parameter.
Change-Id: I45aa7eb23832340be06905929280c012e1217263
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
No implicit casts from QString to QFileInfo anymore, and a few more
QChar(int) fixes.
Task-number: QTCREATORBUG-24098
Change-Id: I3326fc0701a9259c7bdd2d8c3025de0a4774f8aa
Reviewed-by: hjk <hjk@qt.io>
The only reason it was required to be in Core plugin, was its use of Id,
which now is available in Utils.
Change-Id: I66ce863c24924e6448d339b3422538a7fe167336
Reviewed-by: Alessandro Portale <alessandro.portale@qt.io>
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Remove existing notification before showing a new one.
Otherwise checking for updates multiple times results in multiple
stacked notifications.
Change-Id: I1af07c005e88b297fbaebec7f5358fa46c09a84c
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: David Schulz <david.schulz@qt.io>
Instead of using a modal dialog box.
Fixes: QTCREATORBUG-22817
Change-Id: I129827b7f715b6e739ea09275bf43c64eb3d4e3f
Reviewed-by: André Hartmann <aha_1980@gmx.de>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
More in line with QFileInfo terminonlogy which appears to be
best-of-breed within Qt.
Change-Id: I1d051ff1c8363ebd4ee56376451df45216c4c9ab
Reviewed-by: Christian Kandeler <christian.kandeler@qt.io>
More consistent with the fromString case and avoiding false
conversions QString -> QFileInfo -> FileName in case the
inheritance of QString suddenly disappears.
Change-Id: Ib14646ab1a660fd45dd1ea6862a0b5faa52ad0e3
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Show that no updates are found in the progress widget.
Also change the title to something nice and understandable.
Task-number: QTCREATORBUG-21584
Change-Id: I765509850d0454fa3c93b31586766d810ff6e392
Reviewed-by: David Schulz <david.schulz@qt.io>
No need to start a one minute timer in delayedInitialize and then even
delay the next one by returning true from there.
Just start the timer in extensionsInitialized directly.
Change-Id: Ie36c8cef588603b1e9cb27a3a14db5d1dec1dae9
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
The ShellCommand deletes itself if run asynchronously, and it also
cancels itself when ICore sends coreAboutToClose, so we must be prepared
for it to vanish at any time.
Task-number: QTCREATORBUG-19165
Change-Id: I6d6a737ea529012976a623f812f2c426518557fd
Reviewed-by: Orgad Shaneh <orgads@gmail.com>
Set a proper parent, and mention in the title that this is about
Qt.
Change-Id: I9f4542267b070c23a7efbe428700a13e8adc9de8
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Check for Updates menu items are supposed to be displayed in the
application menu on macOS, not the Help menu as for other platforms.
Change-Id: I8d13f2658b3b0e0b9b01ef5b64bd7804d6b7e424
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
10 seconds are not enough for retrieving all the information from the
servers.
Change-Id: Ic1372a8b558f1c1f80ff6703b2d70ee92dd8652c
Reviewed-by: Antti Kokko <antti.kokko@qt.io>
MaintenanceTool returns with exit status != 0 in case there are no updates,
so that is no indicator of failure.
Change-Id: Ibe94cc8b5ecbd7a04be5da41112a4eda0cd84153
Reviewed-by: Tobias Hunger <tobias.hunger@qt.io>
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Checking for updates failed when MaintenanceTool printed out log
messages. MaintenanceTool is expected to print out only xml data. So,
parsing the output failed.
MaintenanceTool printed out warnings about SSL and Qt account.
Logging is now disabled when running MaintenanceTool.
Change-Id: Ib163dae81368c8fec7218e5961590e07c208a73e
Reviewed-by: Eike Ziller <eike.ziller@qt.io>
Remove usage of the Q_EXPORT_PLUGIN macros, which do not exist in Qt 5.
Change-Id: I678c3cf10b9c5d5c1b9f252b0ecd1c97dc810a47
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Christian Stenger <christian.stenger@digia.com>
By wrapping related ones in a single transaction, instead of
(implicitly) doing a transaction per settings value that is written.
Task-number: QTCREATORBUG-11524
Change-Id: I28e06c9d6cd4ebad024f9c277796abb37df5f992
Reviewed-by: hjk <hjk121@nokiamail.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
Do not repeatedly try to fetch updates, but only once.
Change-Id: Id177b6677077e97132c7b40af3de35015a9c7658
Reviewed-by: Eike Ziller <eike.ziller@digia.com>