Le 19 janvier 2011 09:07:33, Pierre Chapuis a écrit : > On Wed, 19 Jan 2011 23:59:55 +1000, Allan McRae <al...@archlinux.org> > > wrote: > > Huh? How is no dependency checks (-Sd) equivalent to complete > > dependency checking (-S with a transitive closure of dependencies)? > > They are polar opposites. > > What I mean is that if a transitive closure of dependencies is > performed at packaging time, then there is no need to check for > dependencies when installing the original package. > > Here is an example: > > A depends on B and D > B depends on C > C depends on D and E > > Currently the deps will be: > > A -> B,D > B -> C > C -> D,E > > When installing A, Pacman will: > > 1) check deps for A, start installing B and D > 2) check deps for B and D, start installing C > 3) check deps for C, start installing E > > With a transitive closure scheme at packaging time, the > deps would be: > > A -> B,C,D,E > B -> C,D,E > C -> D,E > > When installing A, Pacman could simply install B, C, D and E > *without* checking their deps (-Sd) because these deps are > necessarily already included in those for A.
As the maintainer of A, it is not your job to track dependencies of B and D. Again, look at the problem from a different point of view. If tomorrow dependencies of B change to B -> C F (direct dependecies) does it mean that A (and **all** other pkgs that depends on B) should be updated to include a dependecy on F ? What if dependency on E is removed from C PKGBUILD ? Maintaining a package with such rules will be a nightmare. Stéphane