Gentoo Archives: gentoo-portage-dev

From: Brian Dolbec <dolsen@g.o>
To: gentoo-portage-dev@l.g.o
Subject: Re: [gentoo-portage-dev] [PATCH] _dep_check_composite_db: fix bug #526160
Date: Sun, 02 Nov 2014 16:47:41
Message-Id: 20141102084646.399d9bc3.dolsen@gentoo.org
In Reply to: [gentoo-portage-dev] [PATCH] _dep_check_composite_db: fix bug #526160 by Zac Medico
1 On Wed, 29 Oct 2014 02:29:07 -0700
2 Zac Medico <zmedico@g.o> wrote:
3
4 > The fixes various forms of buggy behavior involving virtuals handling
5 > and EAPI 5 subslots. The code at fault is part of the support for
6 > bug #141118 (virtuals lookahead). This code was written long before
7 > subslots existed, and because of them it needs to be updated now.
8 >
9 > Previously, the relevant virtuals code would only select one virtual
10 > from each slot for lookahead. Now, it needs to select one from each
11 > slot/subslot pair. The buggy forms of behavior fixed by this change
12 > can be difficult to reproduce, since they only express themselves
13 > under some rare circumstances.
14 >
15 > In addition to the _dep_check_composite_db fixes, there is also a
16 > related fix inside _expand_new_virtuals, which is required so that
17 > _slot_operator_update_probe can reliably check whether or not a
18 > particular input atom was selected. Without this change, the
19 > _dep_check_composite_db changes will cause the test from commit
20 > d3be49fe6827aa1974856dffe6d5a1aca80a7bed to fail in a way that is
21 > very similar to the failure reported in bug #526160.
22 >
23 > Fixes: d3be49fe6827 ("depgraph: fix bug #526160")
24 > X-Gentoo-Bug: 526160
25 > X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=526160
26 > ---
27 > pym/_emerge/depgraph.py | 118
28 > ++++++++++++++++++------
29 > pym/portage/dep/dep_check.py | 8 +-
30 > pym/portage/tests/resolver/test_virtual_slot.py | 11 ++- 3 files
31 > changed, 106 insertions(+), 31 deletions(-)
32 >
33
34 not that I'll pretend to understand all the code changes, but looks good
35
36 merge away
37
38 --
39 Brian Dolbec <dolsen>