Source: python2.7 Version: 2.7.18-6 Severity: important Tags: patch Hi,
the previously added Breaks (against python-minimal and libpython-stdlib) fixed many upgrade paths, but against unversioned 'python' there is only a transitive conflict (due to unsatifiable strict versioned dependencies) and that does not work out for all upgrade paths. So let's add 'python (<< 2.7.18)' to the list of Breaks to catch these cases as well. Example: rambo-k Bad (incomplete) upgrade: Starting 2 pkgProblemResolver with broken count: 6 Investigating (0) python2.7:amd64 < 2.7.16-2+deb10u1 -> 2.7.18-6 @ii umU Ib > Broken python2.7:amd64 Breaks on libpython-stdlib:amd64 < 2.7.16-1 @ii mK Ib > (< 2.7.18) Considering libpython-stdlib:amd64 3 as a solution to python2.7:amd64 14 Added libpython-stdlib:amd64 to the remove list Broken python2.7:amd64 Breaks on python-minimal:amd64 < 2.7.16-1 @ii mK Ib > (< 2.7.18) Considering python-minimal:amd64 3 as a solution to python2.7:amd64 14 Added python-minimal:amd64 to the remove list Fixing python2.7:amd64 via remove of libpython-stdlib:amd64 Fixing python2.7:amd64 via remove of python-minimal:amd64 Investigating (0) python:amd64 < 2.7.16-1 @ii mK Ib > Broken python:amd64 PreDepends on python-minimal:amd64 < 2.7.16-1 @ii mR > (= 2.7.16-1) Considering python-minimal:amd64 3 as a solution to python:amd64 11 Added python-minimal:amd64 to the remove list Broken python:amd64 Depends on libpython-stdlib:amd64 < 2.7.16-1 @ii mR > (= 2.7.16-1) Considering libpython-stdlib:amd64 3 as a solution to python:amd64 11 Added libpython-stdlib:amd64 to the remove list Broken python:amd64 Depends on python2:amd64 < 2.7.16-1 -> 2.7.18-2 @ii umU > (= 2.7.16-1) Considering python2:amd64 9 as a solution to python:amd64 11 Added python2:amd64 to the remove list Fixing python:amd64 via keep of python-minimal:amd64 Fixing python:amd64 via keep of libpython-stdlib:amd64 Fixing python:amd64 via keep of python2:amd64 Try to Re-Instate (0) python2:amd64 Re-Instated python2:amd64 (6 vs 6) Investigating (0) libpython2.7-minimal:amd64 < 2.7.16-2+deb10u1 -> 2.7.18-6 @ii umU Ib > Broken libpython2.7-minimal:amd64 Breaks on libpython-stdlib:amd64 < 2.7.16-1 @ii mK Ib > (< 2.7.18) Considering libpython-stdlib:amd64 3 as a solution to libpython2.7-minimal:amd64 9 Added libpython-stdlib:amd64 to the remove list Broken libpython2.7-minimal:amd64 Breaks on python-minimal:amd64 < 2.7.16-1 @ii mK Ib > (< 2.7.18) Considering python-minimal:amd64 3 as a solution to libpython2.7-minimal:amd64 9 Added python-minimal:amd64 to the remove list Fixing libpython2.7-minimal:amd64 via remove of libpython-stdlib:amd64 Fixing libpython2.7-minimal:amd64 via remove of python-minimal:amd64 Investigating (1) python:amd64 < 2.7.16-1 @ii mK Ib > Broken python:amd64 PreDepends on python-minimal:amd64 < 2.7.16-1 @ii mR > (= 2.7.16-1) Considering python-minimal:amd64 3 as a solution to python:amd64 11 Added python-minimal:amd64 to the remove list Broken python:amd64 Depends on libpython-stdlib:amd64 < 2.7.16-1 @ii mR > (= 2.7.16-1) Considering libpython-stdlib:amd64 3 as a solution to python:amd64 11 Added libpython-stdlib:amd64 to the remove list Broken python:amd64 Depends on python2:amd64 < 2.7.16-1 -> 2.7.18-2 @ii umU > (= 2.7.16-1) Considering python2:amd64 9 as a solution to python:amd64 11 Added python2:amd64 to the remove list Fixing python:amd64 via keep of python-minimal:amd64 Fixing python:amd64 via keep of libpython-stdlib:amd64 Fixing python:amd64 via keep of python2:amd64 Investigating (1) python2:amd64 < 2.7.16-1 | 2.7.18-2 @ii umH Ib > Broken python2:amd64 PreDepends on python2-minimal:amd64 < 2.7.16-1 -> 2.7.18-2 @ii umU > (= 2.7.16-1) Considering python2-minimal:amd64 2 as a solution to python2:amd64 9 Added python2-minimal:amd64 to the remove list Broken python2:amd64 Depends on libpython2-stdlib:amd64 < 2.7.16-1 -> 2.7.18-2 @ii umU > (= 2.7.16-1) Considering libpython2-stdlib:amd64 2 as a solution to python2:amd64 9 Added libpython2-stdlib:amd64 to the remove list Fixing python2:amd64 via keep of python2-minimal:amd64 Fixing python2:amd64 via keep of libpython2-stdlib:amd64 Investigating (1) libpython2.7-minimal:amd64 < 2.7.16-2+deb10u1 -> 2.7.18-6 @ii umU Ib > Broken libpython2.7-minimal:amd64 Breaks on libpython-stdlib:amd64 < 2.7.16-1 @ii mK > (< 2.7.18) Considering libpython-stdlib:amd64 3 as a solution to libpython2.7-minimal:amd64 9 Added libpython-stdlib:amd64 to the remove list Broken libpython2.7-minimal:amd64 Breaks on python-minimal:amd64 < 2.7.16-1 @ii mK > (< 2.7.18) Considering python-minimal:amd64 3 as a solution to libpython2.7-minimal:amd64 9 Added python-minimal:amd64 to the remove list Fixing libpython2.7-minimal:amd64 via remove of libpython-stdlib:amd64 Fixing libpython2.7-minimal:amd64 via remove of python-minimal:amd64 Try to Re-Instate (1) python2-minimal:amd64 Try to Re-Instate (1) libpython2-stdlib:amd64 Investigating (2) python:amd64 < 2.7.16-1 @ii mK Ib > Broken python:amd64 PreDepends on python-minimal:amd64 < 2.7.16-1 @ii mR > (= 2.7.16-1) Considering python-minimal:amd64 3 as a solution to python:amd64 11 Added python-minimal:amd64 to the remove list Broken python:amd64 Depends on libpython-stdlib:amd64 < 2.7.16-1 @ii mR > (= 2.7.16-1) Considering libpython-stdlib:amd64 3 as a solution to python:amd64 11 Added libpython-stdlib:amd64 to the remove list Fixing python:amd64 via keep of python-minimal:amd64 Fixing python:amd64 via keep of libpython-stdlib:amd64 Investigating (2) libpython2.7-minimal:amd64 < 2.7.16-2+deb10u1 -> 2.7.18-6 @ii umU Ib > Broken libpython2.7-minimal:amd64 Breaks on libpython-stdlib:amd64 < 2.7.16-1 @ii mK > (< 2.7.18) Considering libpython-stdlib:amd64 11 as a solution to libpython2.7-minimal:amd64 9 Holding Back libpython2.7-minimal:amd64 rather than change libpython-stdlib:amd64 Investigating (2) python2.7-minimal:amd64 < 2.7.16-2+deb10u1 -> 2.7.18-6 @ii umU Ib > Broken python2.7-minimal:amd64 Depends on libpython2.7-minimal:amd64 < 2.7.16-2+deb10u1 | 2.7.18-6 @ii umH > (= 2.7.18-6) Considering libpython2.7-minimal:amd64 9 as a solution to python2.7-minimal:amd64 7 Holding Back python2.7-minimal:amd64 rather than change libpython2.7-minimal:amd64 Investigating (3) python2.7:amd64 < 2.7.16-2+deb10u1 -> 2.7.18-6 @ii umU Ib > Broken python2.7:amd64 Depends on python2.7-minimal:amd64 < 2.7.16-2+deb10u1 | 2.7.18-6 @ii umH > (= 2.7.18-6) Considering python2.7-minimal:amd64 7 as a solution to python2.7:amd64 14 Removing python2.7:amd64 rather than change python2.7-minimal:amd64 Investigating (3) python:amd64 < 2.7.16-1 @ii mK Ib > Broken python:amd64 Depends on python2.7:amd64 < 2.7.16-2+deb10u1 | 2.7.18-6 @ii umR > (>= 2.7.16-1~) Considering python2.7:amd64 14 as a solution to python:amd64 11 Removing python:amd64 rather than change python2.7:amd64 Investigating (3) libpython2.7-stdlib:amd64 < 2.7.16-2+deb10u1 -> 2.7.18-6 @ii umU Ib > Broken libpython2.7-stdlib:amd64 Depends on libpython2.7-minimal:amd64 < 2.7.16-2+deb10u1 | 2.7.18-6 @ii umH > (= 2.7.18-6) Considering libpython2.7-minimal:amd64 9 as a solution to libpython2.7-stdlib:amd64 10 Holding Back libpython2.7-stdlib:amd64 rather than change libpython2.7-minimal:amd64 Investigating (3) python2:amd64 < 2.7.16-1 | 2.7.18-2 @ii umH Ib > Broken python2:amd64 Depends on python2.7:amd64 < 2.7.16-2+deb10u1 | 2.7.18-6 @ii umR > (>= 2.7.16-1~) Considering python2.7:amd64 14 as a solution to python2:amd64 9 Removing python2:amd64 rather than change python2.7:amd64 Try to Re-Instate (3) libpython2.7-minimal:amd64 Try to Re-Instate (3) python2.7-minimal:amd64 Investigating (3) python-pkg-resources:amd64 < 40.8.0-1 -> 44.1.1-1 @ii umU Ib > Broken python-pkg-resources:amd64 Depends on python2:any:any < none @un H > (< 2.8) Considering python2:amd64 14 as a solution to python-pkg-resources:amd64 3 Removing python-pkg-resources:amd64 rather than change python2:any:any Investigating (3) python-numpy:amd64 < 1:1.16.2-1 @ii mK Ib > Broken python-numpy:amd64 Depends on python:amd64 < 2.7.16-1 @ii mR > (< 2.8) Considering python:amd64 14 as a solution to python-numpy:amd64 2 Removing python-numpy:amd64 rather than change python:amd64 Investigating (3) python-scipy:amd64 < 1.1.0-7 @ii mK Ib > Broken python-scipy:amd64 Depends on python-numpy:amd64 < 1:1.16.2-1 @ii mR > (>= 1:1.16.0~rc1) Considering python-numpy:amd64 14 as a solution to python-scipy:amd64 -1 Removing python-scipy:amd64 rather than change python-numpy:amd64 Investigating (3) python-joblib:amd64 < 0.13.0-2 @ii mK Ib > Broken python-joblib:amd64 Depends on python:amd64 < 2.7.16-1 @ii mR > (< 2.8) Considering python:amd64 14 as a solution to python-joblib:amd64 -1 Removing python-joblib:amd64 rather than change python:amd64 Investigating (3) python-decorator:amd64 < 4.3.0-1.1 @ii mK Ib > Broken python-decorator:amd64 Depends on python:any:any < none @un H > (< 2.8) Considering python:amd64 14 as a solution to python-decorator:amd64 -1 Removing python-decorator:amd64 rather than change python:any:any Investigating (3) python-sklearn-lib:amd64 < 0.20.2+dfsg-6 @ii mK Ib > Broken python-sklearn-lib:amd64 Depends on python-numpy:amd64 < 1:1.16.2-1 @ii mR > (>= 1:1.16.0~rc1) Considering python-numpy:amd64 14 as a solution to python-sklearn-lib:amd64 -1 Removing python-sklearn-lib:amd64 rather than change python-numpy:amd64 Investigating (3) python-sklearn:amd64 < 0.20.2+dfsg-6 @ii mK Ib > Broken python-sklearn:amd64 Depends on python:any:any < none @un H > (< 2.8) Considering python:amd64 14 as a solution to python-sklearn:amd64 -2 Removing python-sklearn:amd64 rather than change python:any:any Try to Re-Instate (4) libpython2.7-stdlib:amd64 Done The following packages were automatically installed and are no longer required: [...] Use 'sudo apt autoremove' to remove them. The following packages will be REMOVED: python python-decorator python-joblib python-numpy python-pkg-resources python-scipy python-sklearn python-sklearn-lib python2 python2.7 The following NEW packages will be installed: [...] The following packages have been kept back: libpython2-stdlib libpython2.7-minimal libpython2.7-stdlib python2-minimal python2.7-minimal The following packages will be upgraded: [...] 90 upgraded, 46 newly installed, 10 to remove and 5 not upgraded. Fixed with the additional Breaks to Starting 2 pkgProblemResolver with broken count: 6 Investigating (0) python2.7:amd64 < 2.7.16-2+deb10u1 -> 2.7.18-7~deb11anbe1 @ii umU Ib > Broken python2.7:amd64 Breaks on libpython-stdlib:amd64 < 2.7.16-1 @ii mK Ib > (< 2.7.18) Considering libpython-stdlib:amd64 0 as a solution to python2.7:amd64 11 Added libpython-stdlib:amd64 to the remove list Broken python2.7:amd64 Breaks on python:amd64 < 2.7.16-1 @ii mK Ib > (< 2.7.18) Considering python:amd64 8 as a solution to python2.7:amd64 11 Added python:amd64 to the remove list Broken python2.7:amd64 Breaks on python-minimal:amd64 < 2.7.16-1 @ii mK Ib > (< 2.7.18) Considering python-minimal:amd64 0 as a solution to python2.7:amd64 11 Added python-minimal:amd64 to the remove list Fixing python2.7:amd64 via remove of libpython-stdlib:amd64 Fixing python2.7:amd64 via remove of python:amd64 Fixing python2.7:amd64 via remove of python-minimal:amd64 Investigating (0) python-numpy:amd64 < 1:1.16.2-1 @ii mK Ib > Broken python-numpy:amd64 Depends on python:amd64 < 2.7.16-1 @ii mR > (< 2.8) Considering python:amd64 8 as a solution to python-numpy:amd64 2 Removing python-numpy:amd64 rather than change python:amd64 Investigating (0) python-joblib:amd64 < 0.13.0-2 @ii mK Ib > Broken python-joblib:amd64 Depends on python:amd64 < 2.7.16-1 @ii mR > (< 2.8) Considering python:amd64 8 as a solution to python-joblib:amd64 -1 Removing python-joblib:amd64 rather than change python:amd64 Investigating (0) python-scipy:amd64 < 1.1.0-7 @ii mK Ib > Broken python-scipy:amd64 Depends on python-numpy:amd64 < 1:1.16.2-1 @ii mR > (>= 1:1.16.0~rc1) Considering python-numpy:amd64 2 as a solution to python-scipy:amd64 -1 Removing python-scipy:amd64 rather than change python-numpy:amd64 Investigating (0) python-decorator:amd64 < 4.3.0-1.1 @ii mK Ib > Broken python-decorator:amd64 Depends on python:any:any < none @un H > (< 2.8) Considering python:amd64 8 as a solution to python-decorator:amd64 -1 Removing python-decorator:amd64 rather than change python:any:any Investigating (0) python-sklearn-lib:amd64 < 0.20.2+dfsg-6 @ii mK Ib > Broken python-sklearn-lib:amd64 Depends on python-numpy:amd64 < 1:1.16.2-1 @ii mR > (>= 1:1.16.0~rc1) Considering python-numpy:amd64 2 as a solution to python-sklearn-lib:amd64 -1 Removing python-sklearn-lib:amd64 rather than change python-numpy:amd64 Investigating (0) python-sklearn:amd64 < 0.20.2+dfsg-6 @ii mK Ib > Broken python-sklearn:amd64 Depends on python:any:any < none @un H > (< 2.8) Considering python:amd64 8 as a solution to python-sklearn:amd64 -2 Removing python-sklearn:amd64 rather than change python:any:any Done The following packages were automatically installed and are no longer required: [...] Use 'sudo apt autoremove' to remove them. The following packages will be REMOVED: libpython-stdlib python python-decorator python-joblib python-minimal python-numpy python-scipy python-sklearn python-sklearn-lib The following NEW packages will be installed: [...] The following packages will be upgraded: [...] 98 upgraded, 46 newly installed, 9 to remove and 0 not upgraded. Andreas
diff -u python2.7-2.7.18/debian/changelog python2.7-2.7.18/debian/changelog --- python2.7-2.7.18/debian/changelog +++ python2.7-2.7.18/debian/changelog @@ -1,3 +1,12 @@ +python2.7 (2.7.18-7) UNRELEASED; urgency=medium + + * python2.7, libpython2.7-minimal: Add Breaks: python (<< 2.7.18) to ensure + removal of the unversioned python packages on upgrades from buster. The + previously added (transitive) Breaks are not sufficient in a few upgrade + scenarios. Closes: #-1. + + -- Andreas Beckmann <a...@debian.org> Mon, 12 Apr 2021 10:36:11 +0200 + python2.7 (2.7.18-6) unstable; urgency=medium * python2.7, libpython2.7-minimal: Add Breaks: python-minimal (<< 2.7.18), diff -u python2.7-2.7.18/debian/py27-breaks.Debian python2.7-2.7.18/debian/py27-breaks.Debian --- python2.7-2.7.18/debian/py27-breaks.Debian +++ python2.7-2.7.18/debian/py27-breaks.Debian @@ -2,0 +3 @@ +python (<< 2.7.18),