1 |
On Fri, 2012-07-20 at 19:41 +0100, Ciaran McCreesh wrote: |
2 |
> On Fri, 20 Jul 2012 14:37:19 -0400 |
3 |
> Alexandre Rostovtsev <tetromino@g.o> wrote: |
4 |
> > That suggests that the EAPI ought to define a second category of |
5 |
> > USE_EXPAND flags, one that has a different treatment of (+)/(-). |
6 |
> > |
7 |
> > Something like the following: |
8 |
> > |
9 |
> > A dependency on $foo[linguas_bar(+)] would be considered satisfied by |
10 |
> > an ebuild X matching $foo iff: |
11 |
> > 1. X has linguas_bar in IUSE and enabled; or |
12 |
> > 2. X does not have linguas_bar in IUSE, but there exists an ebuild Y |
13 |
> > (which may or may not equal X) matching $foo such that Y has at least |
14 |
> > one linguas_* flag in IUSE. |
15 |
> |
16 |
> That's sensitive to old versions ebuilds being removed from the tree, so |
17 |
> it's utterly unworkable. |
18 |
|
19 |
I do not see why you think it's unworkable. Ebuilds already have |
20 |
dependencies that can be broken by removing an old version; if wombat |
21 |
depends on foo[bar], and you removed the only version of foo that had |
22 |
bar in IUSE, you broke wombat. Adding special LINGUAS handling would not |
23 |
change the fact that before deleting an ebuild, you need to verify that |
24 |
you did not render other ebuilds' dependencies unsatisfiable. |