Fix rpm package provides/obsoletes relations
Rpm package can provides and obsoletes the same package name but with different versions, for eg: OBSOLETES: python-debtcollector < 1.2.0-1.el7~mos1 python-debtcollector < 0.7.0-3 PROVIDES: python-debtcollector = 1.2.0-1.el7~mos1 python2-debtcollector = 1.2.0-1.el7~mos1 This comes from %python_provide macros, eg: # rpm --eval '%python_provide python2-foo' Provides: python-foo(x86-64) = %{version}-%{release} Provides: python-foo = %{version}-%{release} Obsoletes: python-foo(x86-64) < %{version}-%{release} Obsoletes: python-foo < %{version}-%{release} # rpm --eval '%python_provide python-foo' Provides: python2-foo = %{version}-%{release} So we need to align flow Change-Id: I07b3d8b9a25c5c98e97e697c26e6ae9d1f4960ff Closes-bug: #1578224
This commit is contained in:
parent
d661055322
commit
ff85847eca
|
@ -72,11 +72,13 @@ class PackagesTree(object):
|
|||
if len(candidates) > 0:
|
||||
return candidates
|
||||
|
||||
if name in self.provides:
|
||||
result = self._resolve_relation(self.provides[name], version_range)
|
||||
if result:
|
||||
return result
|
||||
|
||||
if name in self.obsoletes:
|
||||
return self._resolve_relation(self.obsoletes[name], version_range)
|
||||
|
||||
if name in self.provides:
|
||||
return self._resolve_relation(self.provides[name], version_range)
|
||||
return []
|
||||
|
||||
def get_unresolved_dependencies(self):
|
||||
|
|
Loading…
Reference in New Issue