diff options
-rw-r--r-- | urpm.pm | 15 | ||||
-rw-r--r-- | urpmi.spec | 6 |
2 files changed, 13 insertions, 8 deletions
@@ -1603,7 +1603,7 @@ sub filter_packages_to_upgrade { } } - $provides{$pkg->{name}} = undef; #"$pkg->{name}-$pkg->{version}-$pkg->{release}"; + $selected{$pkg->{name}} = undef; } #- iterate over requires of the packages, register them. @@ -1615,11 +1615,13 @@ sub filter_packages_to_upgrade { $provides{$_} ||= undef; unless ($options{keep_alldeps}) { my $check_pkg = sub { - $o and $n eq $_[0]{name} || return; - (!$v || eval(rpmtools::version_compare($_[0]{version}, $v) . $o . 0)) && - (!$r || rpmtools::version_compare($_[0]{version}, $v) != 0 || - eval(rpmtools::version_compare($_[0]{release}, $r) . $o . 0)) or return; - $provides{$_} = "$_[0]{name}-$_[0]{version}-$_[0]{release}"; + my ($p) = @_; + exists $selected{$p->{name}} and return; + $o and $n eq $p->{name} || return; + (!$v || eval(rpmtools::version_compare($p->{version}, $v) . $o . 0)) && + (!$r || rpmtools::version_compare($p->{version}, $v) != 0 || + eval(rpmtools::version_compare($p->{release}, $r) . $o . 0)) or return; + $provides{$_} = "$p->{name}-$p->{version}-$p->{release}"; }; rpmtools::db_traverse_tag($db, $n =~ m|^/| ? 'path' : 'whatprovides', [ $n ], [ qw (name version release) ], $check_pkg); @@ -1672,7 +1674,6 @@ sub filter_packages_to_upgrade { #- a package with the given name. #- if an obsolete is given, it will be satisfied elsewhere. CHECK TODO if ($n ne $pkg->{name}) { - exists $selected{$n} and next; #- a virtual provides exists with a specific version and maybe release. #- try to resolve. foreach (@{$pkg->{provides}}) { @@ -2,7 +2,7 @@ Name: urpmi Version: 3.3 -Release: 8mdk +Release: 9mdk License: GPL Source0: %{name}.tar.bz2 Source1: %{name}.logrotate @@ -144,6 +144,10 @@ fi %changelog +* Mon Feb 18 2002 François Pons <fpons@mandrakesoft.com> 3.3-9mdk +- fixed requires resolution regression when old package provides + property removed by newer (libification). + * Mon Feb 18 2002 François Pons <fpons@mandrakesoft.com> 3.3-8mdk - added missing build requires on rpmtools. - fixed too verbose erroneous output that may hurt the user. |