confusing error message with 'do-release-upgrade -d' and Prompt=lts

Bug #1798618 reported by Steve Langasek on 2018-10-18
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
ubuntu-release-upgrader (Ubuntu)
Medium
Brian Murray
Bionic
Medium
Unassigned
Cosmic
Medium
Brian Murray
update-manager (Ubuntu)
Undecided
Brian Murray
Bionic
Undecided
Brian Murray
Cosmic
Medium
Brian Murray

Bug Description

Impact
------
A confusing error message is returned if Prompt=lts is set and 'do-release-upgrade -d' is run.

Test Case
---------
N.B. The changed code will never be reached on an 18.10 unless you hack line 236 of /usr/lib/python3/dist-packages/UpdateManager/Core/MetaRelease.py so that "self.new_dist = None'".

1) set Prompt=lts in /etc/update-manager/release-upgrades
2) run do-release-upgrade -d
3) Observe the error from the original description

With versions of update-manager and ubuntu-release-upgrader (which depends on the changes in update-manager) from -proposed you will instead see a message about "no development version of an LTS available" and details about how to modify Prompt.

Also note there is no independent test case for update-manager as it is now just exporting a new variable which is used by ubuntu-release-upgrader.

Original Description
--------------------
On a bionic system with Prompt=lts set in /etc/update-manager/release-upgrades, 'do-release-upgrade -d' fails with:

$ sudo do-release-upgrade -d
Checking for a new Ubuntu release
Upgrades to the development release are only
available from the latest supported release.
$ echo $?
1
$

The refusal to upgrade is correct, but the message it gives is incorrect and gives no hint how to fix.

Since bionic is the latest release listed in https://changelogs.ubuntu.com/meta-release-lts *and* in https://changelogs.ubuntu.com/meta-release-lts-development, a more accurate explanation would be:
   There is no development version of an LTS release available.
   To upgrade to the latest non-LTS development release, set Prompt=normal.

Steve Langasek (vorlon) on 2018-10-18
Changed in ubuntu-release-upgrader (Ubuntu):
importance: Undecided → Critical
importance: Critical → Medium
Changed in ubuntu-release-upgrader (Ubuntu):
status: New → Triaged
Changed in ubuntu-release-upgrader (Ubuntu Bionic):
status: New → Triaged
importance: Undecided → Medium
tags: added: bionic rls-dd-incoming
Changed in ubuntu-release-upgrader (Ubuntu):
status: Triaged → In Progress
assignee: nobody → Brian Murray (brian-murray)
Changed in update-manager (Ubuntu):
status: New → In Progress
assignee: nobody → Brian Murray (brian-murray)
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package update-manager - 1:19.04.2

---------------
update-manager (1:19.04.2) disco; urgency=medium

  * UpdateManager/Core/MetaRelease.py: set prompt in MetaReleaseCore so that
    do-release-upgrade can provide more informative error messages.
    (LP: #1798618, LP: #1795024)

 -- Brian Murray <email address hidden> Wed, 28 Nov 2018 09:49:44 -0800

Changed in update-manager (Ubuntu):
status: In Progress → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-release-upgrader - 1:19.04.7

---------------
ubuntu-release-upgrader (1:19.04.7) disco; urgency=medium

  [ Brian Murray ]
  * DistUpgrade/DistUpgradeCache.py: When calculating free space needed for
    mount points don't use a negative number as the buffer. (LP: #1786484)
  * fix more typos re RELEASE_UPRADER_ALLOW_THIRD_PARTY
  * DistUpgrade/DistUpgradeCache.py: When calculating free space needed for
    mount points don't use a negative number as the buffer. (LP: #1786484)
  * fix more typos re RELEASE_UPRADER_ALLOW_THIRD_PARTY
  * DistUpgrade/DistUpgradeController.py: When rewriting sources.list entries
    check to see if the source provides packages for the release to which the
    upgrade is occurring. If it doesn't the entry is disabled thereby
    improving upgrades with PPAs. (LP: #1807043)
  * do-release-upgrade: add a parameter to allow third party mirrors and
    repositories, additionally pass along the environmental variable
    RELEASE_UPGRADER_ALLOW_THIRD_PARTY via pkexec and sudo. (LP: #1807032)
  * DistUpgrade/DistUpgradeCache.py: improve messaging regarding failures to
    calculate the upgrade and suggest using ppa-purge if PPAs are an issue.
  * DistUpgrade/DistUpgradeCache.py: in the event there is a failure to
    calculate the upgrade provide information about the log files in
    /var/log/dist-upgrade. (LP: #1771387)

  [ Jeremy Bicha ]
  * autopkgtest: Update dependency from gir1.2-webkit-3.0 to gir1.2-webkit2-4.0

 -- Brian Murray <email address hidden> Tue, 11 Dec 2018 15:35:34 -0800

Changed in ubuntu-release-upgrader (Ubuntu):
status: In Progress → Fix Released
Changed in ubuntu-release-upgrader (Ubuntu Cosmic):
status: New → Triaged
importance: Undecided → Medium
Changed in update-manager (Ubuntu Cosmic):
status: New → Triaged
importance: Undecided → Medium
Changed in update-manager (Ubuntu Bionic):
status: New → In Progress
Changed in update-manager (Ubuntu Cosmic):
status: Triaged → In Progress
Changed in update-manager (Ubuntu Bionic):
assignee: nobody → Brian Murray (brian-murray)
Changed in update-manager (Ubuntu Cosmic):
assignee: nobody → Brian Murray (brian-murray)
description: updated
Changed in ubuntu-release-upgrader (Ubuntu Cosmic):
status: Triaged → In Progress
assignee: nobody → Brian Murray (brian-murray)

Hello Steve, or anyone else affected,

Accepted update-manager into cosmic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/update-manager/1:18.10.10.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-cosmic to verification-done-cosmic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-cosmic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in update-manager (Ubuntu Cosmic):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-cosmic
Łukasz Zemczak (sil2100) wrote :

Hello Steve, or anyone else affected,

Accepted ubuntu-release-upgrader into cosmic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/ubuntu-release-upgrader/1:18.10.11.4 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-cosmic to verification-done-cosmic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-cosmic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in ubuntu-release-upgrader (Ubuntu Cosmic):
status: In Progress → Fix Committed
Changed in update-manager (Ubuntu Bionic):
status: In Progress → Fix Committed
tags: added: verification-needed-bionic
Łukasz Zemczak (sil2100) wrote :

Hello Steve, or anyone else affected,

Accepted update-manager into bionic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/update-manager/1:18.04.11.9 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-bionic to verification-done-bionic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-bionic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Łukasz Zemczak (sil2100) wrote :

Hello Steve, or anyone else affected,

Accepted ubuntu-release-upgrader into bionic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/ubuntu-release-upgrader/1:18.04.30 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-bionic to verification-done-bionic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-bionic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in ubuntu-release-upgrader (Ubuntu Bionic):
status: Triaged → Fix Committed
Brian Murray (brian-murray) wrote :

I tested this on a bionic system and saw the new error message.

bdmurray@clean-bionic-amd64:~$ tail -n1 /etc/update-manager/release-upgrades
Prompt=lts
bdmurray@clean-bionic-amd64:~$ apt-cache policy ubuntu-release-upgrader-core
ubuntu-release-upgrader-core:
  Installed: 1:18.04.30
  Candidate: 1:18.04.30
  Version table:
 *** 1:18.04.30 100
        100 /var/lib/dpkg/status
     1:18.04.29 500
        500 http://192.168.10.7/ubuntu bionic-updates/main amd64 Packages
        500 http://192.168.10.7/ubuntu bionic-updates/main i386 Packages
     1:18.04.17 500
        500 http://192.168.10.7/ubuntu bionic/main amd64 Packages
        500 http://192.168.10.7/ubuntu bionic/main i386 Packages
bdmurray@clean-bionic-amd64:~$ do-release-upgrade
Checking for a new Ubuntu release
There is no development version of an LTS available.
To upgrade to the latest non-LTS develoment release
set Prompt=normal in /etc/update-manager/release-upgrades.

tags: added: verification-done-bionic
removed: verification-needed-bionic
Brian Murray (brian-murray) wrote :

I tested this on cosmic using the well written test case from the bug description and confirm that the fix works.

bdmurray@clean-cosmic-amd64:~$ tail -n1 /etc/update-manager/release-upgrades
Prompt=lts
bdmurray@clean-cosmic-amd64:~$ apt-cache policy ubuntu-release-upgrader-core
ubuntu-release-upgrader-core:
  Installed: 1:18.10.11.4
  Candidate: 1:18.10.11.4
  Version table:
 *** 1:18.10.11.4 500
        500 http://192.168.10.7/ubuntu cosmic-proposed/main amd64 Packages
        500 http://192.168.10.7/ubuntu cosmic-proposed/main i386 Packages
        100 /var/lib/dpkg/status
     1:18.10.11.3 500
        500 http://192.168.10.7/ubuntu cosmic-updates/main amd64 Packages
        500 http://192.168.10.7/ubuntu cosmic-updates/main i386 Packages
     1:18.10.11 500
        500 http://192.168.10.7/ubuntu cosmic/main amd64 Packages
        500 http://192.168.10.7/ubuntu cosmic/main i386 Packages
bdmurray@clean-cosmic-amd64:~$ do-release-upgrade -d
Checking for a new Ubuntu release
There is no development version of an LTS available.
To upgrade to the latest non-LTS develoment release
set Prompt=normal in /etc/update-manager/release-upgrades.

Although the error message does not appear to be so well written as it is missing a 'p'. I'm still setting it to verification-done though.

tags: added: verification-done verification-done-cosmic
removed: verification-needed verification-needed-cosmic
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package update-manager - 1:18.10.10.1

---------------
update-manager (1:18.10.10.1) cosmic; urgency=medium

  * UpdateManager/Core/MetaRelease.py: set prompt in MetaReleaseCore so that
    do-release-upgrade can provide more informative error messages.
    (LP: #1798618, LP: #1795024)

 -- Brian Murray <email address hidden> Mon, 14 Jan 2019 13:37:11 -0800

Changed in update-manager (Ubuntu Cosmic):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for update-manager has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-release-upgrader - 1:18.10.11.4

---------------
ubuntu-release-upgrader (1:18.10.11.4) cosmic; urgency=medium

  [ Brian Murray ]
  * data/release-upgrades: Clarify documentation regarding the behavior for
    different Prompt settings. (LP: #1795024)
  * do-release-upgrade: Utilize information regarding what Prompt is set to so
    that a more informative error message can be displayed.
    (LP: #1798618, LP: #1795024)

  [ Andrea Azzarone ]
  * DistUpgrade/DistUpgradeView.py,
    DistUpgrade/DistUpgradeViewGtk3.py,
    DistUpgrade/DistUpgradeViewKDE.py,
    DistUpgrade/DistUpgradeViewNonInteractive.py,
    DistUpgrade/DistUpgradeViewText.py:
    - add askCancelContinueQuestion for all the supported views.
  * DistUpgrade/DistUpgradeController.py: Ask for confirmation if Livepatch
    is turned on, and you are upgrading to a version where Livepatch is not
    available. (LP: #1799310)
  * debian/control: add an explicit python3-distro-info dependency to
    python3-distupgrade as it is now required by DistUpgradeController.

 -- Brian Murray <email address hidden> Mon, 21 Jan 2019 11:48:53 -0800

Changed in ubuntu-release-upgrader (Ubuntu Cosmic):
status: Fix Committed → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package update-manager - 1:18.04.11.9

---------------
update-manager (1:18.04.11.9) bionic; urgency=medium

  * UpdateManager/Core/MetaRelease.py: set prompt in MetaReleaseCore so that
    do-release-upgrade can provide more informative error messages.
    (LP: #1798618, LP: #1795024)

 -- Brian Murray <email address hidden> Mon, 14 Jan 2019 13:40:08 -0800

Changed in update-manager (Ubuntu Bionic):
status: Fix Committed → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package ubuntu-release-upgrader - 1:18.04.30

---------------
ubuntu-release-upgrader (1:18.04.30) bionic; urgency=medium

  * data/release-upgrades: Clarify documentation regarding the behavior for
    different Prompt settings. (LP: #1795024)
  * do-release-upgrade: Utilize information regarding what Prompt is set to so
    that a more informative error message can be displayed.
    (LP: #1798618, LP: #1795024)
  * DistUpgrade/DistUpgradeCache.py: When calculating free space needed for
    mount points don't use a negative number as the buffer. (LP: #1786484)
  * fix more typos re RELEASE_UPRADER_ALLOW_THIRD_PARTY
  * DistUpgrade/DistUpgradeController.py: When rewriting sources.list entries
    check to see if the source provides packages for the release to which the
    upgrade is occurring. If it doesn't the entry is disabled thereby
    improving upgrades with PPAs. (LP: #1807043)
  * do-release-upgrade: add a parameter to allow third party mirrors and
    repositories, additionally pass along the environmental variable
    RELEASE_UPGRADER_ALLOW_THIRD_PARTY via pkexec and sudo. (LP: #1807032)
  * DistUpgrade/DistUpgradeCache.py: improve messaging regarding failures to
    calculate the upgrade and suggest using ppa-purge if PPAs are an issue.
  * DistUpgrade/DistUpgradeCache.py: in the event there is a failure to
    calculate the upgrade provide information about the log files in
    /var/log/dist-upgrade. (LP: #1771387)
  * debian/source_ubuntu-release-upgrader.py: Include xorg_fixup.log if it
    exists.
  * DistUpgrade/xorg_fix_proprietary.py: modify how the system is checked to
    see if nvidia is being used, drop fglrx check since it has been
    deprecated. (LP: #1773637)

 -- Brian Murray <email address hidden> Wed, 16 Jan 2019 15:53:58 -0800

Changed in ubuntu-release-upgrader (Ubuntu Bionic):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers