Fix the ApplyUpdate() D-Bus API
Bug #1260768 reported by
Barry Warsaw
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Ubuntu system image |
Fix Released
|
High
|
Barry Warsaw | ||
system-image (Ubuntu) |
Fix Released
|
High
|
Barry Warsaw | ||
ubuntu-system-settings (Ubuntu) |
Fix Committed
|
Medium
|
Unassigned |
Bug Description
Bug #1260712 reports the problem where the D-Bus API for ApplyUpdate() was changed but system-settings wasn't prepared to handle the change. During post-mortem discussions, Didier requested that the Rebooting() signal sent by ApplyUpdate() be changed to return an error message string instead of a boolean, with the empty string meaning no error. This bug tracks that request.
Related branches
lp:~barry/ubuntu-system-image/citrain-2.1
- Stéphane Graber: Pending requested
-
Diff: 2123 lines (+901/-146)65 files modifiedMANIFEST.in (+1/-0)
NEWS.rst (+48/-1)
PKG-INFO (+1/-1)
cli-manpage.rst (+1/-1)
dbus-manpage.rst (+1/-1)
debian/changelog (+32/-0)
debian/control (+5/-4)
debian/patches/01_send_ack_on_applyupdate.diff (+0/-16)
debian/patches/lp1284217.patch (+106/-0)
debian/patches/series (+1/-1)
debian/rules (+1/-0)
ini-manpage.rst (+1/-1)
setup.cfg (+2/-2)
setup.py (+1/-1)
system_image.egg-info/PKG-INFO (+1/-1)
system_image.egg-info/SOURCES.txt (+1/-1)
systemimage/api.py (+5/-1)
systemimage/bag.py (+1/-1)
systemimage/bindings.py (+1/-1)
systemimage/candidates.py (+1/-1)
systemimage/channel.py (+1/-1)
systemimage/config.py (+1/-1)
systemimage/dbus.py (+51/-16)
systemimage/device.py (+1/-1)
systemimage/docs/conf.py (+1/-1)
systemimage/download.py (+36/-2)
systemimage/gpg.py (+95/-1)
systemimage/helpers.py (+1/-1)
systemimage/image.py (+1/-1)
systemimage/index.py (+1/-1)
systemimage/keyring.py (+3/-4)
systemimage/logging.py (+29/-8)
systemimage/main.py (+1/-1)
systemimage/reactor.py (+1/-1)
systemimage/reboot.py (+1/-1)
systemimage/scores.py (+1/-1)
systemimage/service.py (+14/-6)
systemimage/settings.py (+1/-1)
systemimage/state.py (+8/-10)
systemimage/testing/controller.py (+17/-8)
systemimage/testing/dbus.py (+8/-2)
systemimage/testing/demo.py (+1/-1)
systemimage/testing/helpers.py (+25/-7)
systemimage/testing/nose.py (+21/-2)
systemimage/tests/data/config_03.ini (+1/-1)
systemimage/tests/data/index_24.json (+36/-0)
systemimage/tests/test_api.py (+1/-1)
systemimage/tests/test_bag.py (+1/-1)
systemimage/tests/test_candidates.py (+1/-1)
systemimage/tests/test_channel.py (+1/-1)
systemimage/tests/test_config.py (+1/-1)
systemimage/tests/test_dbus.py (+98/-8)
systemimage/tests/test_download.py (+1/-1)
systemimage/tests/test_gpg.py (+175/-2)
systemimage/tests/test_helpers.py (+1/-1)
systemimage/tests/test_image.py (+1/-1)
systemimage/tests/test_index.py (+1/-1)
systemimage/tests/test_keyring.py (+20/-5)
systemimage/tests/test_main.py (+25/-1)
systemimage/tests/test_scores.py (+1/-1)
systemimage/tests/test_settings.py (+1/-1)
systemimage/tests/test_state.py (+1/-1)
systemimage/tests/test_winner.py (+1/-1)
systemimage/version.txt (+1/-1)
tox.ini (+1/-1)
lp:~jonas-drange/ubuntu-system-settings/updates-rewrite
- 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 system-image (Ubuntu): | |
assignee: | nobody → Barry Warsaw (barry) |
Changed in ubuntu-system-image: | |
status: | New → Triaged |
importance: | Undecided → High |
assignee: | nobody → Barry Warsaw (barry) |
milestone: | none → 2.1 |
tags: | added: client |
Changed in ubuntu-system-image: | |
status: | Triaged → Fix Committed |
Changed in ubuntu-system-image: | |
status: | Fix Committed → Fix Released |
no longer affects: | ubuntu-system-settings |
Changed in ubuntu-system-settings (Ubuntu): | |
assignee: | Diego Sarmentero (diegosarmentero) → nobody |
Changed in ubuntu-system-settings (Ubuntu): | |
status: | Triaged → Fix Committed |
To post a comment you must log in.
This bug was fixed in the package system-image - 2.1-0ubuntu4
---------------
system-image (2.1-0ubuntu4) trusty; urgency=medium
[ Stéphane Graber ]
* New upstream release.
* Set X-Auto-Uploader to no-rewrite-version
* Set Vcs-Bzr to the new target branch
[ Barry Warsaw ] Status during auto-downloading download- manager to download to a temporary location, DBUS_DAEMON_ HUP_SLEEP_ SECONDS environment variable 01_send_ ack_on_ applyupdate. diff: Removed; applied upstream. lp1284217. patch: Added (see above). DBUS_DAEMON_ HUP_SLEEP_ SECONDS to 1 to deal with
* New upstream release.
- LP: #1279056 - Internal improvements to SignatureError for
better debugging.
- LP: #1277589 - Better protection against race conditions.
- LP: #1260768 - Return empty string from ApplyUpdate D-Bus method.
- LP: #1284217 - Send UpdateAvailable
from a previous CheckForUpdate, if cached status is available.
- Request ubuntu-
with atomic rename.
- More detailed logging.
- Fixed D-Bus error logging.
- Added -L flag to nose2 tests for explicitly setting log file path.
- Added SYSTEMIMAGE_
which can be used to give virtualized buildds a fighting chance.
* d/patches/
* d/patches/
* d/control:
- Bump Standards-Version to 3.9.5 with no other changes necessary.
- Add python3-psutil as Depends to system-image-dev.
* d/rules: Set SYSTEMIMAGE_
buildd dbus-daemon SIGHUP timing issues.
-- Ubuntu daily release <email address hidden> Tue, 25 Feb 2014 17:48:27 +0000