diff options
author | Francois Pons <fpons@mandriva.com> | 2003-09-10 15:11:02 +0000 |
---|---|---|
committer | Francois Pons <fpons@mandriva.com> | 2003-09-10 15:11:02 +0000 |
commit | 73d3d8c885fc38ea44d6dde6e79db29d232ca278 (patch) | |
tree | ab252e1c03e047bf4c3e6ca0e17bdb7b67ef8755 | |
parent | 5597c3a552e7fb10b1bbf073d137b705458e4bb9 (diff) | |
download | perl-URPM-73d3d8c885fc38ea44d6dde6e79db29d232ca278.tar perl-URPM-73d3d8c885fc38ea44d6dde6e79db29d232ca278.tar.gz perl-URPM-73d3d8c885fc38ea44d6dde6e79db29d232ca278.tar.bz2 perl-URPM-73d3d8c885fc38ea44d6dde6e79db29d232ca278.tar.xz perl-URPM-73d3d8c885fc38ea44d6dde6e79db29d232ca278.zip |
diff_provides on obsoleted provides are needed.
-rw-r--r-- | URPM/Resolve.pm | 5 |
1 files 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)) { |