summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--NEWS2
-rw-r--r--urpm/select.pm5
2 files changed, 6 insertions, 1 deletions
diff --git a/NEWS b/NEWS
index 5316925b..ec3546c2 100644
--- a/NEWS
+++ b/NEWS
@@ -3,6 +3,8 @@
commit on 2006-01-11 13:17)
o do try to umount removable media when using --debug (fixing
rafel's commit r15048 on 2005-06-09)
+ o try harder to explain why we cannot select a package (eg: because
+ i586 package is already installed on x86_64)
Version 4.10.2 - 13 August 2007, by Thierry Vignaud
diff --git a/urpm/select.pm b/urpm/select.pm
index cc96d9d5..e46d2c24 100644
--- a/urpm/select.pm
+++ b/urpm/select.pm
@@ -432,11 +432,14 @@ sub translate_why_unselected {
sub translate_why_unselected_one {
my ($urpm, $state, $fullname) = @_;
- my $rb = $state->{rejected}{$fullname}{backtrack};
+ my $obj = $state->{rejected}{$fullname};
+ my $rb = $obj->{backtrack};
my @froms = keys %{$rb->{closure} || {}};
my @unsatisfied = @{$rb->{unsatisfied} || []};
+ my @conflicts = keys(%$rb) ? () : keys %{$obj->{closure}};
my $s = join ", ", (
(map { N("due to missing %s", $_) } @froms),
+ (map { N("due to already installed %s", $_) } @conflicts),
(map { N("due to unsatisfied %s", $_) } uniq(map {
#- XXX in theory we shouldn't need this, dependencies (and not ids) should
#- already be present in @unsatisfied. But with biarch packages this is