diff options
| author | Julian Andres Klode <julian.klode@canonical.com> | 2025-03-12 18:47:55 +0100 |
|---|---|---|
| committer | Julian Andres Klode <julian.klode@canonical.com> | 2025-03-12 18:54:25 +0100 |
| commit | 460753f991ca42c3c4a5ed494038db76c55e2a08 (patch) | |
| tree | 4f8976929b79a6d6b63a9e1675cdd0f1e3021e41 /test/integration | |
| parent | a4ce187b40f3bbd110a7cc35f9a5af5a8b7b0c9e (diff) | |
solver3: Fix test-resolve-by-keep-new-recommend
Reorder the if branches a bit to simplify the understanding
of the promotions, and allow us to keep track of which
dependency existed in the installed version.
Change the rule for promoting new recommends to only promote
new recommends to depends in *upgrade* and not *dist-upgrade*
per the test-resolve-by-keep-new-recommends test case.
This makes some sense: In a dist-upgrade, the solver could
otherwise decide to remove an installed package if both the
following hold:
(1) something needs the upgraded version | something else
(2) the upgraded version is not installable due to unsat recommends
Diffstat (limited to 'test/integration')
| -rw-r--r-- | test/integration/solver3.broken | 1 | ||||
| -rwxr-xr-x | test/integration/test-resolve-by-keep-new-recommends | 18 |
2 files changed, 18 insertions, 1 deletions
diff --git a/test/integration/solver3.broken b/test/integration/solver3.broken index 4a4e1532b..0e2005d60 100644 --- a/test/integration/solver3.broken +++ b/test/integration/solver3.broken @@ -3,6 +3,5 @@ test-apt-get-upgrade-by-source # TBD: Upgrading by test-apt-install-order-matters-a-bit # Wontfix: Cannot fix, the order is not recorded in the depcache test-bug-470115-new-and-tighten-recommends # TBD: Calculation of what is already satisfied Recommends is broken test-prevent-markinstall-multiarch-same-versionscrew # TBD: We consider the skewed ones obsolete and remove them... -test-resolve-by-keep-new-recommends # TBD: Fixing this seems to break test-bug-591882-conkeror, why? test-resolve-by-keep-obsolete-removals # TBD: ResolveByKeep() usage is badly aligned here test-ubuntu-bug-1304403-obsolete-priority-standard # TBD: Solver3 here happily removes 10 deps to upgrade a package diff --git a/test/integration/test-resolve-by-keep-new-recommends b/test/integration/test-resolve-by-keep-new-recommends index 3591ed84d..16acbe0ce 100755 --- a/test/integration/test-resolve-by-keep-new-recommends +++ b/test/integration/test-resolve-by-keep-new-recommends @@ -19,3 +19,21 @@ The following packages have been kept back: 0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded." testsuccessequal "$UPGRADE_KEEP" aptget upgrade -s +UPGRADE_KEEP="Reading package lists... +Building dependency tree... +Calculating upgrade... +The following packages have been kept back: + foo +0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded." +testsuccessequal "$UPGRADE_KEEP" apt upgrade -s + +UPGRADE_KEEP="Reading package lists... +Building dependency tree... +Calculating upgrade... +The following packages will be upgraded: + foo +1 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. +Inst foo [1.0] (2.0 unstable [i386]) +Conf foo (2.0 unstable [i386])" +testsuccessequal "$UPGRADE_KEEP" aptget dist-upgrade -s + |
