Gentoo Archives: gentoo-commits

From: Zac Medico <zmedico@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] proj/portage:master commit in: lib/portage/tests/resolver/, lib/_emerge/
Date: Mon, 31 Aug 2020 06:22:17
Message-Id: 1598830781.67423a3606db72f45ffe4dec325253a30508bd9d.zmedico@gentoo
1 commit: 67423a3606db72f45ffe4dec325253a30508bd9d
2 Author: Zac Medico <zmedico <AT> gentoo <DOT> org>
3 AuthorDate: Sun Aug 30 23:21:25 2020 +0000
4 Commit: Zac Medico <zmedico <AT> gentoo <DOT> org>
5 CommitDate: Sun Aug 30 23:39:41 2020 +0000
6 URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=67423a36
7
8 dephgraph: Allow elimination of highest version after slot conflict (bug 439688)
9
10 After a slot conflict occurs, allow the highest version to be eliminated
11 from the graph when appropriate. This is needed for correct behavior in
12 cases the highest version cannot be installed because an older version
13 is required by some package. This reverts a change related to bug 531656
14 from commit a9064d08ef4c92a5d0d1bfb3dc8a01b7850812b0, and that change
15 no longer appears to be necessary, since the unit tests related to bug
16 531656 now pass without it.
17
18 Due to this change in slot conflict handling, the --changed-slot test
19 case related to bug 456208 will now fail unless we use an @world update to
20 trigger rebuilds, therefore fix it to do so.
21
22 Bug: https://bugs.gentoo.org/439688
23 Signed-off-by: Zac Medico <zmedico <AT> gentoo.org>
24
25 lib/_emerge/depgraph.py | 9 ---------
26 lib/portage/tests/resolver/test_slot_change_without_revbump.py | 4 ++--
27 lib/portage/tests/resolver/test_slot_conflict_rebuild.py | 3 ---
28 3 files changed, 2 insertions(+), 14 deletions(-)
29
30 diff --git a/lib/_emerge/depgraph.py b/lib/_emerge/depgraph.py
31 index e071be8df..3f864aefc 100644
32 --- a/lib/_emerge/depgraph.py
33 +++ b/lib/_emerge/depgraph.py
34 @@ -1501,15 +1501,6 @@ class depgraph:
35
36 matched = []
37 for pkg in conflict:
38 - if (pkg is highest_pkg and
39 - not highest_pkg.installed and
40 - inst_pkg is not None and
41 - inst_pkg.sub_slot != highest_pkg.sub_slot and
42 - not self._downgrade_probe(highest_pkg)):
43 - # If an upgrade is desired, force the highest
44 - # version into the graph (bug #531656).
45 - non_matching_forced.add(highest_pkg)
46 -
47 if atom.match(pkg.with_use(
48 self._pkg_use_enabled(pkg))) and \
49 not (is_arg_parent and pkg.installed):
50
51 diff --git a/lib/portage/tests/resolver/test_slot_change_without_revbump.py b/lib/portage/tests/resolver/test_slot_change_without_revbump.py
52 index 5cd8c53d1..e05705671 100644
53 --- a/lib/portage/tests/resolver/test_slot_change_without_revbump.py
54 +++ b/lib/portage/tests/resolver/test_slot_change_without_revbump.py
55 @@ -71,8 +71,8 @@ class SlotChangeWithoutRevBumpTestCase(TestCase):
56
57 # Test --changed-slot
58 ResolverPlaygroundTestCase(
59 - ["app-arch/libarchive"],
60 - options = {"--changed-slot": True, "--usepkg": True},
61 + ["@world"],
62 + options = {"--changed-slot": True, "--usepkg": True, "--update": True, "--deep": True},
63 success = True,
64 mergelist = ["app-arch/libarchive-3.1.1", "kde-base/ark-4.10.0"]),
65
66
67 diff --git a/lib/portage/tests/resolver/test_slot_conflict_rebuild.py b/lib/portage/tests/resolver/test_slot_conflict_rebuild.py
68 index b3bcf44d0..d650d42ae 100644
69 --- a/lib/portage/tests/resolver/test_slot_conflict_rebuild.py
70 +++ b/lib/portage/tests/resolver/test_slot_conflict_rebuild.py
71 @@ -454,10 +454,7 @@ class SlotConflictRebuildTestCase(TestCase):
72 finally:
73 playground.cleanup()
74
75 -class SlotConflictRebuildGolangTestCase(TestCase):
76 -
77 def testSlotConflictRebuildGolang(self):
78 - self.todo = True
79
80 ebuilds = {