[Bug 1611737] Re: Can't upgrade from a release if ros packages are installed from ROS servers

Brian Murray 1611737 at bugs.launchpad.net
Mon Aug 31 17:39:55 UTC 2020


I downloaded the release-upgrader tarball from
http://archive.ubuntu.com/ubuntu/dists/focal-proposed/main/dist-
upgrader-all/current/ (which is necessary because you can't use do-
release-upgrade with -d and -p). I then tried an upgrade having
installed 'ros-melodic-ros-base' and was presented with the following
message:

The Robot Operating System (ROS) is installed

It appears that ROS is currently installed. Each ROS release is very 
strict about the versions of Ubuntu it supports, and Ubuntu upgrades 
can fail if that guidance isn't followed. Before continuing, please 
either uninstall ROS, or ensure the ROS release you have installed 
supports the version of Ubuntu to which you're upgrading. 

For ROS 1 releases, refer to REP 3: 
https://www.ros.org/reps/rep-0003.html 

For ROS 2 releases, refer to REP 2000: 
https://www.ros.org/reps/rep-2000.html 

Are you sure you want to continue?

So I'm setting the tags to verification-done.

** Tags removed: verification-needed verification-needed-focal
** Tags added: verification-done verification-done-focal

-- 
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/1611737

Title:
  Can't upgrade from a release if ros packages are  installed from ROS
  servers

Status in ubuntu-release-upgrader package in Ubuntu:
  Fix Released
Status in ubuntu-release-upgrader source package in Xenial:
  Confirmed
Status in ubuntu-release-upgrader source package in Bionic:
  Confirmed
Status in ubuntu-release-upgrader source package in Focal:
  Fix Committed
Status in ubuntu-release-upgrader source package in Groovy:
  Fix Released

Bug description:
  [Impact]

   * ROS releases are strict about the Ubuntu releases they support.
  These days a given ROS release only supports one Ubuntu LTS.

   * Attempting to upgrade Ubuntu beyond that supported release at best
  results in an unsupported situation, and at worst is known to break
  the upgrade process as it's possible to get apt into an unrecoverable
  situation.

   * The fix for this issue is to detect if ROS is installed and make
  sure the user is aware that this may not succeed.

  [Test Case]

   * The dependency problems that lead to apt breakage is very deep and
  hard to duplicate, but to paint with a broad brush: if a ROS package
  is installed, extreme caution should be exercised when upgrading as
  it's very likely that it's not supported.

   * To install ROS, follow the proper tutorial for your Ubuntu version, and install the "ros-base" metapackage:
     - Xenial: https://wiki.ros.org/kinetic/Installation/Ubuntu
     - Bionic: https://wiki.ros.org/melodic/Installation/Ubuntu
     - Focal: https://wiki.ros.org/noetic/Installation/Ubuntu

   * Now use ubuntu-release-upgrader to upgrade to the next Ubuntu
  release. Such a thing should not happen without prompting the user
  that ROS is installed and that this may lead to problems.

  [Regression Potential]

   * Detecting that ROS is installed is done with a package name
  heuristic, which isn't perfect. We look for a set of base ROS
  dependencies using a pattern that is unlikely to clash with a non-ROS-
  related package, but it's possible for this to result in a false
  positive. Worst case, the user will be warned that ROS is installed
  when in fact it isn't, but they'll still be able to continue the
  upgrade.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ubuntu-release-upgrader/+bug/1611737/+subscriptions



More information about the foundations-bugs mailing list