"aptitude full-upgrade" failed to resolve conflicts properly, proposing
many removals of vital packages.
Meanwhile "aptitude safe-upgrade" proposed an ideal solution immediately.
This happened while using aptitude in Kubuntu, but I think Debian may have
similar issues when upgrading related KDE packages.
I upgraded Kubuntu 22.04 to 22.10 (which went smoothly), cleaned up any
leftover obsolete packages afterwards (nothing important and related to
this problem).
Then I added (back) kubuntu-backports repository to get the latest version
of KDE for Kubuntu 22.10 (upgrade from KDE 5.25.5 to 5.27.3) and tried to
apply the updates with "aptitude full-upgrade".
I attach solutions proposed by both "full-upgrade" and "safe-upgrade", and
also aptitude's log on what "safe-upgrade" eventually did.
It seems that the right solution (immediately proposed by "safe-upgrade")
was to remove obsolete packages, mainly:
- libkf5screen7
- libkwineffects13
- libkwinglutils13
and replace them with their newer releases (as required by other vital KDE
packages):
- libkf5screen8
- libkwineffects14
- libkwinglutils14
Instead "full-upgrade" tried to keep old versions of the above libraries
while removing vital KDE packages that depended on them (kscreen,
kwin-common, kwin-wayland, kwin-x11, libkscreenlocker5,
libnotificationmanager1, powerdevil, ...).
To my understanding, "full-upgrade" ought to be a stronger version of
upgrade, that resolves conflicts at least as good as "safe-upgrade" while
allowing to also remove packages in the process.
But it should not *needlessly* propose removal of important packages, when
there is a better solution (not requiring removal of vital packages), which
"safe-upgrade" finds in no time.
Is there a bug in "full-upgrade" conflict resolution in that case?
Or is such thing supposed to occur for "full-upgrade" ?
Maybe "full-upgrade" should simply begin with suggesting a solution that
"safe-upgrade" would propose, if it is a sane one?