Gentoo Archives: gentoo-portage-dev

From: Brian Dolbec <dolsen@g.o>
To: gentoo-portage-dev@l.g.o
Subject: Re: [gentoo-portage-dev] Re: [PATCH] _expand_new_virtuals: constrain output for dep_zapdeps (bug 597752)
Date: Thu, 03 Nov 2016 22:46:51
Message-Id: 20161103154644.52b6a3a5.dolsen@gentoo.org
In Reply to: [gentoo-portage-dev] Re: [PATCH] _expand_new_virtuals: constrain output for dep_zapdeps (bug 597752) by Zac Medico
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>

Replies