diff options
-rw-r--r-- | URPM/Resolve.pm | 15 | ||||
-rw-r--r-- | perl-URPM.spec | 7 |
2 files changed, 16 insertions, 6 deletions
diff --git a/URPM/Resolve.pm b/URPM/Resolve.pm index 2ced98b..b1f66d3 100644 --- a/URPM/Resolve.pm +++ b/URPM/Resolve.pm @@ -218,7 +218,8 @@ sub backtrack_selected { $options{callback_backtrack}->($urpm, $db, $state, $_, dep => $dep, alternatives => $packages, %options) <= 0) { #- keep in mind a backtrack has happening here... - $state->{rejected}{$_->fullname}{backtrack} ||= {}; + $state->{rejected}{$_->fullname}{backtrack} ||= + { exists $dep->{promote} ? (promote => $dep->{promote}) : @{[]} }; #- backtrack callback should return a strictly positive value if the selection of the new #- package is prefered over the currently selected package. next; @@ -510,9 +511,10 @@ sub resolve_requested { nopromoteepoch => 1, avoided => $state->{rejected}); my $best = join '|', map { $_->id } - grep { $urpm->unsatisfied_requires($db, $state, $_, - nopromoteepoch => 1, - name => $n) == 0 } + grep { $_->fullname ne $p->fullname && + $urpm->unsatisfied_requires($db, $state, $_, + nopromoteepoch => 1, + name => $n) == 0 } @{$packages->{$p->name}}; if (length $best) { @@ -525,7 +527,10 @@ sub resolve_requested { $packages = $urpm->find_candidate_packages($_, nopromoteepoch => 1, avoided => $state->{rejected}); - $best = join('|', map { $_->id } map { @{$_ || []} } values %$packages); + $best = join('|', + map { $_->id } + grep { $_->fullname ne $p->fullname } + map { @{$_ || []} } values %$packages); $best and push @best, $best; } diff --git a/perl-URPM.spec b/perl-URPM.spec index 503ad5d..468a69a 100644 --- a/perl-URPM.spec +++ b/perl-URPM.spec @@ -1,7 +1,7 @@ %define name perl-URPM %define real_name URPM %define version 0.91 -%define release 4mdk +%define release 5mdk %{expand:%%define rpm_version %(rpm -q --queryformat '%{VERSION}-%{RELEASE}' rpm)} @@ -51,6 +51,11 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Thu Jun 19 2003 François Pons <fpons@mandrakesoft.com> 0.91-5mdk +- added promote to backtrack data for more info. +- fixed visual glitches when a package has its selection backtracked + whereas it is already installed. + * Wed Jun 18 2003 François Pons <fpons@mandrakesoft.com> 0.91-4mdk - fixed installation of old package due to missing closure. - fixed nodeps option to used for building transaction set. |