diff options
author | Pascal Rigaux <pixel@mandriva.com> | 2007-09-28 20:23:16 +0000 |
---|---|---|
committer | Pascal Rigaux <pixel@mandriva.com> | 2007-09-28 20:23:16 +0000 |
commit | 521bf96a075950392482d401a98e5c18e1472e09 (patch) | |
tree | 583f0be010cb875fb5307abdcf26ed56fc0bf109 | |
parent | 277e941bfef194a7377251697e1e9b09522c2fb0 (diff) | |
download | perl-URPM-521bf96a075950392482d401a98e5c18e1472e09.tar perl-URPM-521bf96a075950392482d401a98e5c18e1472e09.tar.gz perl-URPM-521bf96a075950392482d401a98e5c18e1472e09.tar.bz2 perl-URPM-521bf96a075950392482d401a98e5c18e1472e09.tar.xz perl-URPM-521bf96a075950392482d401a98e5c18e1472e09.zip |
- also handle promotion via obsolete for conflicts
-rw-r--r-- | NEWS | 2 | ||||
-rw-r--r-- | URPM/Resolve.pm | 5 |
2 files changed, 7 insertions, 0 deletions
@@ -1,3 +1,5 @@ +- also handle promotion via obsolete for conflicts + Version 2.05 - 28 September 2007, by Pascal "Pixel" Rigaux - package promotion must respect strict_arch diff --git a/URPM/Resolve.pm b/URPM/Resolve.pm index 0b15eda..85d4bff 100644 --- a/URPM/Resolve.pm +++ b/URPM/Resolve.pm @@ -1111,6 +1111,11 @@ sub _handle_conflict { my @packages = grep { $_->name eq $p->name } find_candidate_packages_($urpm, $need_deps, $state->{rejected}); @packages = grep { ! $_->provides_overlap($property) } @packages; + if (!@packages) { + @packages = _find_packages_obsoleting($urpm, $state, $p); + @packages = grep { ! $_->provides_overlap($property) } @packages; + } + if (@packages) { my $best = join('|', map { $_->id } @packages); $urpm->{debug_URPM}("promoting " . join('|', map { scalar $_->fullname } @packages) . " because of conflict above") if $urpm->{debug_URPM}; |