When downloading updates says "downloading" when it's clearly not
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical System Image |
Fix Committed
|
Medium
|
Bill Filler | ||
ubuntu-system-settings (Ubuntu) |
Fix Committed
|
Medium
|
Unassigned |
Bug Description
When installing updates you get a list of the applications that need to be updated, and then you can tap "update all". When you do so, all the apps immediately switch to a progress bar of 0% and the word "Downloading" appears. But they don't all download. Instead it's pretty obvious that they download one at a time. At any given time maybe one of them is downloading, but the others are waiting.
In fact the vast majority of the time when I tap "Update All", none of them download, they just sit there at 0%. This is no doubt because of the GFW. But that just makes it all the more infuriating that all of them claim to be downloading when none of them are.
Do not switch the status to "downloading" until it's downloading. Do not display a progress bar until an operation that might progress has begun. Probably adding the string "waiting to download" would be appropriate.
<https:/
Related branches
- system-apps-ci-bot: Needs Fixing (continuous-integration)
- Ken VanDine: Needs Fixing
- Matthew Paul Thomas: Pending (design) requested
- PS Jenkins bot: Pending (continuous-integration) requested
-
Diff: 19868 lines (+13831/-3824)170 files modifieddebian/control (+4/-2)
plugins/about/CMakeLists.txt (+2/-1)
plugins/about/PageComponent.qml (+10/-8)
plugins/about/Version.qml (+6/-7)
plugins/about/plugin.cpp (+10/-0)
plugins/cellular/Components/MultiSim.qml (+0/-5)
plugins/system-update/CMakeLists.txt (+67/-22)
plugins/system-update/ChangelogExpander.qml (+77/-0)
plugins/system-update/ClickUpdateDelegate.qml (+26/-0)
plugins/system-update/Configuration.qml (+3/-3)
plugins/system-update/DownloadHandler.qml (+204/-0)
plugins/system-update/EntryComponent.qml (+24/-19)
plugins/system-update/Global.qml (+142/-0)
plugins/system-update/ImageUpdatePrompt.qml (+52/-0)
plugins/system-update/InstallationFailed.qml (+34/-0)
plugins/system-update/NotAuthenticatedNotification.qml (+62/-0)
plugins/system-update/PageComponent.qml (+400/-679)
plugins/system-update/UpdateDelegate.qml (+412/-0)
plugins/system-update/click/apiclient.h (+67/-0)
plugins/system-update/click/apiclient_impl.cpp (+215/-0)
plugins/system-update/click/apiclient_impl.h (+56/-0)
plugins/system-update/click/manager.h (+67/-0)
plugins/system-update/click/manager_impl.cpp (+562/-0)
plugins/system-update/click/manager_impl.h (+122/-0)
plugins/system-update/click/manifest.h (+47/-0)
plugins/system-update/click/manifest_impl.cpp (+97/-0)
plugins/system-update/click/manifest_impl.h (+47/-0)
plugins/system-update/click/sessiontoken.h (+42/-0)
plugins/system-update/click/sessiontoken_impl.cpp (+48/-0)
plugins/system-update/click/sessiontoken_impl.h (+48/-0)
plugins/system-update/click/sso.h (+56/-0)
plugins/system-update/click/sso_impl.cpp (+55/-0)
plugins/system-update/click/sso_impl.h (+54/-0)
plugins/system-update/click/tokendownloader.h (+74/-0)
plugins/system-update/click/tokendownloader_factory.h (+44/-0)
plugins/system-update/click/tokendownloader_factory_impl.cpp (+36/-0)
plugins/system-update/click/tokendownloader_factory_impl.h (+37/-0)
plugins/system-update/click/tokendownloader_impl.cpp (+81/-0)
plugins/system-update/click/tokendownloader_impl.h (+47/-0)
plugins/system-update/download_tracker.cpp (+0/-204)
plugins/system-update/download_tracker.h (+0/-106)
plugins/system-update/helpers.cpp (+108/-0)
plugins/system-update/helpers.h (+47/-0)
plugins/system-update/image/imagemanager.h (+46/-0)
plugins/system-update/image/imagemanager_impl.cpp (+188/-0)
plugins/system-update/image/imagemanager_impl.h (+67/-0)
plugins/system-update/network.cpp (+0/-314)
plugins/system-update/network.h (+0/-85)
plugins/system-update/network/accessmanager.h (+46/-0)
plugins/system-update/network/accessmanager_impl.cpp (+47/-0)
plugins/system-update/network/accessmanager_impl.h (+41/-0)
plugins/system-update/plugin.cpp (+31/-17)
plugins/system-update/plugin.h (+0/-1)
plugins/system-update/plugin/CMakeLists.txt (+0/-14)
plugins/system-update/plugin/update-plugin.cpp (+0/-98)
plugins/system-update/plugin/update-plugin.h (+0/-39)
plugins/system-update/qmldir (+0/-2)
plugins/system-update/qmldir.in (+2/-0)
plugins/system-update/system_update.cpp (+0/-281)
plugins/system-update/system_update.h (+0/-106)
plugins/system-update/update-notification.settings (+1/-2)
plugins/system-update/update.cpp (+0/-179)
plugins/system-update/update.h (+0/-161)
plugins/system-update/update_manager.cpp (+0/-398)
plugins/system-update/update_manager.h (+0/-181)
plugins/system-update/updatedb.cpp (+418/-0)
plugins/system-update/updatedb.h (+77/-0)
plugins/system-update/updatemanager.cpp (+217/-0)
plugins/system-update/updatemanager.h (+120/-0)
plugins/system-update/updatemodel.cpp (+597/-0)
plugins/system-update/updatemodel.h (+177/-0)
src/CMakeLists.txt (+12/-4)
src/systemimage.cpp (+487/-0)
src/systemimage.h (+196/-0)
tests/CMakeLists.txt (+21/-2)
tests/autopilot/ubuntu_system_settings/__init__.py (+4/-0)
tests/autopilot/ubuntu_system_settings/tests/__init__.py (+29/-1)
tests/autopilot/ubuntu_system_settings/tests/systemimage.py (+71/-37)
tests/autopilot/ubuntu_system_settings/tests/test_system_updates.py (+3/-100)
tests/autopilot/ubuntu_system_settings/utils/mock_update_click_server.py (+74/-28)
tests/mocks/CMakeLists.txt (+1/-0)
tests/mocks/QMenuModel/CMakeLists.txt (+25/-0)
tests/mocks/QMenuModel/QDBusActionGroup.qml (+52/-0)
tests/mocks/QMenuModel/actiondata.h (+54/-0)
tests/mocks/QMenuModel/actionstateparser.cpp (+19/-0)
tests/mocks/QMenuModel/actionstateparser.h (+35/-0)
tests/mocks/QMenuModel/dbus-enums.h (+52/-0)
tests/mocks/QMenuModel/plugin.cpp (+40/-0)
tests/mocks/QMenuModel/plugin.h (+34/-0)
tests/mocks/QMenuModel/qmldir (+4/-0)
tests/mocks/Ubuntu/CMakeLists.txt (+3/-0)
tests/mocks/Ubuntu/Connectivity/CMakeLists.txt (+15/-0)
tests/mocks/Ubuntu/Connectivity/MockNetworkingStatus.cpp (+83/-0)
tests/mocks/Ubuntu/Connectivity/MockNetworkingStatus.h (+78/-0)
tests/mocks/Ubuntu/Connectivity/plugin.cpp (+40/-0)
tests/mocks/Ubuntu/Connectivity/plugin.h (+36/-0)
tests/mocks/Ubuntu/Connectivity/qmldir (+2/-0)
tests/mocks/Ubuntu/DownloadManager/CMakeLists.txt (+17/-0)
tests/mocks/Ubuntu/DownloadManager/MockDownloadManager.cpp (+90/-0)
tests/mocks/Ubuntu/DownloadManager/MockDownloadManager.h (+68/-0)
tests/mocks/Ubuntu/DownloadManager/MockMetadata.cpp (+73/-0)
tests/mocks/Ubuntu/DownloadManager/MockMetadata.h (+64/-0)
tests/mocks/Ubuntu/DownloadManager/MockSingleDownload.cpp (+206/-0)
tests/mocks/Ubuntu/DownloadManager/MockSingleDownload.h (+113/-0)
tests/mocks/Ubuntu/DownloadManager/plugin.cpp (+31/-0)
tests/mocks/Ubuntu/DownloadManager/plugin.h (+31/-0)
tests/mocks/Ubuntu/DownloadManager/qmldir (+2/-0)
tests/mocks/Ubuntu/OnlineAccounts/CMakeLists.txt (+1/-0)
tests/mocks/Ubuntu/OnlineAccounts/Client/CMakeLists.txt (+19/-0)
tests/mocks/Ubuntu/OnlineAccounts/Client/MockSetup.cpp (+59/-0)
tests/mocks/Ubuntu/OnlineAccounts/Client/MockSetup.h (+59/-0)
tests/mocks/Ubuntu/OnlineAccounts/Client/plugin.cpp (+29/-0)
tests/mocks/Ubuntu/OnlineAccounts/Client/plugin.h (+33/-0)
tests/mocks/Ubuntu/OnlineAccounts/Client/qmldir (+2/-0)
tests/mocks/Ubuntu/SystemSettings/CMakeLists.txt (+1/-0)
tests/mocks/Ubuntu/SystemSettings/Update/CMakeLists.txt (+31/-0)
tests/mocks/Ubuntu/SystemSettings/Update/MockSystemImage.cpp (+120/-0)
tests/mocks/Ubuntu/SystemSettings/Update/MockSystemImage.h (+91/-0)
tests/mocks/Ubuntu/SystemSettings/Update/MockUpdateManager.cpp (+48/-0)
tests/mocks/Ubuntu/SystemSettings/Update/MockUpdateManager.h (+39/-0)
tests/mocks/Ubuntu/SystemSettings/Update/MockUpdateModel.cpp (+44/-0)
tests/mocks/Ubuntu/SystemSettings/Update/MockUpdateModel.h (+48/-0)
tests/mocks/Ubuntu/SystemSettings/Update/plugin.cpp (+62/-0)
tests/mocks/Ubuntu/SystemSettings/Update/plugin.h (+33/-0)
tests/mocks/Ubuntu/SystemSettings/Update/qmldir (+2/-0)
tests/mocks/plugins/system-update/fakeapiclient.h (+78/-0)
tests/mocks/plugins/system-update/fakeclickmanager.h (+96/-0)
tests/mocks/plugins/system-update/fakeimagemanager.h (+59/-0)
tests/mocks/plugins/system-update/fakemanifest.h (+52/-0)
tests/mocks/plugins/system-update/fakesessiontoken.h (+53/-0)
tests/mocks/plugins/system-update/fakesso.h (+62/-0)
tests/mocks/plugins/system-update/faketokendownloader.h (+69/-0)
tests/mocks/plugins/system-update/faketokendownloader_factory.h (+52/-0)
tests/mocks/system-image-dbus/fakesystemimagedbus.cpp (+45/-0)
tests/mocks/system-image-dbus/fakesystemimagedbus.h (+64/-0)
tests/plugins/CMakeLists.txt (+35/-6)
tests/plugins/security-privacy/CMakeLists.txt (+1/-1)
tests/plugins/system-update/CMakeLists.txt (+81/-54)
tests/plugins/system-update/Source/qmldir (+9/-0)
tests/plugins/system-update/click.result (+12/-3)
tests/plugins/system-update/fakenetwork.cpp (+0/-50)
tests/plugins/system-update/fakenetwork.h (+0/-60)
tests/plugins/system-update/fakeprocess.cpp (+0/-63)
tests/plugins/system-update/fakeprocess.h (+0/-48)
tests/plugins/system-update/fakessoservice.cpp (+0/-27)
tests/plugins/system-update/fakessoservice.h (+0/-35)
tests/plugins/system-update/fakesystemupdate.cpp (+0/-28)
tests/plugins/system-update/fakesystemupdate.h (+0/-68)
tests/plugins/system-update/mockclickcommand (+15/-0)
tests/plugins/system-update/mockclickserver.h (+57/-0)
tests/plugins/system-update/mockclickserver.py (+220/-0)
tests/plugins/system-update/tst_clickclient.cpp (+165/-0)
tests/plugins/system-update/tst_clickmanager.cpp (+548/-0)
tests/plugins/system-update/tst_clickmanifest.cpp (+100/-0)
tests/plugins/system-update/tst_helpers.cpp (+71/-0)
tests/plugins/system-update/tst_imagemanager.cpp (+269/-0)
tests/plugins/system-update/tst_network.cpp (+0/-58)
tests/plugins/system-update/tst_systemupdate_download_handler.qml (+230/-0)
tests/plugins/system-update/tst_systemupdate_entrycomponent.qml (+108/-0)
tests/plugins/system-update/tst_systemupdate_global.qml (+297/-0)
tests/plugins/system-update/tst_systemupdate_noauthentication.qml (+71/-0)
tests/plugins/system-update/tst_systemupdate_pagecomponent.qml (+388/-0)
tests/plugins/system-update/tst_systemupdate_update.qml (+374/-0)
tests/plugins/system-update/tst_systemupdate_update_visuals.qml (+219/-0)
tests/plugins/system-update/tst_tokendownloader.cpp (+107/-0)
tests/plugins/system-update/tst_update.cpp (+0/-55)
tests/plugins/system-update/tst_updatedb.cpp (+303/-0)
tests/plugins/system-update/tst_updatemanager.cpp (+0/-162)
tests/plugins/system-update/tst_updatemodel.cpp (+681/-0)
tests/tst_systemimage.cpp (+287/-0)
Changed in ubuntu-ux: | |
status: | New → Incomplete |
status: | Incomplete → Triaged |
importance: | Undecided → Medium |
assignee: | nobody → Matthew Paul Thomas (mpt) |
tags: | added: updates |
Changed in ubuntu-system-settings (Ubuntu): | |
importance: | Undecided → Medium |
status: | New → Confirmed |
no longer affects: | ubuntu-ux |
It does seem serialized now, it used to do multiple downloads.