1 |
On Sat, 18 Dec 2010 22:22:07 -0800 |
2 |
Zac Medico <zmedico@g.o> wrote: |
3 |
> >> What about if you decide upon a early on, and then later on |
4 |
> >> something hard-depends upon b? |
5 |
> > |
6 |
> > Then you're collapsing the graph too early. =) |
7 |
> > (speaking as an utter novice) |
8 |
> |
9 |
> This is the same kind of case as in bug 264434. We solved it in |
10 |
> portage by putting || and virtual dependencies on stack, and delaying |
11 |
> their evaluation until as late as possible. You may be able to dream |
12 |
> up some corner cases where this approach doesn't help, but in |
13 |
> practice it seems to help more often than not. |
14 |
|
15 |
That's just another case where a fancy heuristic sometimes gives you |
16 |
better results, but in general doesn't solve the problem at all. If |
17 |
you've got two lots of undecided || ( ) deps, sooner or later you have |
18 |
to decide at least one lot, but you can't correctly make that decision |
19 |
until you've decided the other lot (which of course then can't be |
20 |
decided until you've decided the first...). |
21 |
|
22 |
We're all having to be way too clever here, and it isn't even helping. |
23 |
|
24 |
-- |
25 |
Ciaran McCreesh |