Gentoo Archives: gentoo-portage-dev

From: Zac Medico <zmedico@g.o>
To: gentoo-portage-dev@l.g.o
Subject: [gentoo-portage-dev] Re: [PATCH] _dep_check_composite_db._visible: verify that highest_visible matches (bug 567686)
Date: Sun, 13 Dec 2015 23:42:27
Message-Id: 566E0254.109@gentoo.org
In Reply to: [gentoo-portage-dev] [PATCH] _dep_check_composite_db._visible: verify that highest_visible matches (bug 567686) by Zac Medico
1 On 12/12/2015 10:48 PM, Zac Medico wrote:
2 > If the highest visible match for a package slot does not match the
3 > required atom, then do not mask other packages in the same slot.
4 > Bug 567686 was triggered when the highest visible match for the
5 > package slot did not match the subslot specified by the required atom.
6 >
7 > X-Gentoo-Bug: 567686
8 > X-Gentoo-Bug-url: https://bugs.gentoo.org/show_bug.cgi?id=567686
9 > ---
10 > pym/_emerge/depgraph.py | 4 +++-
11 > 1 file changed, 3 insertions(+), 1 deletion(-)
12 >
13 > diff --git a/pym/_emerge/depgraph.py b/pym/_emerge/depgraph.py
14 > index 2169b00..fd2c771 100644
15 > --- a/pym/_emerge/depgraph.py
16 > +++ b/pym/_emerge/depgraph.py
17 > @@ -9064,7 +9064,9 @@ class _dep_check_composite_db(dbapi):
18 > # Note: highest_visible is not necessarily the real highest
19 > # visible, especially when --update is not enabled, so use
20 > # < operator instead of !=.
21 > - if highest_visible is not None and pkg < highest_visible:
22 > + if (highest_visible is not None and pkg < highest_visible
23 > + and atom_set.findAtomForPackage(highest_visible,
24 > + modified_use=self._depgraph._pkg_use_enabled(highest_visible))):
25 > return False
26 > elif in_graph != pkg:
27 > # Mask choices for packages that would trigger a slot
28 >
29
30 This is pretty trivial, so I've pushed it.
31 --
32 Thanks,
33 Zac