tags 315359 + fixed-in-experimental
thanks

On Wednesday 22 June 2005 02:08 am, Elliott Mitchell wrote:
> I'm doing a update from what is now oldstable to stable, using Aptitude's
> interactive mode. There are a number of cases where Aptitude's dependancy
> resolution likes to select packages that are unneeded. Sometimes these
> selections even cause packages that were not otherwise broken to be put
> in a broken state!

  The code that's causing problems is not in aptitude, it's in apt (the core 
libraries).  You're right that this has various problems, but the solution is 
not necessarily as simple as just using mark-sweep, because of conflicts and 
versioned dependencies.  Some of your diagnoses of individual cases seem 
unlikely to me, but that's actually not really relevant (see next 
paragraph :) ).

  aptitude in experimental, which I hope will go into etch, has its own 
dependency resolver (independent of the apt one) that should handle sticky 
situations more appropriately.  It's still under development (e.g., it 
doesn't handle Recommends yet, although I've worked out the theory for 
handling them), but hopefully it will make etch -> etch+1 upgrades less 
painful [0].  I'm adding the fixed-in-experimental tag so that I remember to 
close this when I upload aptitude 0.4.0.

  NB: to really fix the problems you were complaining about with 
experimental's current aptitude (0.3.2), you have to disable 'automatically 
install dependencies of a package when it is selected' from the menu.  That 
will cause dependencies to be punted to aptitude's resolver rather than being 
fixed with the greedy apt algorithm.  Big fat warning: **BEWARE THAT THIS 
CURRENTLY MEANS YOU LOSE RECOMMENDS SINCE THOSE ARE UNIMPLEMENTED**!

  Daniel

  [0] it is an open question whether it will be able to handle full 
distribution upgrades; the algorithm is expon^H^H^H^H^Hmuch more expensive 
than apt's in the worst case, and it works mainly because all the cases we 
actually generate in Debian turn out to be easy.  On the other hand, there 
are good hand-waving reasons to believe that all the cases Debian generates 
will continue to be easy for the forseeable future (because good/typical 
packaging practices don't generate truly hard dependency problems).  Probably 
the only way to resolve this is to try some sarge -> etch upgrades once etch 
has diverged a bit and see what blows up.

-- 
/------------------- Daniel Burrows <[EMAIL PROTECTED]> ------------------\
|        Human beings were created by water to transport it uphill.         |
\------ (if (not (understand-this)) (go-to http://www.schemers.org)) -------/

Attachment: pgpQzvp6k8O1n.pgp
Description: PGP signature

Reply via email to