Merge lp://staging/~jonas-drange/ubuntu-system-settings/updates-rewrite into lp://staging/ubuntu-system-settings
Status: | Merged |
---|---|
Approved by: | Ken VanDine |
Approved revision: | 1876 |
Merged at revision: | 1696 |
Proposed branch: | lp://staging/~jonas-drange/ubuntu-system-settings/updates-rewrite |
Merge into: | lp://staging/ubuntu-system-settings |
Prerequisite: | lp://staging/~jonas-drange/ubuntu-system-settings/makeqmltest |
Diff against target: |
19868 lines (+13831/-3824) 170 files modified
debian/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) |
To merge this branch: | bzr merge lp://staging/~jonas-drange/ubuntu-system-settings/updates-rewrite |
Related bugs: |
|
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
system-apps-ci-bot | continuous-integration | Needs Fixing | |
Ken VanDine | Needs Fixing | ||
Matthew Paul Thomas | design | Pending | |
PS Jenkins bot | continuous-integration | Pending | |
Review via email: mp+301565@code.staging.launchpad.net |
Commit message
rewrite the system update panel
Description of the change
Overview
=======
* Ubuntu.
* Stores updates persistently to provide a better experience.
* Higher test coverage of both C++ and QML systems.
* Implements newer visual designs and specs
* Shows installed updates.
Bugs fixed
=======
* Bug 1387200: We now use mvc magic to make sure repaints does not obliterate any progress/statuses etc.
* Bug 1282499: We now present it attractively (per visual design).
* Bug 1419803: System Image download stalls
* Bug 1567877: Unreliable app installations (we no longer implement our own bindings)
* Bug 1260768: Use ApplyUpdate correctly (we now do)
* Bug 1416518: System Image download stalls. Should be fixed by calling DownloadUpdate if a user has previously started one. The old system-update code could not know this, but we can (via the database).
* Bug 1489389: Reads the boolean return value of the Rebooting() signal and allows the user to retry if it failed.
* Bug 1522248: Fixed, but the string is hidden due to string freeze.
* Bug 1562987: We now have some animation, it might still need more work, though.
* Bug 1572143: Don't hide SI downloads when on cellular data. Always show them.
* Bug 1272313: Add a Stop button (named Cancel due to string freeze) that stops all checks.
* Bug 1353125: Using a database allows us to make better assertions as to the state of updates after they have started.
* Bug 1409069: Partial fix, as we now show the amount of both SI updates and click updates if we know it.
* Bug 1494699: We now show changelogs.
Checklist
=======
* Is your branch in sync with latest trunk (e.g. bzr pull lp:trunk -> no changes)
Yes
* Did you build your software in a clean sbuild/pbuilder chroot or ppa?
Yes
* Did you build your software in a clean sbuild/pbuilder armhf chroot or ppa?
Yes
* Has your component "TestPlan” been executed successfully on emulator, N4?
Not yet
* Has a 5 minute exploratory testing run been executed on N4?
N/A
* If you changed the packaging (debian), did you subscribe a core-dev to this MP?
Ken will look at it. I've added libubuntu-
* If you changed the UI, did you subscribe the design-reviewers to this MP?
Yes
* What components might get impacted by your changes?
- The About panel as it no longer uses the System Update plugin to read System Image properties (like version, update date etc).
- The System Update panel has been almost entirely re-written.
* Have you requested review by the teams of these owning components?
N/A
FAILED: Continuous integration, rev:1796 /jenkins. canonical. com/system- apps/job/ lp-ubuntu- system- settings- ci/61/ /jenkins. canonical. com/system- apps/job/ build/1078/ console /jenkins. canonical. com/system- apps/job/ build-0- fetch/1078 /jenkins. canonical. com/system- apps/job/ build-1- sourcepkg/ release= vivid+overlay/ 975 /jenkins. canonical. com/system- apps/job/ build-1- sourcepkg/ release= xenial+ overlay/ 975 /jenkins. canonical. com/system- apps/job/ build-1- sourcepkg/ release= yakkety/ 975 /jenkins. canonical. com/system- apps/job/ build-2- binpkg/ arch=amd64, release= vivid+overlay/ 964/console /jenkins. canonical. com/system- apps/job/ build-2- binpkg/ arch=amd64, release= xenial+ overlay/ 964/console /jenkins. canonical. com/system- apps/job/ build-2- binpkg/ arch=amd64, release= yakkety/ 964/console /jenkins. canonical. com/system- apps/job/ build-2- binpkg/ arch=armhf, release= vivid+overlay/ 964/console /jenkins. canonical. com/system- apps/job/ build-2- binpkg/ arch=armhf, release= xenial+ overlay/ 964/console /jenkins. canonical. com/system- apps/job/ build-2- binpkg/ arch=armhf, release= yakkety/ 964/console /jenkins. canonical. com/system- apps/job/ build-2- binpkg/ arch=i386, release= vivid+overlay/ 964/console /jenkins. canonical. com/system- apps/job/ build-2- binpkg/ arch=i386, release= xenial+ overlay/ 964/console /jenkins. canonical. com/system- apps/job/ build-2- binpkg/ arch=i386, release= yakkety/ 964/console
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
Click here to trigger a rebuild: /jenkins. canonical. com/system- apps/job/ lp-ubuntu- system- settings- ci/61/rebuild
https:/