Bug#607937: apt: New solver in experimental produce strange results
On Fr, 2010-12-24 at 18:30 +0100, Eric Valette wrote:
> Package: apt
> Version: 0.8.10+expnewsolvers1
> Severity: important
> Tags: experimental
>
> apt-get -t experimental dist-upgrade
> Lecture des listes de paquets... Fait
> Construction de l'arbre des dépendances
> Lecture des informations d'état... Fait
> Calcul de la mise à jour... E: Cannot install: libgtkmm-2.4-1c2a (1:2.22.0-1)
> tri-yann3:/home/valette# apt-get -t experimental upgrade
> Lecture des listes de paquets... Fait
> Construction de l'arbre des dépendances
> Lecture des informations d'état... Fait
> E: Cannot remove: libgtkmm-2.4-1c2a (1:2.20.3-1)
>
>
First of all, thanks for testing. Now some conclusions:
The first one makes sense, as e.g.
jak@jak-thinkpad:~$ apt-get -t experimental upgrade -s
NOTE: This is only a simulation!
apt-get needs root privileges for real execution.
Keep also in mind that locking is deactivated,
so don't depend on the relevance to the real current situation!
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unsolvable:
me-tv:amd64 Depends on libgtkmm-2.4-1c2a [ amd64 ] < 1:2.20.3-1 -> 1:2.22.0-1 > ( libs ) (>= 1:2.20.0)
libgtkmm-2.4-1c2a:amd64 Depends on libatkmm-1.6-1 [ amd64 ] < none > ( none ) (>= 2.22.1)
The second one makes sense as well, as you have installed
libgtkmm-2.4-1c2a already, but asked to upgrade it which failed and
because there are already packages depending on it, it failed to remove
the old one.
There are three problems here:
1. The solver does not handle upgrades correctly yet if parts of
them are impossible. It should not upgrade that package then,
but currently it just aborts (that's pending work)
2. picosat is built without trace support currently which means you
do not get the relevant information like I got above
3. It talks about removals and installation sometimes when
upgrading, as in removing packageA (versionA), installing
package A (versionB); as it only operates on versions, not on
packages; and I did not special case upgrades in all places
yet.
After all, it's a very experimental solver. It handles all kinds of
installation and removal requests, though; and most real-world upgrade
situations (where all target versions are installable).
--
Julian Andres Klode - Debian Developer, Ubuntu Member
See http://wiki.debian.org/JulianAndresKlode and http://jak-linux.org/.
Reply to: