1 |
On Thu, 3 Nov 2016 13:34:22 -0700 |
2 |
Zac Medico <zmedico@g.o> wrote: |
3 |
|
4 |
> On 10/30/2016 11:15 PM, Zac Medico wrote: |
5 |
> > Constrain _expand_new_virtuals output in order to avoid incorrect |
6 |
> > re-ordering of || deps in the dep_zapdeps function, as reported in |
7 |
> > bug 597752. |
8 |
> > |
9 |
> > The incorrect dep_zapdeps behavior involved a problem in the |
10 |
> > construction of the _dep_choice.cp_map dictionary inside the |
11 |
> > dep_zapdeps function, with this input: |
12 |
> > |
13 |
> > || ( dev-java/icedtea-bin:8 =virtual/jdk-1.8.0-r3 >=virtual/jdk-1.5 |
14 |
> > ) ( dev-java/icedtea-bin:7 =virtual/jdk-1.7.0-r2 >=virtual/jdk-1.5 ) |
15 |
> > |
16 |
> > The cp_map for virtual/jdk-1.7.0-r2 erroneously contained |
17 |
> > virtual/jdk-1.8.0-r3 because that was the highest virtual/jdk |
18 |
> > matched by the >=virtual/jdk-1.5 atom. This patch removes the |
19 |
> > >=virtual/jdk-1.5 atom from the _expand_new_virtuals output, in |
20 |
> > >order to avoid triggering |
21 |
> > the erroneous dep_zapdeps behavior. The >=virtual/jdk-1.5 atom is |
22 |
> > not completely discarded, since the depgraph is able to access it |
23 |
> > via the virt_atom._orig_atom attribute. |
24 |
> > |
25 |
> > In order to demonstrate that this patch solves the problem, run the |
26 |
> > command `emerge ant-core` from inside a stage3 chroot, and see that |
27 |
> > virtual/jdk:1.8 is favored over virtual/jdk:1.7. |
28 |
> > |
29 |
> > X-Gentoo-Bug: 597752 |
30 |
> > X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=597752 |
31 |
> |
32 |
> Any feedback? |
33 |
|
34 |
|
35 |
Sorry, I was behind on emails from the weekend. |
36 |
|
37 |
This stuff is dabbling into the dep calc voodo ;) But I ddin't see any |
38 |
typo's :) I trust you got it right. |
39 |
-- |
40 |
Brian Dolbec <dolsen> |