[Bug 1848829] Re: distribution upgrade failed due pip install of distro-info
Brian Murray
1848829 at bugs.launchpad.net
Tue Nov 17 22:34:54 UTC 2020
** Description changed:
+ [Impact]
+ Users with a python pip installation of distro-info are not able to upgrade from Ubuntu 18.04 LTS to Ubuntu 20.04 LTS because the pip version of distro-info does not contain information which the Ubuntu version of the package does. More generally, locally installed python packages can interfere with the release upgrade process due to how the process is started.
+
+ [Test Case]
+ The pip version of distro-info which is available Ubuntu 20.04 LTS does not have this problem or is not installable as the distro-info package is a greater version, so this isn't testable there however a regression test should be fine.
+
+ 1) on an Ubuntu 18.04 LTS system install pip
+ 2) pip install distro-info
+ 3) Run do-release-upgrade
+ 4) Observe a crash with a Traceback re distro-info and get_all
+
+ With the versin of the release-upgrader from -proposed you will not
+ experience such a crash.
+
+ [Regression Potential]
+ The change is to start python3 with "-s" which will not add the user side directorty to sys.path. This is a safe change but we should still ensure that upgrades succesfully complete to the next release of Ubuntu. Which should also check and ensure that all packages and snaps are updated.
+
+
+ Original Description
+ --------------------
sudo update-manager -d
- [sudo] password for frazier:
-
- (update-manager:30033): Gtk-WARNING **: 20:09:59.851: Theme parsing
- error: gtk.css:7:26: The style property GtkRange:slider-width is
- deprecated and shouldn't be used anymore. It will be removed in a future
- version
-
- (update-manager:30033): Gtk-WARNING **: 20:09:59.851: Theme parsing
- error: gtk.css:8:26: The style property GtkRange:stepper-size is
- deprecated and shouldn't be used anymore. It will be removed in a future
- version
-
- (update-manager:30033): Gtk-WARNING **: 20:09:59.851: Theme parsing error: gtk.css:45:6: Expected a valid selector
- Checking for a new Ubuntu release
- /usr/lib/python3/dist-packages/DistUpgrade/DistUpgradeFetcher.py:23: PyGIWarning: Gtk was imported without specifying a version first. Use gi.require_version('Gtk', '3.0') before import to ensure that the right version gets loaded.
- from gi.repository import Gtk, Gdk
-
- (do-release-upgrade:2867): Gtk-WARNING **: 20:10:25.756: Theme parsing
- error: gtk.css:7:26: The style property GtkRange:slider-width is
- deprecated and shouldn't be used anymore. It will be removed in a future
- version
-
- (do-release-upgrade:2867): Gtk-WARNING **: 20:10:25.756: Theme parsing
- error: gtk.css:8:26: The style property GtkRange:stepper-size is
- deprecated and shouldn't be used anymore. It will be removed in a future
- version
-
- (do-release-upgrade:2867): Gtk-WARNING **: 20:10:25.756: Theme parsing error: gtk.css:45:6: Expected a valid selector
- /usr/lib/python3/dist-packages/DistUpgrade/ReleaseNotesViewerWebkit.py:33: PyGIWarning: WebKit2 was imported without specifying a version first. Use gi.require_version('WebKit2', '4.0') before import to ensure that the right version gets loaded.
- from gi.repository import WebKit2 as WebKit
-
- (WebKitWebProcess:2883): Gtk-WARNING **: 20:10:25.886: Theme parsing error: gtk.css:45:6: Expected a valid selector
- authenticate 'eoan.tar.gz' against 'eoan.tar.gz.gpg'
- extracting 'eoan.tar.gz'
-
- (eoan:2867): Gtk-WARNING **: 20:10:31.210: Theme parsing error:
- gtk.css:7:26: The style property GtkRange:slider-width is deprecated and
- shouldn't be used anymore. It will be removed in a future version
-
- (eoan:2867): Gtk-WARNING **: 20:10:31.210: Theme parsing error:
- gtk.css:8:26: The style property GtkRange:stepper-size is deprecated and
- shouldn't be used anymore. It will be removed in a future version
+ [sudo] password for frazier:
(eoan:2867): Gtk-WARNING **: 20:10:31.210: Theme parsing error: gtk.css:45:6: Expected a valid selector
Traceback (most recent call last):
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 802, in _prepare_snap_replacement_data
- di.version('%s' % self.controller.fromDist).split()[0]
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 802, in _prepare_snap_replacement_data
+ di.version('%s' % self.controller.fromDist).split()[0]
AttributeError: 'UbuntuDistroInfo' object has no attribute 'version'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
- File "/tmp/ubuntu-release-upgrader-aue69nj7/eoan", line 8, in <module>
- sys.exit(main())
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeMain.py", line 238, in main
- if app.run():
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 2084, in run
- return self.fullUpgrade()
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 1921, in fullUpgrade
- if not self.doPostInitialUpdate():
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 927, in doPostInitialUpdate
- self.quirks.run("PostInitialUpdate")
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 97, in run
- func()
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 129, in eoanPostInitialUpdate
- self._calculateSnapSizeRequirements()
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 459, in _calculateSnapSizeRequirements
- self._prepare_snap_replacement_data()
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 808, in _prepare_snap_replacement_data
- (r.version for r in di.get_all("object")
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/eoan", line 8, in <module>
+ sys.exit(main())
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeMain.py", line 238, in main
+ if app.run():
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 2084, in run
+ return self.fullUpgrade()
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 1921, in fullUpgrade
+ if not self.doPostInitialUpdate():
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 927, in doPostInitialUpdate
+ self.quirks.run("PostInitialUpdate")
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 97, in run
+ func()
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 129, in eoanPostInitialUpdate
+ self._calculateSnapSizeRequirements()
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 459, in _calculateSnapSizeRequirements
+ self._prepare_snap_replacement_data()
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 808, in _prepare_snap_replacement_data
+ (r.version for r in di.get_all("object")
AttributeError: 'UbuntuDistroInfo' object has no attribute 'get_all'
Error in sys.excepthook:
Traceback (most recent call last):
- File "/usr/lib/python3/dist-packages/problem_report.py", line 477, in add_to_existing
- self.write(f)
- File "/usr/lib/python3/dist-packages/problem_report.py", line 430, in write
- block = f.read(1048576)
- File "/usr/lib/python3.7/codecs.py", line 322, in decode
- (result, consumed) = self._buffer_decode(data, self.errors, final)
+ File "/usr/lib/python3/dist-packages/problem_report.py", line 477, in add_to_existing
+ self.write(f)
+ File "/usr/lib/python3/dist-packages/problem_report.py", line 430, in write
+ block = f.read(1048576)
+ File "/usr/lib/python3.7/codecs.py", line 322, in decode
+ (result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x8b in position 1: invalid start byte
Original exception was:
Traceback (most recent call last):
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 802, in _prepare_snap_replacement_data
- di.version('%s' % self.controller.fromDist).split()[0]
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 802, in _prepare_snap_replacement_data
+ di.version('%s' % self.controller.fromDist).split()[0]
AttributeError: 'UbuntuDistroInfo' object has no attribute 'version'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
- File "/tmp/ubuntu-release-upgrader-aue69nj7/eoan", line 8, in <module>
- sys.exit(main())
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeMain.py", line 238, in main
- if app.run():
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 2084, in run
- return self.fullUpgrade()
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 1921, in fullUpgrade
- if not self.doPostInitialUpdate():
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 927, in doPostInitialUpdate
- self.quirks.run("PostInitialUpdate")
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 97, in run
- func()
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 129, in eoanPostInitialUpdate
- self._calculateSnapSizeRequirements()
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 459, in _calculateSnapSizeRequirements
- self._prepare_snap_replacement_data()
- File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 808, in _prepare_snap_replacement_data
- (r.version for r in di.get_all("object")
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/eoan", line 8, in <module>
+ sys.exit(main())
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeMain.py", line 238, in main
+ if app.run():
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 2084, in run
+ return self.fullUpgrade()
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 1921, in fullUpgrade
+ if not self.doPostInitialUpdate():
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 927, in doPostInitialUpdate
+ self.quirks.run("PostInitialUpdate")
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 97, in run
+ func()
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 129, in eoanPostInitialUpdate
+ self._calculateSnapSizeRequirements()
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 459, in _calculateSnapSizeRequirements
+ self._prepare_snap_replacement_data()
+ File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 808, in _prepare_snap_replacement_data
+ (r.version for r in di.get_all("object")
AttributeError: 'UbuntuDistroInfo' object has no attribute 'get_all'
- ProblemType: Bug
- DistroRelease: Ubuntu 19.04
+ ProblemType: BugDistroRelease: Ubuntu 19.04
Package: ubuntu-release-upgrader-core 1:19.04.16.7
ProcVersionSignature: Ubuntu 5.0.0-32.34-generic 5.0.21
Uname: Linux 5.0.0-32-generic x86_64
ApportVersion: 2.20.10-0ubuntu27.1
Architecture: amd64
CrashDB: ubuntu
CurrentDesktop: Unity:Unity7:ubuntu
Date: Fri Oct 18 20:06:04 2019
InstallationDate: Installed on 2018-05-07 (529 days ago)
InstallationMedia: Ubuntu 18.04 LTS "Bionic Beaver" - Release amd64 (20180426)
- PackageArchitecture: all
- SourcePackage: ubuntu-release-upgrader
+ PackageArchitecture: allSourcePackage: ubuntu-release-upgrader
Symptom: ubuntu-release-upgrader
UpgradeStatus: Upgraded to disco on 2019-10-19 (0 days ago)
VarLogDistupgradeAptlog:
- Log time: 2019-10-18 20:02:43.946172
- Log time: 2019-10-18 20:02:52.524168
+ Log time: 2019-10-18 20:02:43.946172
+ Log time: 2019-10-18 20:02:52.524168
VarLogDistupgradeTermlog:
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to ubuntu-release-upgrader in
Ubuntu.
https://bugs.launchpad.net/bugs/1848829
Title:
distribution upgrade failed due pip install of distro-info
Status in ubuntu-release-upgrader package in Ubuntu:
Fix Released
Status in ubuntu-release-upgrader source package in Focal:
In Progress
Status in ubuntu-release-upgrader source package in Groovy:
In Progress
Status in ubuntu-release-upgrader source package in Hirsute:
Fix Released
Bug description:
[Impact]
Users with a python pip installation of distro-info are not able to upgrade from Ubuntu 18.04 LTS to Ubuntu 20.04 LTS because the pip version of distro-info does not contain information which the Ubuntu version of the package does. More generally, locally installed python packages can interfere with the release upgrade process due to how the process is started.
[Test Case]
The pip version of distro-info which is available Ubuntu 20.04 LTS does not have this problem or is not installable as the distro-info package is a greater version, so this isn't testable there however a regression test should be fine.
1) on an Ubuntu 18.04 LTS system install pip
2) pip install distro-info
3) Run do-release-upgrade
4) Observe a crash with a Traceback re distro-info and get_all
With the versin of the release-upgrader from -proposed you will not
experience such a crash.
[Regression Potential]
The change is to start python3 with "-s" which will not add the user side directorty to sys.path. This is a safe change but we should still ensure that upgrades succesfully complete to the next release of Ubuntu. Which should also check and ensure that all packages and snaps are updated.
Original Description
--------------------
sudo update-manager -d
[sudo] password for frazier:
(eoan:2867): Gtk-WARNING **: 20:10:31.210: Theme parsing error: gtk.css:45:6: Expected a valid selector
Traceback (most recent call last):
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 802, in _prepare_snap_replacement_data
di.version('%s' % self.controller.fromDist).split()[0]
AttributeError: 'UbuntuDistroInfo' object has no attribute 'version'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/tmp/ubuntu-release-upgrader-aue69nj7/eoan", line 8, in <module>
sys.exit(main())
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeMain.py", line 238, in main
if app.run():
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 2084, in run
return self.fullUpgrade()
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 1921, in fullUpgrade
if not self.doPostInitialUpdate():
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 927, in doPostInitialUpdate
self.quirks.run("PostInitialUpdate")
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 97, in run
func()
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 129, in eoanPostInitialUpdate
self._calculateSnapSizeRequirements()
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 459, in _calculateSnapSizeRequirements
self._prepare_snap_replacement_data()
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 808, in _prepare_snap_replacement_data
(r.version for r in di.get_all("object")
AttributeError: 'UbuntuDistroInfo' object has no attribute 'get_all'
Error in sys.excepthook:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/problem_report.py", line 477, in add_to_existing
self.write(f)
File "/usr/lib/python3/dist-packages/problem_report.py", line 430, in write
block = f.read(1048576)
File "/usr/lib/python3.7/codecs.py", line 322, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf-8' codec can't decode byte 0x8b in position 1: invalid start byte
Original exception was:
Traceback (most recent call last):
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 802, in _prepare_snap_replacement_data
di.version('%s' % self.controller.fromDist).split()[0]
AttributeError: 'UbuntuDistroInfo' object has no attribute 'version'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/tmp/ubuntu-release-upgrader-aue69nj7/eoan", line 8, in <module>
sys.exit(main())
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeMain.py", line 238, in main
if app.run():
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 2084, in run
return self.fullUpgrade()
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 1921, in fullUpgrade
if not self.doPostInitialUpdate():
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeController.py", line 927, in doPostInitialUpdate
self.quirks.run("PostInitialUpdate")
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 97, in run
func()
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 129, in eoanPostInitialUpdate
self._calculateSnapSizeRequirements()
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 459, in _calculateSnapSizeRequirements
self._prepare_snap_replacement_data()
File "/tmp/ubuntu-release-upgrader-aue69nj7/DistUpgrade/DistUpgradeQuirks.py", line 808, in _prepare_snap_replacement_data
(r.version for r in di.get_all("object")
AttributeError: 'UbuntuDistroInfo' object has no attribute 'get_all'
ProblemType: BugDistroRelease: Ubuntu 19.04
Package: ubuntu-release-upgrader-core 1:19.04.16.7
ProcVersionSignature: Ubuntu 5.0.0-32.34-generic 5.0.21
Uname: Linux 5.0.0-32-generic x86_64
ApportVersion: 2.20.10-0ubuntu27.1
Architecture: amd64
CrashDB: ubuntu
CurrentDesktop: Unity:Unity7:ubuntu
Date: Fri Oct 18 20:06:04 2019
InstallationDate: Installed on 2018-05-07 (529 days ago)
InstallationMedia: Ubuntu 18.04 LTS "Bionic Beaver" - Release amd64 (20180426)
PackageArchitecture: allSourcePackage: ubuntu-release-upgrader
Symptom: ubuntu-release-upgrader
UpgradeStatus: Upgraded to disco on 2019-10-19 (0 days ago)
VarLogDistupgradeAptlog:
Log time: 2019-10-18 20:02:43.946172
Log time: 2019-10-18 20:02:52.524168
VarLogDistupgradeTermlog:
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ubuntu-release-upgrader/+bug/1848829/+subscriptions
More information about the foundations-bugs
mailing list