1 |
commit: 44971d397c63e16b134d9b93b06ce3b8db768aca |
2 |
Author: Zac Medico <zmedico <AT> gentoo <DOT> org> |
3 |
AuthorDate: Wed Jul 29 05:18:30 2015 +0000 |
4 |
Commit: Zac Medico <zmedico <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed Jul 29 18:43:21 2015 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/portage.git/commit/?id=44971d39 |
7 |
|
8 |
slot_conflict_handler: suggest --verbose-conflicts (bug 556172) |
9 |
|
10 |
A suggestion to use --verbose-conflicts is now shown when relevant: |
11 |
|
12 |
!!! Multiple package instances within a single package slot have been pulled |
13 |
!!! into the dependency graph, resulting in a slot conflict: |
14 |
|
15 |
dev-libs/icu:0 |
16 |
|
17 |
(dev-libs/icu-54.1-r1:0/54a::gentoo, ebuild scheduled for merge) pulled in by |
18 |
<dev-libs/icu-55.1 (Argument) |
19 |
|
20 |
(dev-libs/icu-55.1:0/55::gentoo, installed) pulled in by |
21 |
dev-libs/icu:0/55 required by (app-office/libreoffice-bin-4.4.3.2:0/0::gentoo, installed) |
22 |
^^^^^ |
23 |
>=dev-libs/icu-51.2-r1:0/55=[abi_x86_32(-),abi_x86_64(-)] required by (dev-libs/libxml2-2.9.2-r1:2/2::gentoo, installed) |
24 |
^^^^^^ |
25 |
(and 19 more with the same problems) |
26 |
|
27 |
NOTE: Use the '--verbose-conflicts' option to display parents omitted above |
28 |
|
29 |
X-Gentoo-Bug: 556172 |
30 |
X-Gentoo-Bug-url: https://bugs.gentoo.org/show_bug.cgi?id=556172 |
31 |
Acked-by: Alexander Berntsen <bernalex <AT> gentoo.org> |
32 |
|
33 |
pym/_emerge/resolver/slot_collision.py | 11 ++++++++++- |
34 |
1 file changed, 10 insertions(+), 1 deletion(-) |
35 |
|
36 |
diff --git a/pym/_emerge/resolver/slot_collision.py b/pym/_emerge/resolver/slot_collision.py |
37 |
index 5473d72..cfb5885 100644 |
38 |
--- a/pym/_emerge/resolver/slot_collision.py |
39 |
+++ b/pym/_emerge/resolver/slot_collision.py |
40 |
@@ -242,6 +242,7 @@ class slot_conflict_handler(object): |
41 |
""" |
42 |
_pkg_use_enabled = self.depgraph._pkg_use_enabled |
43 |
verboseconflicts = "--verbose-conflicts" in self.myopts |
44 |
+ any_omitted_parents = False |
45 |
msg = self.conflict_msg |
46 |
indent = " " |
47 |
msg.append("\n!!! Multiple package instances within a single " + \ |
48 |
@@ -596,6 +597,7 @@ class slot_conflict_handler(object): |
49 |
|
50 |
omitted_parents = num_all_specific_atoms - len(selected_for_display) |
51 |
if omitted_parents: |
52 |
+ any_omitted_parents = True |
53 |
msg.append(2*indent) |
54 |
if len(selected_for_display) > 1: |
55 |
msg.append("(and %d more with the same problems)\n" % omitted_parents) |
56 |
@@ -604,7 +606,14 @@ class slot_conflict_handler(object): |
57 |
else: |
58 |
msg.append(" (no parents)\n") |
59 |
msg.append("\n") |
60 |
- msg.append("\n") |
61 |
+ |
62 |
+ if any_omitted_parents: |
63 |
+ msg.append(colorize("INFORM", |
64 |
+ "NOTE: Use the '--verbose-conflicts'" |
65 |
+ " option to display parents omitted above")) |
66 |
+ msg.append("\n\n") |
67 |
+ else: |
68 |
+ msg.append("\n") |
69 |
|
70 |
def get_explanation(self): |
71 |
msg = "" |