Ciaran McCreesh schrieb: > On Sat, 23 Apr 2011 16:47:37 +0200 > Chí-Thanh Christopher Nguyễn <chith...@gentoo.org> wrote: > >> What I propose solves the problems that old-style virtuals introduce >> in dependency resolution. >> > Not really, because it means we'd have to keep the nasty old code around > forever. If we just do away with the things entirely instead then we > can pretend they never existed (like we did for ? : dependencies). >
We can mostly pretend that they never existed. PROVIDE will only be relevant during the installation phase. >> What other problems do they cause? >> > DEPEND=">=virtual/blah-2" > > DEPEND="virtual/blah[foo]" > > DEPEND="!virtual/that-i-provide" > > PROVIDE="not-a/virtual" > Would be ignored during dependency calculation and become not-a/virtual-<version> in package.provided later. > best_version virtual/blah > > The full VDB load required to figure out whether or not a virtual is > installed Problems I had indeed not taken into account are !virtual/foo dependencies and USE flags in package.provided (not allowed yet, bug 142941). But the former are also not going to work any more if new-style virtuals are used instead of old-style, as you block only the virtuals and not their providers. If the USE flag problem is considered a show-stopper, then I have to take back my proposal until bug 142941 is fixed. Regards, Chi-Thanh Christopher Nguyen