[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Detecting dependency cycles and conflict dependency problems in packages



On Sat, 22 Dec 2001 01:38:44 +0100
"Nicolas Chauvat" <chauvat@nerim.net> wrote:

> Anyhow, my pet project for tonight was to write such a graph checker.

I (and others i know of) have thought about this problem, it is an
intersting problem, i dont think anybody has come up with a good
solution yet.

Most cycles arent bad, some package depend on themselves (their virtual
package).

> What I call a dependency cycle is something like (A depends on B and B

> depends on A) which basically implies that A and B *have*to* be 
> installed and removed together. It may not be a mistake for some
closely 
> related packages, but chances are that it will be with cycles of
lenght 
> longer than 2.
> 
These types of cycles arent a problem, as you say they can be installed
together.
A bad cycle which would make a package uninstallable would be if A
Pre-Depends on B and B Depends or Pr-Depends on A (and visa versa)

> What I call a conflict dependency problem is something like (A
conflicts 
> with B and B depends on A). I saw at least one case where this was on 
> purpose to facilitate upgrade, but I would say that it is an actual 
> problem in most cases.
> 

Some of these will be false alarms as you have to take into account
virtual packages (Provides: field).

e.g.

gaim **> gaim-gnome --> gaim-common --> gaim
gaim-gnome provides the virtual package gaim which satisfies gaim-common


Best of luck

Glenn



Reply to: