TypeError: _action_done() got an unexpected keyword argument 'trans_failed'
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
update-manager (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Xenial |
Fix Released
|
Undecided
|
Unassigned | ||
Bionic |
Fix Released
|
Undecided
|
Balint Reczey |
Bug Description
[Impact]
Lazy imports made update-manager crash when an update-manager
update changed the backend API and an updated incompatible backend
was loaded to the not updated running update-manager process.
The issue causes crashes upon update-manager updates harming the upgrade experience for users.
The fix avoids lazy loading of the backend modules but still honors the backend selection options.
[Test Case]
1. Start with a fully upgraded system and downgrade a few packages to let u-m upgrade them:
$ sudo eatmydata apt install -y --allow-downgrades gnome-software=
2. Start u-m with:
$ update-manager --no-update
3. Make a syntax error in /usr/lib/
4. Press "Install Now" on u-m GUI.
The fixed u-m will successfully perform the installation, the unfixed one will fail with SyntaxError.
[Regression Potential]
Wrong changes to the backend import/selection logic could make u-m unable to find the available backends, but in my testing the fixed version could properly find both aptdaemon and synaptic when they were present.
[Original Bug Text]
Traceback (most recent call last):
File "/usr/lib/
trans_
TypeError: _action_done() got an unexpected keyword argument 'trans_failed'
Related branches
- Julian Andres Klode: Approve
- Brian Murray: Pending requested
- alex: Pending requested
- Ubuntu Core Development Team: Pending requested
-
Diff: 176 lines (+89/-31)5 files modifiedUpdateManager/backend/InstallBackendAptdaemon.py (+7/-2)
UpdateManager/backend/__init__.py (+26/-6)
debian/changelog (+11/-0)
tests/test_backend_error.py (+45/-0)
tests/test_update_error.py (+0/-23)
- Julian Andres Klode: Approve
- Brian Murray: Pending requested
-
Diff: 221 lines (+102/-36)7 files modifiedUpdateManager/Core/UpdateList.py (+7/-2)
UpdateManager/backend/InstallBackendAptdaemon.py (+7/-2)
UpdateManager/backend/__init__.py (+28/-8)
debian/changelog (+14/-0)
tests/test_backend_error.py (+45/-0)
tests/test_pep8.py (+1/-1)
tests/test_update_error.py (+0/-23)
- Julian Andres Klode: Approve
- Brian Murray: Pending requested
-
Diff: 38 lines (+13/-5)2 files modifiedUpdateManager/backend/InstallBackendAptdaemon.py (+12/-4)
debian/changelog (+1/-1)
- Julian Andres Klode: Approve
- Brian Murray: Pending requested
-
Diff: 38 lines (+13/-5)2 files modifiedUpdateManager/backend/InstallBackendAptdaemon.py (+12/-4)
debian/changelog (+1/-1)
description: | updated |
Status changed to 'Confirmed' because the bug affects multiple users.