On Wed, Dec 20, 2000 at 03:18:05PM +1100, Brian May wrote: > What happens if package "a" depends on package "b" in unstable, > and package "a" meets the criteria to get moved into testing, but > package "b" does not? > > Will package "a" still be moved into testing? Right. If "a" can be installed once it's in testing (either because there's an old version of "b", or a package "c" that provides: "b", or something similar), it'll go in, if not it won't. Versioned dependencies make things a little more interesting, if, for example: a depends: b (>= 2) b depends: c (>= 2) and a, b, c version 1 are in testing, and a, b, c version 2 are in unstable (with the above depends). Then first c, then b, then a have to be added to testing, in order. These are all handled fine. Worse, though, is if the dependencies look more like: Package: a Version: 1 Depends: b (>= 1), b (<< 2) Package: a Version: 2 Depends: b (>= 2), b (<< 3) with a and b 1 in testing, and a and b 2 in unstable. This means you can't upgrade "b" alone, since that'll break "a", and you can't update "a" alone, since that'll break "a" too. This is roughly what gcc's dependencies (via libstdc++.deb) look like, wrt glibc. This isn't handled quite so fine, because there's no easy way to detect which packaes might be "a" and "b" (and you might have "a", "b" and "c" that are all like this, or upgrading either alone might break some other package "d" that hasn't been updated in unstable yet, or worse). If there are only a few updated packages to consider, it'll just try all possible combinations, and see if any good comes of it, but if there are too many packages wanting to be updated (like glibc, gcc, and *all* the new packages recompiled using glibc2.2), then it needs some manual help (namely "try doing glibc and gcc simultaneously, and see what happens"). Cheers, aj -- Anthony Towns <aj@humbug.org.au> <http://azure.humbug.org.au/~aj/> I don't speak for anyone save myself. GPG signed mail preferred. ``Thanks to all avid pokers out there'' -- linux.conf.au, 17-20 January 2001
Attachment:
pgpe0O9B9BtHz.pgp
Description: PGP signature