Never-MarkAuto-Sections not working correctly
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
apt (Debian) |
Fix Released
|
Unknown
|
|||
apt (Ubuntu) |
Fix Released
|
Medium
|
Adam Conrad | ||
Precise |
Fix Released
|
Medium
|
Adam Conrad | ||
Trusty |
Fix Released
|
Critical
|
Adam Conrad | ||
Vivid |
Fix Released
|
Medium
|
Adam Conrad |
Bug Description
[ SRU Justification ]
Not only is this behaviour broken for every day use, but it also completely breaks livefs generation for ubuntukylin, and causes most of $flavour-desktop to be on the autoremove list in any point release livefs, making this bug point-release critical.
[ Test Case ]
Install a metapackage (say, ubuntu-standard), and then "apt-get --purge autoremove ubuntu-standard" and check that only that package is removed, rather than large chunks of its dependencies.
Further, also run the test case from comment 2 of bug #1429041 and make sure the previous fix didn't regress.
[ Regression Potential ]
My fix was tested locally against both test cases and passes with flying colours, so I don't see how this can make things any worse than they already are.
[ Original Report ]
In current trusty, vivid, and wily, when you install ubuntu-minimal (from the "metapackages" section) in a clean chroot, some 75ish packages are installed. If you then "apt-get --purge autoremove ubuntu-minimal", some large portion (between 20 and 40, depending on the target release) of those dependencies are removed again.
If this test is repeated putting the release pocket version of apt/libapt on hold, the purge/autoremove only removes the metapackage, but none of its dependencies, so this is likely a regression brought on from the previous autoremoval fix.
This bug is release-critical for the 14.04.3 point release, as we install using metapackages instead of tasks in point releases, thus meaning that anyone removing ubuntu-desktop for any reason will end up with dozens (potentially hundreds) of packages on the autoremoval list.
Changed in apt (Ubuntu Trusty): | |
milestone: | none → ubuntu-14.04.3 |
assignee: | nobody → Michael Vogt (mvo) |
Changed in apt (Ubuntu): | |
assignee: | nobody → Michael Vogt (mvo) |
Changed in apt (Ubuntu Vivid): | |
assignee: | nobody → Michael Vogt (mvo) |
Changed in apt (Ubuntu Trusty): | |
importance: | Undecided → Critical |
description: | updated |
Changed in apt (Ubuntu Trusty): | |
assignee: | Michael Vogt (mvo) → Adam Conrad (adconrad) |
Changed in apt (Debian): | |
status: | Unknown → New |
Changed in apt (Ubuntu): | |
status: | New → Fix Committed |
Changed in apt (Ubuntu Precise): | |
assignee: | nobody → Adam Conrad (adconrad) |
Changed in apt (Ubuntu Vivid): | |
assignee: | Michael Vogt (mvo) → Adam Conrad (adconrad) |
Changed in apt (Ubuntu): | |
assignee: | Michael Vogt (mvo) → Adam Conrad (adconrad) |
tags: |
added: verification-done-trusty removed: verification-needed |
tags: | added: regression-update |
Changed in apt (Debian): | |
status: | New → Fix Released |
Changed in apt (Ubuntu): | |
importance: | Undecided → High |
Changed in apt (Ubuntu Precise): | |
importance: | Undecided → High |
Changed in apt (Ubuntu Vivid): | |
importance: | Undecided → High |
Changed in apt (Ubuntu): | |
importance: | High → Medium |
Changed in apt (Ubuntu Precise): | |
importance: | High → Medium |
Changed in apt (Ubuntu Vivid): | |
importance: | High → Medium |
Without verifying if these Ubuntu versions actually have my bad patch ("deprecate the Section member from package struct" - fixing the problem of a package changing sections basically being randomly in one of these sections) I would presume this is debbug #793360 aka: Never-Mark-Auto doesn't apply on the dependencies of packages with the given sections, but on the packages with the given section itself. Much more details there.