2015-12-23 18:28 GMT+01:00 Javier Pena <javier.pena(a)redhat.com>:
Hi list,
While debugging a build issue for openstack-nova in Delorean
(
http://trunk.rdoproject.org/f24/72/76/727656d2f59e26a8c86afdad9b3709ab8ef...)
I have found a very strange behaviour related to package versions, and I need some help
understanding what is going on.
If we have a package in Delorean where we recently added a python3 subpackage
(
https://review.gerrithub.io/#/q/status:merged+topic:py3) *and* there is a package already
in the Fedora Rawhide repo *and* that package does not have python2/python3 subpackages,
such as python-oslo-db, we see the following:
- The older package release (2.6.0 in this case) gets installed as part of the
BuildRequires installation
- However, the proper Provides and Obsoletes are present in the Delorean package
- Actually, when the package is not directly a BuildRequires but a dependency for one of
them (e.g. python-oslo-concurrency), the newer package gets installed.
I've been able to reproduce this behaviour locally, by setting up a Fedora machine
with the Delorean repo and trying:
# dnf install python-oslo-db (the old version gets installed)
# dnf update python-oslo-db (it fetches the newer python2-oslo-db from Delorean)
Even better, if I edit the openstack-nova spec file to set
BuildRequires: python-oslo-db >= 4.1.0
instead of an unversioned BR, I will get the newer package.
Is this an issue with our packages, a dnf builddep bug, or any other mistake?
Thanks,
Javier
This is the normal behaviour of RPM, if the dependency is met, he
won't install newer packages unless, you force a min version.
I'm waiting for all python3 reviews to be merged to sync Fedora spec
files and have more people back from vacations to decide
our branches policy (F24 has not been branched yet).
After I finish the optools import, I'll take a look.
Regards,
H.