From 73d3d8c885fc38ea44d6dde6e79db29d232ca278 Mon Sep 17 00:00:00 2001 From: Francois Pons Date: Wed, 10 Sep 2003 15:11:02 +0000 Subject: diff_provides on obsoleted provides are needed. --- URPM/Resolve.pm | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/URPM/Resolve.pm b/URPM/Resolve.pm index 27106d8..48cee86 100644 --- a/URPM/Resolve.pm +++ b/URPM/Resolve.pm @@ -528,10 +528,8 @@ sub resolve_requested { $rv->{obsoleted} = 1; } - #- avoid diff_provides on obsoleted provides. - my %obsoletes; @obsoletes{$p->obsoletes} = (); + #- diff_provides on obsoleted provides are needed. foreach ($p->provides) { - exists $obsoletes{$_} and next; #- check differential provides between obsoleted package and newer one. if (my ($pn, $ps) = /^([^\s\[]*)(?:\[\*\])?\[?([^\s\]]*\s*[^\s\]]*)/) { $diff_provides{$pn} = undef; @@ -648,6 +646,7 @@ sub resolve_requested { } if (defined ($dep = shift @diff_provides)) { my ($n, $pkg) = ($dep->{name}, $dep->{pkg}); + print STDERR "managing diff_provides on $dep->{name} from ".$dep->{pkg}->fullname."\n"; $db->traverse_tag('whatrequires', [ $n ], sub { my ($p) = @_; if (my @l = $urpm->unsatisfied_requires($db, $state, $p, nopromoteepoch => 1, name => $n)) { -- cgit v1.2.1