1 |
On 6/16/20 7:47 PM, Michael Lienhardt wrote: |
2 |
> |
3 |
> |
4 |
> On 6/16/20 11:59 PM, Zac Medico wrote: |
5 |
>> On 6/16/20 6:38 PM, Michael Lienhardt wrote: |
6 |
>>> With the first version of DEPEND, emerge succeed: |
7 |
>>> # emerge -pv app-misc/dummy-master |
8 |
>>> |
9 |
>>> These are the packages that would be merged, in order: |
10 |
>>> |
11 |
>>> Calculating dependencies... done! |
12 |
>>> [ebuild N ] app-misc/dummy-slave-2::gentoo USE="-static-libs" 0 KiB |
13 |
>>> [ebuild N ] app-misc/dummy-master-1::gentoo USE="-static-libs" 0 KiB |
14 |
>> |
15 |
>> This success is expected, yes? Do you suggest to change the behavior |
16 |
>> somehow? |
17 |
> |
18 |
> The way I interpret the PMS, this success is not expected: |
19 |
> the atom ">=app-misc/dummy-slave-1" matches the cpv "app-misc/dummy-slave-1" which does not contains the use flag 'static-libs', |
20 |
> and thus I expected a 'missing use flag' error. |
21 |
|
22 |
For this calculation, it would be a waste of time to read the IUSE |
23 |
metadata for app-misc/dummy-slave-1, since app-misc/dummy-slave-2 is the |
24 |
highest available version. |
25 |
|
26 |
I hope that PMS does not specify that package managers must read IUSE |
27 |
metadata for irrelevant package versions! |
28 |
|
29 |
> I'm not suggesting to change the behavior of emerge, I'm saying that: |
30 |
> - the way I read the PMS, I expect behavior A, but in practice, I see behavior B. |
31 |
> - what does the portage devs / PMS gurus think about that? |
32 |
> - is my understanding of the PMS wrong, and it actually says "behavior B is expected"? |
33 |
> - if yes, where did I fail in my understanding? |
34 |
> - if no, should emerge or the PMS be updated so they both describe the same behavior? |
35 |
> - I will implement your ruling in my tool, which I try to match as closely as possible to the PMS |
36 |
|
37 |
In this context I think the spirit of what PMS says is that the package |
38 |
manager should emit some kind of warning message if it finds missing |
39 |
IUSE. Now, in the example above, if the package manager has no reason to |
40 |
examine the IUSE metadata of app-misc/dummy-slave-1 because |
41 |
app-misc/dummy-slave-2 is the highest available version, then there's no |
42 |
opportunity for it to emit a warning message. |
43 |
-- |
44 |
Thanks, |
45 |
Zac |